• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

fstab,menu.lst anpassen (HdImage auf andere HD)

Hallo @all,

ich habe von einem Pc mit Suse 11 eine Image erstellt (clonezilla)
vorher habe ich
/etc/fstab
von
Code:
/dev/disk/by-id/ata-SAMSUNG_	swap 	swap 	defaults 0 0 
/dev/disk/by-id/ata-SAMSUNG_-part1	/	ext3	acl,user_xattr 1 1 
/dev/disk/by-id/ata-SAMSUNG_-part3	/home	ext3	acl,user_xattr 1 2
nach
Code:
/dev/sda1	swap	 swap	defaults 0 0 
/dev/sda2	/	ext3	acl,user_xattr 1 1 
/dev/sda3	/home	ext3	acl,user_xattr 1 2
und menu.lst
Code:
title SUSE Linux  - 2.6.27.39-0.3 (default)
    root (hd0,0)
    kernel /boot/vmlinuz-2.6.27.39-0.3-default root=/dev/disk/by-id/ata-SAMSUNG_-part1 resume=/dev/disk/by-id/ata-SAMSUNG_-part2 splash=silent showopts vga=0x31a
    initrd /boot/initrd-2.6.27.39-0.3-default

nach
Code:
title SUSE Linux  - 2.6.27.39-0.3 (default)
    root (hd0,0)
    kernel /boot/vmlinuz-2.6.27.39-0.3-default root=/dev/sda1 resume=/dev/sda2 splash=silent showopts vga=0x31a
    initrd /boot/initrd-2.6.27.39-0.3-default

Habe dann auf einen anderen Pc (also andere HD) die image mit clonezilla eingespielt.

Beim booten kommen die Fehlermeldung, dass /dev/sda2 nicht gefunden wurde.

Mit der DVD von Suse konnte ich automatische Reparatur auswählen und dabei hat es neuen fstab und menu.lst erzeugt.
Danach klappt alles wunderbar.

Ich würde gerne den Schritt mit der autom. Reparatur überspringen :)
wie sollte man fstab, menu.lst evtl. andere Scripte anpassen?
 

lOtz1009

Moderator
Teammitglied
/dev/sdXY sind denkbar ungünstig, da diese Namen beim Start dynamisch vergeben werden. by-id wäre besser gewesen, muss man halt vorher bei der neuen Platte herausfinden ;)
 
du meinst by id in fstab eintragen oder beim menu.lst?

also ich habe jetzt mal reingeguckt und bei fstab ist alles so geblieben, also mit sda1 usw...nur menu.lst wurde durch by id ersetzt.

gibt es nicht irgendein standard wert? oder ein Befehl, dass beim ersten Booten die Einträge autom. angepasst werden?
 
A

Anonymous

Gast
Ich vermute mal du hast die Änderungen an den Dateien logisch richtig gemacht, und nur hier ins Forum Mist reingeschrieben. ;)
die geänderte fstab die du hier gebracht hast
Mafiose schrieb:
nach
Code:
/dev/sda1   swap    swap   defaults 0 0
/dev/sda2   /   ext3   acl,user_xattr 1 1
/dev/sda3   /home   ext3   acl,user_xattr 1 2
passt überhaupt nicht zur menu.lst
Mafiose schrieb:
nach
Code:
title SUSE Linux  - 2.6.27.39-0.3 (default)
    root (hd0,0)
    kernel /boot/vmlinuz-2.6.27.39-0.3-default root=/dev/sda1 resume=/dev/sda2 splash=silent showopts vga=0x31a
    initrd /boot/initrd-2.6.27.39-0.3-default
in der fstab soll / sda2 sein und als bootparameter für den Kernel gibst du root als sda1 an. sda1 soll in der fstab swap sein aber als resume-Device bei den Kernelparametern gibst du sda2 an welches laut fstab aber dein / sein soll.

Der Rechner kann sich sowas nicht zusammenreimen oder kombinieren was du eventuell meinst, nein - das musst du ihm schon 100%ig logisch und verständlich erklären.
;) ;) ;)

