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

[gelöst] grub / boot-sektor Problem

pft

Advanced Hacker
Hallo,

ich brauche mal Eure Hilfe.

Ich versuche meine Systemplatte gegen eine größere zu tauschen.
Ich habe also die neue Platte erstmal parallel zur alten eingebaut, partitiniert, formatiert und alle Daten rübergespielt.
Da sich die Partitionsnummern etwas ändern werden habe ich die menu.lst angepaßt und dachte jetzt müßte ich nur noch die alte durch die neue Platte ersetzen, von der Installations-CD booten und den boot-Sektor neu schreiben und fertig.

Aber denkste! Ich bekomme immer einen Fehler.

hier meine fdisk-Ausgabe
Code:
   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/hda1               1       48641   390708801    5  Erweiterte
/dev/hda5               1           4       32067   83  Linux
/dev/hda6               5         657     5245191   83  Linux
/dev/hda7             658         661       32098+  83  Linux
/dev/hda8             662        1314     5245191   83  Linux
/dev/hda9            1315        1444     1044193+  82  Linux Swap / Solaris
/dev/hda10           1445        2097     5245191   83  Linux
/dev/hda11           2098       48641   373864648+  8e  Linux LVM
zum Inhalt:
hdd5 ist auf /boot gemountet und enthält das bootsystem
hdd6 ist die root-partition
alle anderen sind erst mal ohne Belang da in der fstab auskommentiert

Was ich probiert habe:

Installationsdisk booten -> Reparatur -> Expertenwerkzeuge -> neuen Bootloader installieren; Reiter Bootloader installation

Ich habe ausgewählt:
- boot from Master boot recoed
- custom boot partition -> /dev/hda5


Nach "Weiter" kommt dann eine Fehlermeldung so ähnlich wie:
grub -stage_2 ... hd(0,4)
disk existiert nicht
- tut sie aber doch

Ganz genau geht es leider nicht weil ich wieder umbauen musste, da die Kiste gleichzeitig mein Internetrouter ist.
Was muß ich genau tun um von der neuen Platte (nach Umstöpseln auf hda) zu booten?

Konsolenbefehle sind auch ok.

Kann man das auch ohne Installations-CD tun in dem Zustand, wo die spätere hda als hdd eingebaut und das System von der alten hda gebootet ist?
 

vgruetzm

Newbie
Hallo,
ich sehe in Deiner Liste den Mountpunkt / nicht.

Nebenbei: Warum machst Du das ganze nicht unter YaST?
Unter dem Menupunkt System -> Konfiguration des Bootloaders kannst Du im Reiter Abschnittverwaltung und Bootloader-Installation eigentlich alles einstellen
 
OP
P

pft

Advanced Hacker
Hi,

also der Mountpunkt / ist schon da. Ich hab halt "root-partition" geschrieben. Also die hda6.

Warum ich das nicht unter yast mache?
Tu ich ja, nur von der Installations-CD, weil ich angenommen habe, dass ich das nicht mit gebooteter alter HD als hda auf der neuen als hdd so machen kann, dass ich nach umbau der hdd auf hda von da booten kann.

Und von der neuen HD kann ich ja noch nicht booten sonst bräuchte ich das ganze ja nicht. es sei den ich erzeuge in der alten menu.lst einen Eintrag auf die hdd aber das bringt ja dann auch nix weil die Zielkonfiguration eine ganz andere ist. Also ich gehe davon aus dass ich den Bootsektor schreiben muss wenn der Rechner exakt im Zielzustand ist, was den Anschluss der boot-HD angeht, da sheisst als hda, oder?

Im Prinzip hab ich ja den Menupunkt "Konfiguration des Bootloaders" benutzt.

Aber der Abschnitt "Abschnittsverwaltung allein führt zur gelichen Fehlermeldung. Ausserdem kann ich da ja nirgends angeben, dass ich eine separte /boot Partition habe. Daher der Reiter "Bootloader-Installation"
Oder liege ich da falsch.
 
Wenn du /etc/fstab auch angepasst hast versuch mal von der CD "boot installed system"
und dann mit grub den Bootsektor neu zu schreiben.

Die Fehlermeldung könnte kommen, wenn /boot/grub/device.map eventuell nicht auf
die richtige Platte zeigt. Dann findet grub hd0 nicht.
( Ist das SuSE 10.3 ? dann könnten die Platten sda statt hda heißen.)


Haveaniceday
 

vgruetzm

Newbie
... genau das würde ich auch tun. Wenn Du von der alten Platte booten kannst, solltest Du die Konfiguration anschließend unter YaST (auf der Konsole yast starten, wenn das X-Windows nicht mehr läuft, ansonsten ganz normal unter der grafischen Oberfläche als root) vornehmen. Das hat den Vorteil, daß dann alle Einträge richtig geschrieben werden (fstab, mtab, ...) 8)
Das manuelle Rumschreiben in diesen Dateien ist gefährlich, wenn man nicht genau weiß, was man da tut.

Gruß
 
OP
P

pft

Advanced Hacker
ok das mit dem boot installed system probier ich mal.

Allerdings: die devicemap wurde nie benutzt, d.h. nix besonderes da steht (alt wie neu) nur ... (hd0) /dev/hda

Zum anderen: ich komme ja gar nicht soweit irgendwelche Fehlermeldunen beim booten zu erzeugen, weil das System auf der Platte null zum booten findent, d.h. er versucht dann halt die nächsten Boot-Quellen laut BIOS einstellung.

Last not least: wie schreib ich den boot sektor neu? Das ist ja momentan mein Problem.
Wie und wo sag ich ihm das mit der separaten /boot-partition und wo muß der boot-sektor hin? ich denke auf den MBR der Platte, richtig?
 
