[Gelöst] Wheezy bootet nicht von USB-Laufwerk

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

[Gelöst] Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 13.05.2013 14:45:24

Hallo,

habe mein System zweimal auf 2 USB-Festplatten gesichert und diese Kopien per unison-gtk aktuell gehalten. Und konnte bisher auch ohne Probleme von diesen booten.

Leider funktioniert Letzteres seit Upgrade auf Wheezy nun nicht mehr. Bekomme stattdessen kernel panic:

Code: Alles auswählen

switch_root: can't execute /sbin/init No such file or directory
kernel panic - not syncing: Attemted to kill init!
Beide Laufwerke kann ich wie bisher normal einhängen und benutzen, Dateisystem ist XFS...

Wäre deshalb für jede Lösungshilfe dankbar.

Grüsse
Zuletzt geändert von eduard am 03.06.2013 09:59:09, insgesamt 2-mal geändert.

pferdefreund
Beiträge: 3800
Registriert: 26.02.2009 14:35:56

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von pferdefreund » 14.05.2013 06:02:48

Ist das wirklich die einzige Meldung - oder kommt da vorher nicht noch was mit filesystem oder so ? Ist eventuell xfs nicht mehr in der initrd ? - Genau für diese Zwecke mach ich mir grundsätzlich meine Kernel selbst und packe alles fest rein, was zum booten gebraucht wird - da hab ich nie Ärger mit initrd vergessen usw... Ich hasse die initrd.

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 14.05.2013 15:15:14

Danke erstmal für Deine Antwort.
Ist das wirklich die einzige Meldung - oder kommt da vorher nicht noch was mit filesystem oder so ?
Nein/ja, manchmal meckert Grub2 vorher auch noch "error: unknown file system", allerdings dies auch, wenn ich von der eingebauten FP boote und da klappt's dann ja immer trotzdem. Und wie gesagt, auf sdb/sdc befindet sich ja jeweils eine komplette Kopie, also auch der initrd -.(?)

Äh, sag' mal, hältst Du es deshalb für möglich, dass der/die USB-Treiber just zu dem Zeitpunkt (noch) nicht geladen sind? Früher half da ja mal die Option 'timeout sec" - aber gibt's die bei Grub2 überhaupt noch? Und wenn ja, wo kann man die dann setzen?

Nein, eigentlich mag ich den initrd-"Kram" auch nicht, brauche auf dieser Maschine jedoch keine speziellen Treiber und benutze deshalb aus reiner Bequemlichkeit einfach den fertigen Debian-Kernel. ;-) - Überlege aber nun, ob ich mich doch auch mal ranmachen soll/muss, selbst einen zu konfigurieren...

Gruesse

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 18.05.2013 10:58:46

Hallo nochmal,

habe inzwischen probiert, experimentiert, im Netz gesucht... und wieder probiert, auch mit Supergrubcd, im Bios... noch und nöcher, auch 'nen eigenen Kernel mit USB, XFS, scsi... fest einkompiliert gebaut - aber alles umsonst :(

Bzw., was ich meine herausgefunden zu haben, dass zwar der Kernel von der USB-FP geladen wird, der aber nicht in das System dort 'hineinkommt' - (??)
Aber wie kann das sein, woran kann das liegen?! - Ich kann beim besten Willen keinen Unterschied feststellen zwischen den beiden Systemen -.

Da mir aber die Möglichkeit, auch von USB booten zu können, nach wie vor ziemlich wichtig ist, ich die wirklich gern wiederhätte,

bitte ich hiermit noch einmal sehr um Hilfe. (!)

Grüsse

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 21.05.2013 14:43:51

Da ich mir überhaupt nicht vorstellen kann, dass hier niemand etwas zu meiner obigen Problematik zu sagen weiß, frage ich mich natürlich, warum ich fast keine Antwort bekommen habe/bekomme -

hab' ich irgendwas falsch gemacht?

Bitte sagt mir dann doch das wenigstens - damit ich nicht weiterhin so völlig ratlos hier herumhocken muss.

pferdefreund
Beiträge: 3800
Registriert: 26.02.2009 14:35:56

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von pferdefreund » 21.05.2013 19:06:33

