Saddy
Anmeldungsdatum: 2. Mai 2006
Beiträge: 1148
|
Hallöchen, ich habe ein unregelmäßiges Problem beim Booten, und zwar erscheint (hier fast immer) beim Booten in den aktuellen Kernel die Meldung
Gave up waitung for root device...
/dev/disk/byuuid/b8116d40-b60a-48bf-a387-e525095c44f7
Boote ich dann mit einem anderen Kernel, geht es meistens, aber nicht immer. Als der letzte Kernel aktuell war, gab es das gleiche Problem auch schon. Was mir auffällt ist, dass manchmal /sdb1 (Das Boot-Device) und /sda1 (Windows) bei der Ausgabe von
sudo blkid
/dev/sda1: UUID="1A5093135092F4AB" TYPE="ntfs"
/dev/sdb1: UUID="b8116d40-b60a-48bf-a387-e525095c44f7" TYPE="ext3"
/dev/sdb2: UUID="d4bd4a19-8f56-4c0e-8e7a-742582df5577" TYPE="jfs"
/dev/sdb5: TYPE="swap" UUID="91cdb49a-f28e-4ce2-b171-baf6c423f31d"
vertauscht sind. Aber das sollte doch durch die UUID's kein Problem sein? Edit:
Er hier http://www.ubuntu-forum.de/artikel/39122/rechner-startet-nicht-von-vmlinuz-2-6-27-7-generic.html hat das gleiche Problem, aber keine Antwort bekommen. Edit2:
Auszug aus der menu.lst:
title Ubuntu 8.10, kernel 2.6.27-9-generic
root (hd1,0)
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=b8116d40-b60a-48bf-a387-e525095c44f7 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
Die Boot-Markierung (laut parted) liegt auf /sda1, also auf der Win-Platte.
|
kaputtnik
Anmeldungsdatum: 31. Dezember 2007
Beiträge: 9245
|
Saddy schrieb: Auszug aus der menu.lst:
title Ubuntu 8.10, kernel 2.6.27-9-generic
root (hd1,0)
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=b8116d40-b60a-48bf-a387-e525095c44f7 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
Du kannst mal probieren anstatt der UUID's die direkte Device-Angabe zu nutzen, also bei Dir:
title Ubuntu 8.10, kernel 2.6.27-9-generic
root (hd1,0)
kernel /boot/vmlinuz-2.6.27-9-generic root=/dev/sdb1 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
|
oliuntu
Anmeldungsdatum: 17. Dezember 2006
Beiträge: 950
|
kaputtnik schrieb: Du kannst mal probieren anstatt der UUID's die direkte Device-Angabe zu nutzen, also bei Dir:
title Ubuntu 8.10, kernel 2.6.27-9-generic
root (hd1,0)
kernel /boot/vmlinuz-2.6.27-9-generic root=/dev/sdb1 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
Halte ich für keine gute Idee, da die /dev/sdX nicht mehr eindeutig auf ein Device zeigen und ständig vertauscht werden. Aber das könnte dir helfen:
Hier die Bastelanleitung, in Englisch: Howto create a super grub based boot CD, which starts with a device
selection menu and boots a specific linux kernel on a specific
partition: file menu_beauman.lst: # This file is originally from the super grub iso image.
#
# *** Beauman edit for direkt kernel boot with device selection menu ***
#
#
# Unpack the bzip2 file with your filemanager.
#
# Mount the iso-image supergrubBeauman.iso with gmount-iso.
#
# Create a new directory supergrub and copy all files from the mounted CD/image into this folder.
#
# In this folder edit the file supergrub/boot/grub/menu_beauman.lst
#
#
# Edit the commands at the bootom of this file:
#
# Please adjust your partition at the bottom of this file in the command
#
# root ($(out_hd),5)
#
# (This command would set the partition to /dev/sdc6, if the device is sdc)
#
# Open a terminal.
#
# Get the UUID for the partition that your installation contains
#
# For example:
#
# sudo blkid /dev/sdc6
#
#
# If you don't know the device and partition you can mount the device with your file browser
# and say
#
# mount
#
# in the terminal. If it would be mounted under "/media/ubunturocks", the
# output of mount would be something like
#
# /dev/sdc6 on /media/ubunturocks type ext3 (rw,nosuid,nodev,uhelper=hal)
#
# Please adjust your kernel and initrd file respectively!
#
# If you don' t know the kernel say
#
# ls /media/ubunturocks/boot/
#
# Edit the lines at the bottom of this file and save it.
#
# Then you have to generate your boot cd which fits your partition and kernel:
#
#
# cd to the folder "supergrub", that you just created.
# Go one dir up
#
# genisoimage -R -b boot/grub/stage2_eltorito -input-charset iso8859-1 -V "SUPERGRUBBEAUMANEDIT" -no-emul-boot -boot-load-size 4 -boot-info-table -o supergrubBeauman.iso supergrub
#
# Burn supergrubBeauman.iso
#
# Boot from cd and see whats happening! Greetz, beauman
#
# See also:
# http://www.supergrubdisk.org
# http://users.bigpond.net.au/hermanzone/SuperGrubDiskPage.html#How_To_Build_a_Super_Grub_DiskGParted
# http://forum.ubuntuusers.de/topic/grub-unabhaengig-von-physikalischer-position-/
#
#
# ToDo:
#
# If there would be commands like "selectPartionion" (which would return the partition number and UUID) and
# "selectKernel" this boot manager configuration would work for all devices.
#
title |=> Super Grub Beauman Edit: Start Kernel directly <=|
set choose_title="Select the device with your linux installation:"
selecthd
###
##
#
# root ($(out_hd),5)
# Das Greaetemapping wird jetzt von selecthd angezeigt und liefert das ausgewaehlte geraet in "out_hd" zurueck
#
# Leider ist hier noch die Stickpartition absolut. Sprich die "5" im Befehl "root ($(out_hd),5)"
#
# Auch der Kernel ist muss angepasst werden!
#
##
###
root ($(out_hd),5)
kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=4ac9f56c-984a-438d-ae06-b44ad09d1540 ro quiet splash noapic
initrd /boot/initrd.img-2.6.24-19-generic
quiet
boot
War hier versteckt: http://forum.ubuntuusers.de/topic/grub-unabhaengig-von-physikalischer-position-/
|
ditsch
Anmeldungsdatum: 13. November 2005
Beiträge: 12007
Wohnort: Schönbrunn
|
Saddy schrieb: Hallöchen, ich habe ein unregelmäßiges Problem beim Booten, und zwar erscheint (hier fast immer) beim Booten in den aktuellen Kernel die Meldung
Gave up waitung for root device...
/dev/disk/byuuid/b8116d40-b60a-48bf-a387-e525095c44f7
Der Pfad existiert wirklich nicht, da ein - fehlt (/dev/disk/by-uuid/...). Oder ist das nur ein Schreibfehler?
|
kaputtnik
Anmeldungsdatum: 31. Dezember 2007
Beiträge: 9245
|
oliuntu schrieb: kaputtnik schrieb: Du kannst mal probieren anstatt der UUID's die direkte Device-Angabe zu nutzen, also bei Dir:
Halte ich für keine gute Idee, da die /dev/sdX nicht mehr eindeutig auf ein Device zeigen und ständig vertauscht werden.
😳 War gestern n bisschen spät geworden 😉 Wäre Interessant zu wissen, obs beides SATA oder IDE oder ne Mischung ist. Wenn ich bei mir zusätzlich zum SATA-Anschluß noch ne IDE-Platte anstecke, werden die device-Angaben auch vertauscht und die IDE wird zu sda, egal welche Einstellungen im Bios drinstehen. Allerdings bootet das System, anders als bei Saddy, trotzdem Einwandfrei, da die UUID's nicht vertauscht werden. Von dem gleichen Problem habe ich hier schon öfter mal gelesen.
|
Saddy
(Themenstarter)
Anmeldungsdatum: 2. Mai 2006
Beiträge: 1148
|
ditsch schrieb: Der Pfad existiert wirklich nicht, da ein - fehlt (/dev/disk/by-uuid/...). Oder ist das nur ein Schreibfehler?
Oh, entschuldigung, das ist ein Schreibfehler 😀 und dahinter habe ich auch "does not exist" vergessen was ja auch wichtig sein könnte. Es ist tatsächlich eine Mischung aus IDE/SATA Festplatten; und zwar ist die Linux ext3 Platte SATA und alle anderen sind IDE (wenn ich das noch recht in Erinnerung habe). Spielt das eine entscheidende Rolle? @oliuntu:
So eine Boot-CD ist doch bestimmt sehr langsam und müsste dann für jedes Kernel-Upgrade neu geschrieben werden, richtig? Ich habe jetzt mal spaßeshalber für groot in der menu.lst auch die uuid vergeben also
## default grub root device
## e.g. groot=(hd0,0)
# groot=b8116d40-b60a-48bf-a387-e525095c44f7
sodass der Booteintrag nach update-grub nun so aussieht
title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid b8116d40-b60a-48bf-a387-e525095c44f7
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=b8116d40-b60a-48bf-a387-e525095c44f7 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
quiet
Hat aber nichts gebracht - habe immernoch eine ~50% Chance dass der Boot klappt. Es fühlt sich so an, als hängt es davon ab, welches Device als erstes initialisiert wird...
|
oliuntu
Anmeldungsdatum: 17. Dezember 2006
Beiträge: 950
|
Saddy schrieb: @oliuntu:
So eine Boot-CD ist doch bestimmt sehr langsam und müsste dann für jedes Kernel-Upgrade neu geschrieben werden, richtig?
Dachte mehr an die Methode mit root ($(out_hd),5) die in dem Post erwähnt wird. Funktioniert das?
Hat aber nichts gebracht - habe immernoch eine ~50% Chance dass der Boot klappt. Es fühlt sich so an, als hängt es davon ab, welches Device als erstes initialisiert wird...
Ja, das ist der Kern des Problems.
|
kaputtnik
Anmeldungsdatum: 31. Dezember 2007
Beiträge: 9245
|
oliuntu schrieb: Saddy schrieb: Hat aber nichts gebracht - habe immernoch eine ~50% Chance dass der Boot klappt. Es fühlt sich so an, als hängt es davon ab, welches Device als erstes initialisiert wird...
Ja, das ist der Kern des Problems.
Aber die Reihenfolge der Initialisierung sollte doch eigentlich keine Rolle spielen, denn genau dafür sind ja die UUID's ja geschaffen worden. Fehlerhaft ist die Zuordnung von UUID und Device. Die UUID wird ja auf der Festplatte gespeichert ▶ http://forum.ubuntuusers.de/post/1721764/ und folgende Antworten. Demnach sollte es ein Problem des Kernels sein, der da was durcheinander schmeißt? Vllt sollte Saddy es mal mit einem älteren Kernel probieren?
|
oliuntu
Anmeldungsdatum: 17. Dezember 2006
Beiträge: 950
|
kaputtnik schrieb: Aber die Reihenfolge der Initialisierung sollte doch eigentlich keine Rolle spielen, denn genau dafür sind ja die UUID's ja geschaffen worden. Fehlerhaft ist die Zuordnung von UUID und Device. Die UUID wird ja auf der Festplatte gespeichert ▶ http://forum.ubuntuusers.de/post/1721764/ und folgende Antworten. Demnach sollte es ein Problem des Kernels sein, der da was durcheinander schmeißt?
Da hast du recht, sorry. Bei mir war es gestern auch etwas spät...
|
Saddy
(Themenstarter)
Anmeldungsdatum: 2. Mai 2006
Beiträge: 1148
|
@oliuntu:
Was genau ist hier die Variable/Welchen Teilstring soll ich durch sdb ersetzen? # root ($(out_hd),5)
#
# (This command would set the partition to /dev/sdc6, if the device is sdc)
Das wird hier irgendwie nicht ganz klar...
|
oliuntu
Anmeldungsdatum: 17. Dezember 2006
Beiträge: 950
|
Saddy schrieb: @oliuntu:
Was genau ist hier die Variable/Welchen Teilstring soll ich durch sdb ersetzen?
...
Das wird hier irgendwie nicht ganz klar...
Hoffentlich hab ich dich da nicht auf eine falsche Fährte gejagt, das sieht aus, dass das nur mit veränderten Live-System klappt. Hatte beim posten wenig Zeit und hab mich nicht richtig eingelesen.
|
kaputtnik
Anmeldungsdatum: 31. Dezember 2007
Beiträge: 9245
|
Evtll hängt das Problem mit diesem auf Launchpad zusammen:https://bugs.launchpad.net/ubuntu/+bug/284774 Saddy Welchen Kernel hast Du denn jetzt?
uname -r
|
Saddy
(Themenstarter)
Anmeldungsdatum: 2. Mai 2006
Beiträge: 1148
|
Heute hat es 10 Versuche gebraucht, bis der Rechner bootete.
Davon war 8x erfolglos der aktuelle Kernel (2.6.27-9-generic), 1x erfolglos der ältere Kernel und dann 1x erfolgreich der aktuelle Kernel. So ähnlich sa es auch aus, als der aktuelle Kernel noch nicht eingespielt war.
Aus https://bugs.launchpad.net/ubuntu/+bug/284774 geht hervor, dass das Problem seit Kernel 2.6.24-21 besteht. Ich hoffe das Problem ist bereits gemeldet? Ich werde jetzt meine menu.lst und fstab auf /dev/sdb1 bzw (hd1,0) anstelle der uuid's umstellen. Edit:
Ich sehe gerade, dass das wenig Sinn hätte, denn lustigerweise ist jetzt meine Konfiguration mal wieder umgedreht:
sudo blkid
/dev/sda1: UUID="b8116d40-b60a-48bf-a387-e525095c44f7" TYPE="ext3"
/dev/sdb1: UUID="1A5093135092F4AB" TYPE="ntfs"
/dev/sda2: UUID="d4bd4a19-8f56-4c0e-8e7a-742582df5577" TYPE="jfs"
/dev/sda5: TYPE="swap" UUID="91cdb49a-f28e-4ce2-b171-baf6c423f31d"
Gibt es eine Möglichkeit ein Device beim Boot zu verzögern, evtl. das Boot-Delay ändern oder so?
|
kaputtnik
Anmeldungsdatum: 31. Dezember 2007
Beiträge: 9245
|
Ich fasse die unterschiedlichen UUID/Device Angaben mal zusammen:
Saddy schrieb: sudo blkid
/dev/sda1: UUID="b8116d40-b60a-48bf-a387-e525095c44f7" TYPE="ext3"
/dev/sda2: UUID="d4bd4a19-8f56-4c0e-8e7a-742582df5577" TYPE="jfs"
/dev/sda5: TYPE="swap" UUID="91cdb49a-f28e-4ce2-b171-baf6c423f31d"
/dev/sdb1: UUID="1A5093135092F4AB" TYPE="ntfs"
Saddy schrieb: sudo blkid
/dev/sda1: UUID="1A5093135092F4AB" TYPE="ntfs"
/dev/sdb1: UUID="b8116d40-b60a-48bf-a387-e525095c44f7" TYPE="ext3"
/dev/sdb2: UUID="d4bd4a19-8f56-4c0e-8e7a-742582df5577" TYPE="jfs"
/dev/sdb5: TYPE="swap" UUID="91cdb49a-f28e-4ce2-b171-baf6c423f31d"
Jetzt wird das alles ein wenig klarer: Der Kernel(?) macht aus sda einfach sdb oder umgekehrt. Dabei werden die UUID's nicht mehr den richtigen Partitionen zugeordnet. Ich denke, das ist ein Programmfehler... und das Du das selber bei Launchpad melden solltest.
Gibt es eine Möglichkeit ein Device beim Boot zu verzögern, evtl. das Boot-Delay ändern oder so?
Keine Ahnung.
|
oliuntu
Anmeldungsdatum: 17. Dezember 2006
Beiträge: 950
|
kaputtnik schrieb: Jetzt wird das alles ein wenig klarer: Der Kernel(?) macht aus sda einfach sdb oder umgekehrt. Dabei werden die UUID's nicht mehr den richtigen Partitionen zugeordnet. Ich denke, das ist ein Programmfehler... und das Du das selber bei Launchpad melden solltest.
Falsche Fährte! Deshalb werden doch die UUIDs in der fstb und menu.lst verwendet. Das ist immer so und braucht nicht gemeldet werden. So viel ich weiß liegt das nicht am Kernel, sondern am BIOS. Die Frage ist doch wohl eher, WARUM Grub nicht versteht, wenn für Root eine UUID gesetzt wird, siehe hier Saddy schrieb: Ich habe jetzt mal spaßeshalber für groot in der menu.lst auch die uuid vergeben also
## default grub root device
## e.g. groot=(hd0,0)
# groot=b8116d40-b60a-48bf-a387-e525095c44f7
sodass der Booteintrag nach update-grub nun so aussieht
title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid b8116d40-b60a-48bf-a387-e525095c44f7
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=b8116d40-b60a-48bf-a387-e525095c44f7 ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic
quiet
Hat aber nichts gebracht - habe immernoch eine ~50% Chance dass der Boot klappt. Es fühlt sich so an, als hängt es davon ab, welches Device als erstes initialisiert wird...
Kann man eigentlich in die device.map eine UUID eintragen? Poste doch mal cat /boot/grub/device.map
|