ubuntuusers.de

Grub bootet nicht vom RAID1

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

hannemann schrieb:

Muss der Artikel nicht vorher in eine Baustelle verschoben werden usw.?

Nich bei kleinen Ergänzungen.

Siehste, da geht es schon los. Für zwei Sätze ins Wiki eintragen schon die erste Unsicherheit... Ich machs aber trotzdem 😛

Ich hab das doch schon gemacht, kannst aber mal schauen, ob das so Ok ist. (ganz unten)

hannemann

Anmeldungsdatum:
25. Mai 2007

Beiträge: 1310

hier? Software-RAID

Find ich nicht

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Hö? Verdammt, wo isn das hin? Seltsam.

Na ich machs nacher nochmal, oder du bist schneller.

hannemann

Anmeldungsdatum:
25. Mai 2007

Beiträge: 1310

Ich hab erst am WE Zeit, was zu formulieren 😛

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

So jetzt aber, schaus dir nochmal an.

hannemann

Anmeldungsdatum:
25. Mai 2007

Beiträge: 1310

Klasse. Ich hab noch ein büschn was hinzugefügt...

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Fein, das Alert md0 is das ne Fehlermeldung vom Grub? Dann währe es besser, das nicht als Überschrift zu machen, sondern in einen Codeblock zu setzen.

Oder wenigstens, mit der Grub Fehlermeldung-Überschrift zu verschmelzen, da es ja kein Unterpunkt davon ist.

whatsmyname2009

Anmeldungsdatum:
7. Oktober 2009

Beiträge: Zähle...

Hi Leute!

Gleiches Problem: neue Festplatten, frischer Raid1-Chain, Installation umgezogen (Debian testing)... GRUB FINDET /DEV/MD0 NICHT ☹

Ich habs jetzt mal so gemacht wie hier vorgeschlagen: von der LiveCD (Ubuntu) /dev und /proc im Chroot-System eingebunden und update-initramfs (allerdings nur -u und nicht -k all weil er mir sonst den/die unterschiedlichen Kernel meiner LiveCD auch alle mitupdaten wollte - da gabs eine harte Fehlermeldung segmentation fault) ... Grub2 bleibt leider immer noch hängen.

Was kann es noch sein? Ich habe gesehen, dass man das Modul raid1 im /etc/initramfs-tools/modules noch auskommentieren musste, hat aber auch nichts gebracht.

Noch irgendwelche Ideen?

Gruss, DS

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Moin!

Das Problem ist wieder da ☺ Zeit, das Wiki noch bischen aufzumöblen.

Also, ich hab eine Systemaktualisierung durchgeführt, so kam auch ein neuer Kernel. Nach der Aktualisierung hab ich die menu.lst angepasst auf den neuen Kernel und wollte booten.

Tataa, da bin ich wieder in der initramfs-Konsole gelandet mit

ALERT! /dev/md0 not found

Ok, ich Brain geused und an diesen Forenbeitrag erinnert - also LiveCD rausgekramt, gebootet und wollte anhand des mittlerweile aktualisierten http://wiki.ubuntuusers.de/Software-RAID das initramfs aktualisieren:

sudo mount /dev/md0 /mnt
sudo mount -o bind /dev /mnt/dev
sudo mount -t proc /proc /mnt/proc
sudo chroot /mnt /bin/bash
sudo update-initramfs -u -k all

Ok, das hat schon mal nicht funktioniert, das wäre eine Sache, die man am Wiki erweitern müsste - bei der "normalen" Ubuntu-LiveCD ist madam nicht von Anfang an geladen (bei der alternate LiveCD wohl schon...?)

Folgende Meldung erschien:

ubuntu@ubuntu:/mnt$ sudo mount /dev/md0 /mnt
mount: Gerätedatei /dev/md0 existiert nicht

Lösung:

sudo apt-get install mdadm 

Das sollte ins Wiki... ☺

Weiter gehts...zuerste konnte ich dann md0 immer noch nicht einhängen, da es nicht existiert hat. Woran es jetzt genau lag, dass es funktioniert hat weiss ich nicht. Ich hab das ganze ja zweimal durchgespielt mit Neustart dazwischen. Einmal hats irgendwann funktioniert nach

ubuntu@ubuntu:/mnt$ sudo modprobe md
ubuntu@ubuntu:/mnt$ sudo modprobe raid1

Wird da automatisch nach RAID-Dateien gesucht?

Das andere Mal hat es funktioniert nach

ubuntu@ubuntu:~$ sudo modprobe md
ubuntu@ubuntu:~$ sudo mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1
mdadm: /dev/md0 has been started with 2 drives.

Dann gings weiter...

ubuntu@ubuntu:~$ sudo mount /dev/sda2 /mnt/boot    #meine Boot-Partition
ubuntu@ubuntu:~$ sudo mount -o bind /dev /mnt/dev
ubuntu@ubuntu:~$ sudo mount -t proc /proc /mnt/proc
ubuntu@ubuntu:~$ sudo chroot /mnt /bin/bash 

In meinem System als chroot dann

root@ubuntu:/# sudo update-initramfs -u -k all
sudo: unable to resolve host ubuntu
update-initramfs: Generating /boot/initrd.img-2.6.27-15-generic
update-initramfs: Generating /boot/initrd.img-2.6.27-14-generic
update-initramfs: Generating /boot/initrd.img-2.6.27-11-generic
update-initramfs: Generating /boot/initrd.img-2.6.24-22-generic
update-initramfs: Generating /boot/initrd.img-2.6.22-14-generic
update-initramfs: Generating /boot/initrd.img-2.6.20-16-generic 

