Squeeze: Grub Update per "upgrade-from-legacy-grub"

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
flitschbirne
Beiträge: 23
Registriert: 04.07.2007 14:27:24
Kontaktdaten:

Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von flitschbirne » 15.02.2011 18:18:42

Hi.

Ich hatte vor ein paar Tage von Lenny auf Squeeze aktualisiert. Bisher lief noch der alte Grub per Chainloading in den Grub2 was auch funktionierte.

Dann habe ich nach einem Boot den Befehlt

Code: Alles auswählen

upgrade-from-legacy-grub
ausgeführt. Anschließend kamen ein paar Fragen die ich leider nicht mehr so genau im Kopf habe. Dann kam eine Stelle an der gefragt wurde für welches Device der Grub2 installiert werden soll. Ich weiss nur noch, dass ich beide von möglichen zwei Auswahlen angewählt hatte. Nach den Installation kam dann noch eine Warnmeldung, dass das Ankreuzen von beiden Devices "BAD" wäre und irgendwas mit "Blacklists". :cry:

Auf jedenfall nach dem Boot kommt jetzt immer folgendes.

Code: Alles auswählen

Booting the kernel.
Loading, please wait...
mount: mounting none on /dev failed: No such device
w: devtmpfs not available, falling back to tmpfs for /dev
[4.773057] sd 0:1:0:0: [sda] Asking for cache data failed
[4.773107] sd 0:1:0:0: [sda] Assuming drive cache: write through
[4.773284] sd 0:1:0:0: [sda] Asking for cache data failed
[4.773330] sd 0:1:0:0: [sda] Assuming drive cache: write through
[5.728008] hde: Invalid capacity for disk in drive
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
Alert! /dev/disk/by-uuid/ca342291-d68e-43e0-87a2-cd9de0939253 does not exist.
Dropping to a shell!
Anschließend bin ich in dieser BusyBox und die Kiste bootet nicht weiter. :evil:

Was ich bis jetzt gecheckt habe:

Code: Alles auswählen

blkid
Sieht komischerweise nur /dev/sda2 und /dev/sda3. /dev/sda1 fehlt!!! Da kann ja schonmal was nicht stimmen.
Hab auch schon von einer Knoppix Live-CD gebootet. Die Datei unter /dev/disk/by-uuid/ existiert nicht.

Leider kenne ich mich überhaupt nicht gut aus im Grub fixen. Kann mir einer einen Tipp geben wo man ansetzen könnte? Kann man nicht irgendwie die Änderungen die der Befehl

Code: Alles auswählen

upgrade-from-legacy-grub
gemacht hat rückgängig machen?

micros
Beiträge: 39
Registriert: 22.08.2003 19:20:55
Wohnort: Bingen
Kontaktdaten:

Re: Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von micros » 15.02.2011 21:59:48

Hallo,

grub kann mit einer rescue-CD nachträglich installiert werden. Ich nehme hierfür in der Regel eine Mepis-live-CD. Im root-Verzeichnis sind normalerweise symLinks auf den aktuellen Kernel und die aktuelle initrd.img vorhanden, die auch zum Booten verwendet werden können.

Auf der Knoppix-CD sollte das Programm gparted vorhanden sein. Wenn dort die Partition sda1 mit dem richtigen Dateisystem erscheint, gibt es wohl kein Festplattenproblem.

Sobald Du wieder im System bist, kann grub2 in den MBR installiert werden. Rückgängig machen geht nur über eine Neuinstallation von grub-legacy, etwas umständlich zwar und nicht zu empfehlen, aber mit Debian darf man sich alles so installieren, wie man es haben will.
Gruß micros
Aller Anfang ...

flitschbirne
Beiträge: 23
Registriert: 04.07.2007 14:27:24
Kontaktdaten:

Re: Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von flitschbirne » 16.02.2011 10:00:25

Moin.

Als ich die Knoppix-CD drin hatte hat er mir sda1 angezeigt und ich konnte auch auf alle Daten zugreifen, d.h. ein Hardware-Defekt wird wohl nicht vorliegen...

Wie kann man weiter vorgehen?

storm
Beiträge: 1581
Registriert: 01.05.2004 13:21:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: DE

Re: Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von storm » 16.02.2011 11:09:34

Wenn ich deinen Ausführungen richtig folge, bootet grub den Kernel zwar, aber er findet das rootfs nicht oder hat einen falschen Eintrag dafür, korrekt?

Zuerst mal wäre die Aufteilung deiner Platte wichtig, welche Partition ist das rootfs. Und wenn du sda1 mounten kannst, wäre der Inhalt der Datei /boot/grub/grub.cfg interessant, da speziell der Abschnitt mit den zu bootenden Systemen. Welche Version hat das installierte Paket von grub-pc (-> /usr/share/doc/grub-pc)?

ciao, storm
drivers/ata/libata-core.c: /* devices which puke on READ_NATIVE_MAX */

flitschbirne
Beiträge: 23
Registriert: 04.07.2007 14:27:24
Kontaktdaten:

Re: Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von flitschbirne » 16.02.2011 11:14:59

Wow bin weiter gekommen! Er bootet. Irgendwie liegt es wohl an dieser UUID.

Was ich gemacht habe:

Im Grub über "e" das Edit-Menü aufgerufen. Der erste Eintrag vom aktuellen Kernel war wie folgt:

Code: Alles auswählen

insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set ca342291-d68e-43e0-87a2-cd9de0939253
echo 'Loading Linux 2.6.26-2-486 ...'
linux /boot/vmlinuz-2.6.26.-2-486 root=UUID=ca342291-d68e-43e0-87a2-cd9de0939253 ro quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.626-2-486
Ich habe dann ganz rabiat die komplette "search" Zeile entfernt (an späterer Stelle stellt sich heraus, dass es daran nicht lag) und in der linux Zeile "root=UUID=ca342291-d68e-43e0-87a2-cd9de0939253" durch "root=/dev/sda1" ersetzt.

"Strg + X" und siehe da er bootet. Nächster Schritt wäre Grub wieder vernünftig zu konfigurieren. In /etc/default/grub habe ich die Zeile "GRUB_DISABLE_LINUX_UUID=true" aktiviert -> "update-grub" durchgeführt. Dadurch hat grub wie oben manuell durchgeführt "root=UUID=ca342291-d68e-43e0-87a2-cd9de0939253" durch "root=/dev/sda1" ersetzt.

micros
Beiträge: 39
Registriert: 22.08.2003 19:20:55
Wohnort: Bingen
Kontaktdaten:

Re: Squeeze: Grub Update per "upgrade-from-legacy-grub"

Beitrag von micros » 17.02.2011 00:28:09

Hallo,
zunächst meinen Glückwunsch, dass Du wieder im System bist. Da das update-grub erfolgreich war, scheint sich grub2 in den MBR installiert zu haben. Normalerweise können unterbrochene Upgrades einfach nochmal aufgerufen werden. Beim Upgrade-from-legacy erscheint am Ende die Frage, ob auch die Datei /boot/grub/menu.lst entfernt werden soll, sie wird ja nicht mehr benötigt.
Die UUIDs sind sehr hilfreich, wenn man mehrere Festplatten verwendet und können auch ein Vertauschen der Platten überstehen.
Gruß micros
Aller Anfang ...

Antworten