Liebe Liste,
bei einem Schüler wurde nach dem Absturz und synchronisiertem Neustart seines Ubuntu-Clients seine externe Festplatte mit Systemordnern und -dateien (“bin”, “boot”, “etc”, “home”, “lib”…) überschrieben. Leider sind alle seine Dateien dabei verloren gegangen. Diese Phänomen wurde mir auch schon von einem anderen Schüler berichtet.
Hat jemand dafür eine Erklärung und was ist dagegen zu tun?
bei einem Schüler wurde nach dem Absturz und synchronisiertem Neustart
seines Ubuntu-Clients seine externe Festplatte mit Systemordnern und
-dateien (“bin”, “boot”, “etc”, “home”, “lib”…) überschrieben. Leider
sind alle seine Dateien dabei verloren gegangen. Diese Phänomen wurde
mir auch schon von einem anderen Schüler berichtet.
Hat jemand dafür eine Erklärung
ja: ich
linbo bootet, und in welcher Weise dann sda sdb usw. zugeteilt werden,
das hängt von BIOS und linuxkernel ab.
Neuere Kernel verfahren da leider anders als ältere, weswegen es öfter
dazu kommt, dass USB Geräte und dauch SD KArtenleser (selbst ohne SD
Karte drin!) als sda erkannt werden und die interne SSD eben nur als sdb.
und was ist dagegen zu tun?
das Problem tritt gehäuft erst seit linbo ~ 2.3.26 auf.
Abhilfe gibt es in der Form von Partitionslabels.
Dazu schreibt man in der start.conf an jeder Stelle, wo eine Partition
definert ist, noch den Eintrag
Label = meinepartition
dazu.
Bei mir sieht das (für eien einzige Partition) so aus:
[Partition] # Start einer Partitionsdefinition, Kubuntu
Dev = /dev/sdb2 # Device-Name der Partition (sdb2 = 2.
Label = ubu14
Size = 35G # Partitionsgroesse in kB (Bsp.: 6G)
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c =
FAT32, 7 = NTFS, …)
FSType = ext4 # Dateisystem auf der Partition (ext3)
Bootable = no # Bootable-Flag
Und das macht man für jede Partition in der start.conf.
Wenn man das gemacht hat, dann muss man jeden Client der Gruppe neu
Partitionieren: erst dann werden die Label auf die Platte geschrieben
und verwendet.
danke für die schnelle Antwort. Das muss ich mir erst mal, eventuell auch mit Hilfe der Hotline, in Ruhe anschauen. Hilft hier als “Sofortmaßnahme” zunächst bei einem Systemabsturz das Herausziehen des Datenträgers, so dass er nicht überschrieben werden kann?
Finde ich die start.conf über die Schulkonsole unter GRUB-Startdateien?
Hier habe ich drei “cfg-Dateien”.
leider wurde ich meiner LMN Installation in der Schule beraubt und habe
es noch nicht geschafft mir eine Testumgebung aufzubauen. Daher weiß ich
nicht, wo genau du die start.conf in der Schulkonsole findest - ich
arbeite immer über die Serverkonsole. Dort unter
/var/linbo/.start.conf
holger meinte mit start.conf die konfigurationsdatei deiner hardwaregruppe. der genaue titel wäre dann start.conf.„name deiner hwgruppe“. z.b. start.conf.trusty o.ä.
in der schulkonsole findest du die unter linbo. kann jetzt auswendig allerdings nicht sagen, wie der unterreiter heisst. vielleicht „hardwaregruppe editieren“ ?
vg
wolfgang
Liebe Helfer,
die start.conf(s) auf dem Server habe ich mir angeschaut - aber hier liegen mir zu viele, da traue ich mich nicht ran.
Bleibt also für mich nur noch der Weg über die Schulkonsole:
Hier sind vier Partitionen eingetragen, nämlich “ubuntu”, “swap”, “virtual” und “cache”. Wenn ich Holger richtig verstanden habe, trage ich jetzt vor jeder Partition “Label” davor (z.B. Label=ubuntu) und speichere die Änderungen ab. Müssen hier vor und nach dem Gleichheitszeichen Leerstellen eingetragen werden?
die start.conf(s) auf dem Server habe ich mir angeschaut - aber hier
liegen mir zu viele, da traue ich mich nicht ran.
… das ist aber ganz einfach: du weißt wie die Hardwareklasse der
Rechner heißt?
Dann ist die /var/linbo/start.conf.
die richtige
Bleibt also für mich nur noch der Weg über die Schulkonsole:
Hier sind vier Partitionen eingetragen, nämlich “ubuntu”, “swap”,
“virtual” und “cache”. Wenn ich Holger richtig verstanden habe, trage
ich jetzt vor jeder Partition “Label” davor (z.B. Label=ubuntu) und
speichere die Änderungen ab. Müssen hier vor und nach dem
Gleichheitszeichen Leerstellen eingetragen werden?
nein.
Du trägst einfach in das Feld „Name der Partition“ den Namen ein, also nur
ubuntu
und nicht
Label=ubuntu
Das „Name der Partition“ ist die „Übersetzung“ der Schulkonsole von „Label“
Schau einfach danach kurz in die start.conf rein um zu prüfen
habe jetzt die entsprechende start.conf gefunden. Aber wenn ich es richtig verstehe, sind alle Einträge so gemacht, so dass das Problem eigentlich nicht bestehen sollte.
Hier die start.conf:
start.conf.fujitsu 3498/6094 57%
# LINBO start.conf, Beispiel fuer Ubuntu
# Ubuntu auf Partition 1
# Cache auf Partition 2
# Swap auf Partition 3
# Daten auf Partition 4
# Festplatte 160G
[LINBO] # Start der globalen Konfiguration
Cache = /dev/sda4 # lokale Cache Partition
Server = 10.16.1.1 # IP des Linbo-Servers, der das Linbo-Repository vorhaelt
Group = fujitsu
# Achtung: Server und Group werden beim Workstationsimport automatisch gesetzt!
SystemType = bios # moeglich ist bios|bios64|efi32|efi64 (Standard: bios fuer bios 32bit)
RootTimeout = 600 # automatischer Rootlogout nach 600 Sek.
AutoPartition = no # keine automatische Partitionsreparatur beim LINBO-Start
AutoFormat = no # kein automatisches Formatieren aller Partitionen beim LINBO-Start
AutoInitCache = no # kein automatisches Befuellen des Caches beim LINBO-Start
DownloadType = rsync # Image-Download per torrent|multicast|rsync, default ist rsync
BackgroundFontColor = white # Bildschirmschriftfarbe (default: white)
ConsoleFontColorStdout = white # Konsolenschriftfarbe (default: white)
ConsoleFontColorStderr = red # Konsolenschriftfarbe fuer Fehler-/Warnmeldungen (default: red)
KernelOptions = quiet splash # Beispiele:
#KernelOptions = acpi=noirq irqpoll # LINBO Kerneloptionen (z. B. acpi=off), m. Leerz. getrennt
#KernelOptions = server=10.16.1.5 # Abweichende Linbo-Server-IP als Kerneloption gesetzt
# falls gesetzt wird diese IP beim Workstationsimport verwendet
[Partition] # Start einer Partitionsdefinition fuer ein Betriebssystem (Ubuntu)
Dev = /dev/sda1 # Device-Name der Partition (sda1 = erste Partition auf erster Platte)
Size = 20G # Partitionsgroesse 20G, ist keine Einheit (M, G oder T) angegeben, wird kiB angenommen
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, ...)
FSType = ext4 # Dateisystem ext4
Bootable = yes # Bootable-Flag
Label = ubuntu # Partitionslabel
[Partition] # Definition der Swap-Partition
Dev = /dev/sda2 # Device-Name der Partition (sda3 = dritte Partition auf erster Platte)
Size = 2G # Partitionsgroesse 8G
Id = 82 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, ...)
FSType = swap # Dateisystem swap
Bootable = no # Bootable-Flag
Label = swap # Partitionslabel
[Partition] # Start einer Partitionsdefinition, Datenpartition
Dev = /dev/sda3 # Device-Name der Partition (sda4 = vierte Partition auf erster Platte)
Size = 15G # Partitionsgroesse (Bsp.: keine Angabe = Rest der Platte)
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, ...)
FSType = ext4 # Dateisystem ext4
Bootable = no # Bootable-Flag
Label = virtual # Partitionslabel
[Partition] # Start einer Partitionsdefinition, Cachepartition
Dev = /dev/sda4 # Device-Name der Partition (sda2 = zweite Partition auf erster Platte)
Size = # Partitionsgroesse 20G
Id = 83 # Partitionstyp (83 = Linux, 82 = swap, c = FAT32, 7 = NTFS, ...)
FSType = ext4 # Dateisystem ext4
Bootable = yes # Bootable-Flag
Label = cache # Partitionslabel
habe jetzt die entsprechende start.conf gefunden. Aber wenn ich es
richtig verstehe, sind alle Einträge so gemacht, so dass das Problem
eigentlich nicht bestehen sollte.
ja: aber wirken tun diese Einträge erst, wenn der Client neu
partitioniert wurde, oder per linbo-remote zum Setzen der Label
angehalten wurde.
unabhängig davon, ob die Labels schon auf der Festplatte gesetzt sind oder nur in der start.conf stehen:
Warum formatiert der Rechner überhaupt?
Sowohl AutoPartition als auch AutoFormat stehen auf „no“,
ebenso fehlt doch die Definition für z.B. ubuntu.
Dort sollte als DefaultAction vielleicht nicht „new“ drinstehen.
Auch Autostart könnte man vorsichtshalber deaktivieren.
Ich habe die leise Vermutung, dass ohne Benutzereingriff so ein reboot mit überschreiben eines USB-Disk/sticks gar nicht so möglich war
(Wenn jemand ohne zu wissen, was er tut bei einem scheinbar defekten System auf „Neu+Start“ klickt, dann hat er evtl. den Salat. Und es stimmt: Linbo ist so gedacht, dass man das „ohne zu wissen was man tut“ tut.)
Noch eines: Ich stelle bei mir grundsätzlich das Booten von USB-Datenträgern im BIOS ab, sofern es möglich ist. ich weiß auch, das könnte nicht helfen, wenn LINBO bootet und dann sda/sdb falsch zuordnet.