Guten Morgen,
> Wie sieht die grub.cfg aus. Bist Du sicher, daß genau die genommen wird
> vom Grub?
>
Ich schränke mich mal auf einen Eintrag ein, genügt das?
menuentry 'Debian GNU/Linux, with Linux 3.1.6' --class debian --class gnu-linux
--class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos2)'
search --no-floppy --fs-uuid --set c9d2cdd1-d4c7-48f3-a381-2cd26977983a
echo 'Loading Linux 3.1.6 ...'
linux /boot/vmlinuz-3.1.6 root=/dev/sda2 ro quiet
}
Sicher bin ich mir, da man im Bootloader mit "e" in den edit-Modus gelangt, wo
der Eintrag genauso aussieht.
> Ah, und woher kennt der Kernel das rootfs? Von seiner commandline, oder?
> Und ich glaube, dort kannst Du nur device-Namen, keine UUIDs oder
> ähnliches angeben. Jedenfalls nicht, wenn Du keine initrd hast, die
> diese in Gerätenamen umsetzt und dann das Device mounted.
>
Korrekt, im Bootloader steht als Parameter "root=UUID=xxx". Ihr meint also, der
UUID und LABEL support kann nur mit initramfs funktionieren, da diese Code
enthält, die UUID oder LABEL in /dev/irgendwas übersetzt, womit der Ken
umgenehn kann. Wahrscheinlich stimmt das sogar, denn ein Distributionskern mit
initrd hat auf dem betroffenen System kein Problem per UUID zu booten.
Ich kann also bei einem monolitischen Kernel (also ohne Modulsupport und ohne
initrd) kein UUID oder LABEL verwenden. Ferner scheint also der USB-Treiber vor
dem für SATA im Kern aufgerufen zu werden und somit könnte man mutmaßen, dass
die USB-Platte /dev/sda wird und SATA nach hinten rutscht.
Die Frage ist nun kann man in meiner Art Kern den USB-Stack zeitlich hinter den
SATA-Stack legen?
> > > Wie sah es aus, wenn das Rootfilesystem mit der UUID-Methode nicht
> > > gefunden wurde? Auch Kernel Panic?
> > Ja. Egal ob UUID oder normales /dev/sda2 gibts das gleiche Verhalten.
> Und Du bist sicher, daß er schon Treiber geladen hat? Auf der Konsole
> ist zu sehen, daß die Partitionen gefunden wurden?
Ich kann hier jetzt nicht folgen. Wer hat Treiber geladen, der Bootloader
offenbar, denn er findet ja den Kern zum Starten. Der Kern wohl auch, weil es
keine Module oder initrd gibt und ohne USB-Device bootet dieser ja anstandslos.
Von welcher Konsole redest Du jetzt, zu welchem Zeitpunkt?
> Wenn Du eh einen eigenen Kernel baust, dann kannst Du dafuer
> sorgen, dass der Support fuer USB-Storage und Firewire-Storage nicht
> fest im Kernel-Image drin ist.
>
Könnte, das will ich aber gar nicht. Keine Module, keine initrd.
> Warum baust Du ueberhaupt einen eigenen Kernel?
Das sollte ich mir wohl mal frisch beantworten ...
Ich mag keine Module, da die ja theoretisch nachträgliche Manipulation des
Kernels ermöglichen. Ich will nur das, was ich wirklich benötige, nicht mehr,
da ich mir so Fehlerpotential reduziert erwarte.
Offenbar gibt es noch eine UUID-ohne-initrd Lösung, hat die schon mal wer
exerziert?
http://www.linux-archive.org/gentoo-user/481167-mounting-root-partition-uuid-no-initrd-needed.html
Mit freundlichen Grüßen / Kind regards
Ronny Seffner
--
Ronny Seffner | Alter Viehweg 1 | 01665 Triebischtal
www.seffner.de | [email protected] | +49 35245 72950
_______________________________________________
Lug-dd maillist - [email protected]
https://ssl.schlittermann.de/mailman/listinfo/lug-dd