Man bräuchte mal ne konkrete Fehlermeldung - im Notfall Handy-Foto vom Bildschirm.
Ist wirklich alles zum Start im Kernel - Chipsatz für SATA ? - hatte ich auch mal vergessen

1GENNADIY
Beiträge: 377
Registriert: 21.09.2007 11:26:13
Wohnort: Mönchengladbach

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von 1GENNADIY » 23.05.2013 08:44:46

Hallo!

Mir wäre es auch interessant, weil ich meine Installationen von USB-Festplatten und Sticks benutze.

MfG, Gennadiy

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von NAB » 24.05.2013 02:41:04

hmmm ... also ich hab hier bisher nicht geantwortet, weil ich keine Ahnung habe, was "unison-gtk" ist und keine Lust habe, das nachzugucken. Aber wenn er ein schlichtes Backup anlegt ...
eduard hat geschrieben:Bzw., was ich meine herausgefunden zu haben, dass zwar der Kernel von der USB-FP geladen wird, der aber nicht in das System dort 'hineinkommt' - (??)
Aber wie kann das sein, woran kann das liegen?! - Ich kann beim besten Willen keinen Unterschied feststellen zwischen den beiden Systemen -.
... dann ist es mir eh ein Rätsel, wie das vorher funktioniert haben soll.
Sowohl Grub als auch die fstab basieren inzwischen auf UUIDs, und selbst wenn du feste Pfade verwendest, sind die zwischen Festplatte und USB-Platte unterschiedlich, ein so 1:1 kopiertes System kann also nicht laufen. bzw. würde, wenn du von USB-Platte bootest, bestenfalls noch der Grub dort den Kernel von der USB-Platte laden und danach das root-Dateisystem von der internen Festplatte einbinden.

Eventuell ist genau das bisher auch passiert, und funktioniert jetzt nicht mehr.

Eventuell liegt das daran, dass auf den USB-Platten noch der alte Grub-Loader vorhanden ist, während die Konfigurationsdateien von Grub inzwischen den neuen Grub aus Wheezy erwarten.
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 24.05.2013 12:20:33

Hallo NAB, danke natürlich auch erstmal für Deine Antwort.

"Description-de: Ein Datei-Synchronisierungsprogramm für Unix und Windows mit GTK+-Oberfläche Unison ist ein in Ocaml geschriebenes Dateisynchronisationswerkzeug für Unix und Windows. Es ermöglicht den Abgleich zweier auf
unterschiedlichen Rechnern (oder unterschiedlichen Platten eines Rechners) befindlicher, unabhängig voneinander geänderter Kopien einer Gruppe von Dateien und Verzeichnissen. Er erfolgt durch Übertragung der Änderungen einer jeden Kopie auf die andere."...

Jo', das ist Unison(-gtk) und ich benutze das schon seit Jahren immer wieder gern zum (auch gezielten Teil-) Sichern.