Mit Fehlermeldung meinte ich:
> Nach "Weiter" kommt dann eine Fehlermeldung so ähnlich wie:
> grub -stage_2 ... hd(0,4)
> disk existiert nicht
> - tut sie aber doch

Folgendes solltes du machen, wenn die Platte nicht permanent drin bleibt.
- Alte Platte ausbauen
- Neue Platte als erste Master Platte.
- von CD booten ( boot installed system oder so, hab ich lange nicht mehr gemacht.)
- Folgende Dateien anpassen:
/boot/grub/menu.lst (hast du ja schon )
/boot/grub/device.map ( sollte schon "(hd0) /dev/hda" enthalten)
/etc/grub.conf "(hd0," steht dann für /dev/hda, wegen /boot/grub/device.map ",<partition>" steht für die Partition wo sich das File befindet. Wobei grub im Gegensatz zu fdisk von 0 zählt. => fdisk-partitionsnummer-1 => dieses muss jeweils in grub.conf / menu.lst stehen.

- Anschliessend rufst du "grub-install" auf und alles sollte gehen.

Haveaniceday
 
OP
P

pft

Advanced Hacker
Hi,

eine lange Nacht später, ein paar Erfahrungen reicher und doch nicht weiter. :-(

Also das mit Installations-CD und dann "boot installed system" ging schon mal nicht. Er hat einen alten Kernel gebootet zu dem die entspechenden Dateien unter /lib/modules nicht mehr da waren, d.h. kernel panic! Ich weiß nicht wieso das so ist, aber ich vermute, dass er den Kernel von der CD genommen hat weil der richtige auf hda5 liegt, ich aber natürlich die root-partition hda6 gebootet habe. Etwas anderes bietet er ja nicht an. Man könnte evtl. das mit der separaten Boot-partition aufgeben um das Problem zu umgehen.

Ich hab dann gedacht ganz schlau zu sein und habe brute force ein neues Minimalsystem von der CD installiert, auf hda5 (/boot) und hda6 (/). Das hat dann erstmals zu einem brauchbaren MBR geführt, d.h. zum ersten Mal hat das System die PLatte als Bootbares medium erkannt. Danach habe ich dann hda5 und hda6 leer gefegt, die Daten von der alten Platte drüber gebügelt und die menu.lst und fstab angepaßt.

Jetzt hat zwar die Kiste zwar von der Platte gebootet und grub gestartet aber irgendwie will er auf die falschen Partitionsnummers zugreifen (die von der alten Platte). Warum das so ist - keine Ahnung bis jetzt In der initrd steht doch dazu nichts drin, oder?

Tja dann hab ich erst mal die alte Platte wieder eingbaut und bin ins Bett. mal sehen was mir oder Euch dazu heute noch so einfällt ;-)

Notfalls kann ich die Partitionsanordnung der alten Platte angleichen oder die seprate Boot-Partition aufgeben.
Aber es wurmt mich schon. Das muss doch irgendwie gehen.

Und warum schafft man es nicht mit dem Reparatursystem einen MBR zu schreiben trotz aller Optionen die das tun sollten. Die Platte wurde als boot-medium immer völlig ignoriert, bis zur Neuinstallation.
 
OP
P

pft

Advanced Hacker
Hallo,

nachdem ich mir das nochmal genauer angesehen habe und einen kleinen Fehler in der menu.lst korrigeirt habe komme ich jetzt zum Boot Menu.

Danach rauschen einige Meldungen über den Bildschirm (sieht auf die Schnelle ok aus) bis das kommt:
Code:
Waiting for device /dev/hda6 to appear:    ok
Mounting root /dev/hda6
mount: unknown filesystem type 'ext3'
umount: /dev: device busy
umount: /dev: device busy
umount: /dev/pts: device busy
umount: /dev/pts: device busy
Kernel panic - not syncing: Attempting to kill init!
und das wars dann.

Was ist da los?
wenn ich knoppix boote kann ich die hda6 problemlos mounten und bearbeiten, in der fstab wird sie automatisch als 'ext3' eingetragen.
 
pft schrieb:
Mounting root /dev/hda6
mount: unknown filesystem type 'ext3'

Seit ein paar Versionen von SuSE besteht der Kernel nur noch aus einem ziemlich
nacktem Gestell. Alles ist in Module ausgelagert. Darunter auch die ext3-Unterstützung.
Fürs normale Starten packt "mkinird" alle die beim Booten benötigten Module in die
Initial Ramdisk initrd. grub lädt dann normalerweise kernel+initrd und der Kernel
lädt beim Start erst mal alle Module die er in initrd findet bevor er auf die Platten
oder sonst einen Systemteil zugreift.

Beim Booten von DVD/CD kann man irgendwo "Module" laden. Da könnte ein ext3-Treiber
mit bei sein. Ich hab mir aber diese Menues lange nicht mehr angeschaut... aber das sollte
die Lösung dafür sein.

Haveaniceday
 
OP
P

pft

Advanced Hacker
Hi haveaniceday,

danke für die Rückmeldung.
Ich hatte gerade einen neuen Thread aufgemacht weil dieser schon etwas kompliziert aussah.

Von CD/DVD booten ist kein Problem. Mir scheint das Problem zu sein, dass die initrd von der alten Platte keinen ext3 support enthält und die habe ich ja kopiert. Bei der Neuinstallation hat er halt default mäßig ext3 genutzt während auf der alten Platte aus der Histoie von Sue 8 oder 9 noch ext2 verwendet war.

Wie bekomm ich das in die initrd rein ohne das system zu booten?

Am besten im neuen Thread antworten -> http://www.linux-club.de/viewtopic.php?t=90225&highlight=
 
Oben