Also, 2.6.27-15 ist der neue Kernel, wie leicht zu sehen ☺ Jedenfalls hat er die neuen Dateien auf der eingehängten Boot-Partition erstellt - also genau da wo sie hingehören.

Allerdings hat er mich nach dem Starten mit dem neuen Kernel wieder mit der Fehlermeldung

ALERT! /dev/md0 not found

bei der initramfs-Konsole rausgeworfen und auch mit dem vorherigen Kernel hat es nicht mehr funktioniert, da er die zugehörige initrd.img ja auch überschrieben hat. Da ich allerdings ein Backup hatte, hab ich einfach die alten Dateien zurückgespielt und wieder mit dem alten Kernel 2.6.27-14 und der zugehörigen initrd.img gebootet und das hat funktioniert.

So und nun Preisfrage - wo liegt das Problem? Kann mir da jemand weiterhelfen? Ich schreib die Lösung auch ins Wiki, versprochen ☺

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Hi. Startet er noch, wenn du den alten Kernel auswählst? Edit: ach hast du ja schon geschrieben sorry.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Moin!

Also, die Lösung von dem Thread hier sollte unbedingt ins Wiki, wenn wir eine haben. Ich bin schon auf der Spur ☺

Nach der Lektüre von ein paar Seiten

http://debianforum.de/forum/viewtopic.php?f=12&t=113969

https://bugs.launchpad.net/ubuntu/+bug/358054

http://ubuntuforums.org/showpost.php?p=6107702&postcount=34

http://www.linuxquestions.org/questions/linux-server-73/booting-into-initramfs-after-upgrade..-759207/

http://ubuntuforums.org/archive/index.php/t-1053996.html

komme ich so langsam in die richtige Richtung. In den Beiträgen wird unter anderem empfohlen den Grub-Parameter rootdelay auf 120 Sekunden zu setzen, damit genug Zeit vorhanden ist um /dev/md0 automatisch einzubinden. Dies war bei mir jedoch wirkungslos.

Ich habe festgestellt, dass mdadm in der BusyBox vorhanden ist und funktioniert. Auch /dev/md0 ist vorhanden, allerdings NICHT als funktionierendes RAID-System wie

/proc/mdstat

bestätigt hat.

mdadm --assemble --scan

hatte keine Wirkung, da die Laufwerke aus denen das RAID aufgebaut werden soll nicht gefunden wurde. Diese sind allerdings vorhanden. Denn wenn man sie konkret angibt

mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1

wird das RAID-Laufwerk gestartet und nach der Eingabe von

exit

in der BusyBox fährt der Rechner ganz normal hoch.

Beim nächsten Neustarten bin ich allerdings wieder in der BusyBox gelandet.

Ein

update-initramfs -k all -u

unterdem mittels

mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1

aus der BusyBox heraus gebootetem und normal funktionierenden System brachte auch keine Abhilfe.

Es ist zwar lästig, wenn man das RAID jedesmal manuell erstellen muss, es ist aber immerhin mal ein wenig wieder ohne Live-CD und chroot in das System reinzukommen.

Hat jemand weitere Ideen?

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

jones79 schrieb:

update-initramfs -k all -u

aus der BusyBox heraus gebootetem und normal funktionierenden System brachte auch keine Abhilfe.

Hast du auch mal

sudo dpkg-reconfigure linux-image-2.6.31-14-generic

probiert, das hat ja bei einem auf Launchpad geholfen. (Kernelversion anpassen)

Edit: Was bei dir anders ist, als ind den Lösungen: mdadm --assemble --scan funktioniert nicht, damit tut der Kernel beim Start ja das md-dev erstellen.

Eventuell kann man den "mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1"-Befehl in ein Startscript einbauen. Weiß aber nicht genau wo, da das ja ziemlich früh passieren muss (vor dem ganzen gemounte), jemand anders?

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Ok, das seh ich ein, also dass wenn der Befehl nicht geht, das ganze auch nicht automatisch eingebunden wird.

Hm ich bin da noch bischen unsicher, wenn es darum geht irgendwas am Kernel neu zu konfigurieren... ☺

Was genau macht der Befehl

sudo dpkg-reconfigure linux-image-2.6.31-14-generic

?

Und

update-initramfs -k all -u

das aktualisiert die BusyBox? Ist das so eine Art "Vor-Betriebssystem" aus dem heraus der ganze andere Kram dann geladen wird? Was wir denn dann bei dem Update gemacht? Irgendwelche neu installieren Module eingebunden?

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

jones79 schrieb:

Was genau macht der Befehl

sudo dpkg-reconfigure linux-image-2.6.31-14-generic

Die Konfigurationsdateien, die bei apt-get install NAME erstellt werden, werden neu konfiguriert. Unter anderem sollte (beim Kernel) auch das initramfs neu gebaut werden.

Und

update-initramfs -k all -u

Das initramfs ist ne Datei, die vom Grub in den Ram geladen wird, darin sind systemwichtige Module (z.B. mdadm) enthalten, ohne die das Betriebsystem nicht starten kann.

das aktualisiert die BusyBox? Ist das so eine Art "Vor-Betriebssystem" aus dem heraus der ganze andere Kram dann geladen wird? Was wir denn dann bei dem Update gemacht? Irgendwelche neu installieren Module eingebunden?

Die BusyBox ist einfach sowas wie die Shell (dash, bash), nur deutlich weniger Funktionen.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Hi!

Vielen Dank für die Erklärungen, das hat einiges klarer gemacht. Also ich hab jetzt mal

sudo dpkg-reconfigure linux-image-2.6.27-15-generic

ausgeführt. Den Meldungen nach auch erfolgreich.

Allerdings lande ich immer noch in der BusyBox.

Hast du noch ein paar Vorschläge? ☺