Hinzu kommt noch, das da noch eine weitere Datei, die initrd mit ins Spiel kommt, in ihr sind auch noch wichtige Teile der Konfiguration die zum Booten benötigt werden, enthalten. Hier wird uU bei unklaren Boot-Optionen auch noch nach der Konfiguration gesucht. Hier kommt es bei solchen Umzugsaktionen und ähnlichen Gelegenheiten des öfteren zu zusätzlichen Konflikten und Problemen zB wegen fehlenden oder alten Informationen/Treiber/Konfigurationen weil eben noch die vom alten System dort enthalten sind, das neue System aber doch etwas abgeänderte braucht. Die neue Initrd vorher wirklich richtig zu erstellen gelingt aber auch nicht immer in jedem Fall. Somit bleibt der erste Bootversuch immer spannend.

robi
 
huch..stimmt, habe hier falsch gepostet :)

hm...in der inittab habe ich jetzt nichts gesehen was mit HDs zutun hat.
was ich nicht verstehe warum es hinterher dem System egal ist das sda in fstab und menu.lst eingetragen ist.

Nochmal zusammengefasst:
fstab und menu.lst
/dev/sda1 usw.. eingetragen

erster boot:
- Fehler (findet /dev/sda nicht)

Reparieren
- alles ok
- fstab ist mit /dev/sda1 geblieben
- menu.lst /dev/sda wurde durch by Id hd ...ersetzt.

menu.lst wieder ändern
- /dev/disk/ by id .... durch /dev/sda1 usw. ersetzen
- funktioniert immer noch alles gut.
 
A

Anonymous

Gast
Mafiose schrieb:
huch..stimmt, habe hier falsch gepostet :)
hm...in der inittab habe ich jetzt nichts gesehen was mit HDs zutun hat.
:eek:ps: :eek:ps: :eek:ps: inittab war Fehler von mir, initrd meinte ich natürlich.. Die Beschreibung dazu hat zwar gepasst der Name war falsch. Ich glaube werde langsam alt. ;)
Ich ändere es oben mal ab.

in die initrd werden je nach Version einige wichtige Konfigurationsdateien das Systems übernommen. ua. udev-Konfigurationen, fstab, Raid- Konfigurationen usw. bzw es sind dort "fall back" Optionen enthalten für den Fall das die Bootoptionen nicht 100% vollständig waren. Wenn du die initrd nicht nach größeren Systemänderungen im Bootbreich neu erzeugst, stehen dort noch die alten drin. Die Systemreperatur erzeugt wahrscheinlich auch eine neue initrd.

Was genau bei dir schief gelaufen ist, ist so nicht zu ermitteln. Dazu müsste man die Dateien genau vergleichen können.

robi
 
Mafiose schrieb:
was ich nicht verstehe warum es hinterher dem System egal ist das sda in fstab und menu.lst eingetragen ist.
Dem System ist es gleichgültig, wie Du eine Platte oder Partition ansprichst, es muß nur die richtige Platte oder Partition sein. Und genau das kannst Du mit dem Gerätenamen (dev/sdXY) nicht gewährleisten, sofern Du mehr als eine Platte hast, da der Gerätename bei jedem Startvorgang neu festgelegt wird.

Mafiose schrieb:
erster boot:
- Fehler (findet /dev/sda nicht)
Reparieren
- alles ok
Schau Dir einmal an, wann die Datei /boot/initrd-Dein_Kernel erstellt wurde, ich gehe davon aus, daß sie im Zuge des "Reparierens" neu erzeugt wurde (vorher fehlte das Kernel-Modul für den Festplatten-Controller des "neuen" PC).

Mafiose schrieb:
Ich würde gerne den Schritt mit der autom. Reparatur überspringen
Dann mußt Du vorher dafür sorgen, daß initrd, fstab und menu.lst passen. Daß dieses Vorgehen trotzdem problematisch ist, da der "neue" PC jede Menge anderer Hardware hat, wurde hier im Forum schon oft genug besprochen.
 
ok danke für die Infos ...

ich habe noch eine andere Frage:
Wenn ich weiterhin so mache:
- image einspielen
- reparieren

Gibt es eine Möglichkeit zu überprüfen ob alle Geräte erkannt wurden?
Bei Windows gibt es ja "Gerätemanager" und alles was dort mit Fragezeichen auftaucht ist für System unbekannt.
Im Prinzip müsste eigentlich alles funktionieren. Unter Yast habe ich mir die hardware info anzeigen lassen und es scheint alles erkannt zu sein.
Was mir nur aufgefallen ist unter Gnome/Systemmonitor System UUID ist leer.
 
Oben