Aber okay okay, Asche auf mein Haupt, habe mit "..keinen Unterschied feststellen zwischen den beiden Systemen" nicht wirklich korrekt dargestellt, denn natürlich habe ich z.B fstab mit der entsprechend anderen UUID für / drin stets von der Synchronisierung ausgenommen. (Dachte quasi, das verstünde sich von selbst :? )
'update-grub' mit der/den eingehängten USB-FP/'s laufen gelassen brachte mir dann schon mal immer im Grub-Menü von sda die Option/en, auch von sdb/sdc zu booten. Und ja, doch, ich war dann auch immer tatsächlich in den Systemen auf letzteren.
Und nach update-grub dann dort hatte ich auch in deren Grub-Menüs die Möglichkeit, beliebig zu booten, also sogar sda von sdb/sdc... oder sdb von sdc..
Die Programmdateien von Grub habe ich dagegen natürlich mit aktualisiert und den Bootloader auf sdb/sdc per entsprechendem grub-install /dev/sdb(c) erneuert.
Tja, wie gesagt, hat immer prima funktioniert - früher, vor Wheezy... :? :(

Jedenfalls, die 'einfachste' Methode diesbezüglich, also von sda mit deren Kernel, aber mit root=-Eintrag in deren grub.cfg nach (z.B.) sdb in das System dort zu kommen, müsste doch zumindest funktionieren, ganz egal, ob bzw. was da mit Grub ist - oder?

Grüße

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 24.05.2013 17:11:20

Also - je mehr ich versuche besser durchzublicken, umso mehr erreiche ich das genaue Gegenteil davon:

Wenn ich diesen (per update-grub erzeugten) Eintrag

Code: Alles auswählen

menuentry 'Debian GNU/Linux (jessie/sid)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-ea7a4fac-9d0b-43c5-8f99-1af279f8fece' {
	savedefault
	insmod part_msdos
	insmod xfs
	set root='hd1,msdos3'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos3 --hint-efi=hd1,msdos3 --hint-baremetal=ahci1,msdos3 --hint='hd1,msdos3'  ea7a4fac-9d0b-43c5-8f99-1af279f8fece
	else
	  search --no-floppy --fs-uuid --set=root ea7a4fac-9d0b-43c5-8f99-1af279f8fece
	fi
	linux /boot/vmlinuz-3.9.2 root=/dev/sdb3 ro
im Grub-Menü von sda so benutze, bekomme ich wieder kernel panic, weil er angeblich das root fs nicht mounten kann. Wobei die UUID die von sdb ist. Editiere ich dort aber

set root='hd1,msdos3' nach hd0,

läuft's, trotz "error: unkwon file sytem" vorher, hoch und/aber - in das System auf sdb. Da 'fdisk -l' eingegeben bekomme ich aber 'normal' die eingebaute FP als sda und die USB als sdb aufgelistet, obwohl sdb als root gemountet ist, wie gesagt...

8O 8O

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von NAB » 25.05.2013 05:15:22

eduard hat geschrieben:Dachte quasi, das verstünde sich von selbst :?
Ach, wenn hier jeder alles von selber verstehen würde, dann müsste ja keiner was fragen und wir könnten in aller Ruhe über Windows lästern ;)

Aber gut, jetzt habe ich schon mal wesentlich besser verstanden, was du da treibst. Und da wir uns einig sind, dass eine 1:1-Kopie sowieso nicht laufen kann, ist es ja um so interessanter, welche Veränderungen du durchführst, um es zum Laufen zu kriegen. Das hast du uns bisher verschwiegen.
eduard hat geschrieben:Wenn ich diesen (per update-grub erzeugten) Eintrag im Grub-Menü von sda so benutze, bekomme ich wieder kernel panic, weil er angeblich das root fs nicht mounten kann. Wobei die UUID die von sdb ist.
Welche UUID? Die "ea7a4fac..."
Weißt du ... ich bin alles andere als ein Fachmann für Grub2, aber sowas:

Code: Alles auswählen

if [ x$feature_platform_search_hint = xy ]; then
     search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos3 --hint-efi=hd1,msdos3 --hint-baremetal=ahci1,msdos3 --hint='hd1,msdos3'  ea7a4fac-9d0b-43c5-8f99-1af279f8fece
   else
     search --no-floppy --fs-uuid --set=root ea7a4fac-9d0b-43c5-8f99-1af279f8fece
   fi
habe ich noch nie in einer grub.cfg gesehen. Und Sinn macht das für mich auch nicht - was zur Hölle ist "feature_platform_search_hint"? . Das will allerdings nicht viel heißen, denn eine kurze Anfrage bei Google hat ähnliche grub.cfg zu Tage gefördert. Aber in einer Sache bin ich mir recht sicher: würde eine der beiden if-Zeilen erfolgreich ausgeführt werden, so hätte das hier
eduard hat geschrieben:Editiere ich dort aber
set root='hd1,msdos3' nach hd0,
läuft's
keinen Erfolg, denn der search --set=root Befehl würde dein "root=" überschreiben. Also entweder stimmt die UUID nicht, oder das gesamte if-else-Konstrukt wird nie ausgeführt.

Ansonsten bestimmt dein BIOS, was jetzt gerade hd0 und hd1 ist. Nur weil du von der internen Festplatte bootest, muss die noch lange nicht hd0 sein ... das lässt sich je nach BIOS mit dessen Bootmenü übergehen. Darum ja die Sache mit den UUIDs.
eduard hat geschrieben:und/aber - in das System auf sdb. Da 'fdisk -l' eingegeben bekomme ich aber 'normal' die eingebaute FP als sda und die USB als sdb aufgelistet, obwohl sdb als root gemountet ist,
Okay, du bootest von der internen Festplatte (sda), die Festplattenreihenfolge ist nicht mehr so, wie Grub sie gerne hätte, die UUIDs funtionieren nicht, du willst in die USB-Platte (sdb) booten, schaffst das auch, und von dort sagt dir Linux, dass es die interne Festplatte mit der Bezeichnung sda versehen hat und die USB-Platte mit sdb. Öhm ... wo ist das Problem? (Außer dass die UUID-Einträge in Grub nicht funktionieren)
eduard hat geschrieben:

Code: Alles auswählen

linux /boot/vmlinuz-3.9.2 root=/dev/sdb3 ro
Warum brichst du hier ab? Da fehlt doch noch was.
Und warum nimmt er hier keine UUIDs mehr?
Und der Kernel 3.9 ist selbstgebacken, oder?
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

eduard
Beiträge: 9
Registriert: 10.11.2011 14:03:20

[Gelöst]Re: Wheezy bootet nicht von USB-Laufwerk

Beitrag von eduard » 01.06.2013 12:25:32

Falls es noch interessieren sollte:

Booten von USB geht jetzt wieder. - :D
Jou, war zumindest zur Hälfte mein Bockmist. Da lib64 früher ja "nur" ein Link auf lib war, hatte ich das gar nicht in meiner unison-Liste und beim Abgleich der notwendigen System-Verzeichnisse auch nicht in dem Behältnis da an meinem oberen Ende. Aber nun ist das ja ein eigenständiges System-Verzeichnis mit drei Links drin letztlich alle auf /lib/x86_64-linux-gnu/ld-2.17.so und die ist ja wohl für die Initialisierung unbedingt...

Jedenfalls, weil die inzwischen von 2.13(?) auf eben 2.17 updated worden war, zeigten die drei Links natürlich ins Nirwana... mit dem ebenso natürlichen Ergebnis "switch_root: can't execute /sbin/init No such file or directory" beim Boot-Versuch.

Aber okay, hat ja immer auch was Gutes, nämlich, wieder Wichtiges dazugelernt zu haben.

Und - habe so auch noch was anderes sehr Nützliches gefunden: den Kernelparameter 'rootwait' nämlich. Der ist nämlich 'äußerst hilfreich' beim Booten von USB-LW's mit Kernel ohne initrd, also mit fest eingebauten u.a. usb-storage. Denn letzterer ist dann quasi zu langsam, jedenfalls noch nicht aktiv, wenn er bereits gebraucht wird, um root fs mounten zu können, was dann eben "kernel panic - not syncing: VFS: Unable to mount root fs on unknown block..." produziert.
"linux /boot/vmlinuz-x.x.x root=/dev/sdxx ro rootwait" verzögert offenbar den Prozess im genau richtigen Maße, dass dann alles einwandfrei... hier jedenfalls klappt das auf meinen beiden Kisten mit 3.8.2 bzw. 3.9.2 hundertpro. :D

Was mir jetzt allerdings noch fehlt, ist, den Parameter per update-grub in die grub.cfg und dies auch noch an den richtigen Stellen, nämlich natürlich nur für die USB-Systeme, eingetragen zu kriegen. Denn das immer wieder händisch nach z.B. jedem Kernelwechsel machen zu müssen, ist ja nicht "so das Gelbe vom Ei", oder?

@edit: Habe die Lösung dazu schon gefunden: In /etc/grub.d/30_os-prober nach linux ${LKERNEL} ${LPARAMS} suchen und dort rootwait anhängen, also:
linux ${LKERNEL} ${LPARAMS} rootwait
Funktioniert hier prima. :D (Hier gefunden: http://forum.ubuntuusers.de/post/2800533/ Danke.)

Habe somit doch immer noch "Beratungsbedarf", hier...(?) :wink:

Grüße

Antworten