Hallo Ronny,

On Thu, Jan 12, 2012 at 19:00:11 +0100, Ronny Seffner wrote:

> Gegeben ist ein Intelboard mit USB und FireWire, na beiden
> Schnittstellentypen stecken je eine externe Festplatte. Intern am SATA gibt
> es drei Festplatten. Das Betriebssystem (debian) hat nur eine Partition
> /dev/sda2, kein gesondertes /boot usw. Bootloader ist der grub 1,98 (also
> 2?) unter debian squeeze.

Und das Rootfilesystem ist auf einer der internen SATA-Platten?

> Steckt beim Anschalten die USB-Platte am Rechner, lädt das grub-Menü, ich
> kann in dessen "shell" verifizieren, dass die richtige Platte "vorn" ist und
> wenn ich den Kern starte erhalte ich ne Kernelpanic:
> 
> ... kernel panic - not syncing: vfs: unable to mount root fs on
> unknown-block(0,0) ...
> 
> Ohne USB-Platte alles kein Problem.

Eigentlich sollte Dich das initramfs in eine busybox-Shell schicken,
wenn es das Rootfilesystem nicht findet. Hast Du einen eigenen Kernel
ohne initramfs gebaut?

BTW, haben die extern ansteckenden Platten auch jeweils einen Bootloader
installiert?

> Die Idee: grub könnte die Platten ja anders sortiert sehen, als der zu
> startende Kern. Also habe ich mich für UUID entschieden. Das ging genau
> einmal und ich kann nicht sagen in welcher Konstellation, sagen wir also,
> das geht gar nicht.

Mich wundert, dass Squeeze das UUID-basierte mounten bei Dir nicht eh
per Default benutzt hat. Bei mir tut es das.

Wie sah es aus, wenn das Rootfilesystem mit der UUID-Methode nicht
gefunden wurde? Auch Kernel Panic?

> Nun möchte ich aber unbedingt trotz der USB-Platte das System starten können
> ohne manuell das USB-Kabel zu ziehen und nach dem booten wieder zu stecken.

Man koennte Einfluss auf die Erstellung des initramfs nehmen und
die Module fuer USB-Storage und Firewire-Storage dort blacklisten.

> Warum geht UUID aus dem grub nicht, in der fstab steht es doch auch
> schon?

Die fstab ist im initramfs noch gar nicht zugreifbar. Das initramfs soll
ja erst das Rootfilesystem finden und mounten, bevor es dann mit dem
eigentlichen init-Prozess weitergeht. Das initramfs kann sich nur an die
Kernel Commandline halten und die dort uebergebene UUID auf allen
Blockdevices suchen. Warum das bei Dir im Fehlerfall mit einer Kernel
Panic endet, ist mir unklar. Der Fallback ist wie gesagt eigentlich eine
Emergency Shell.

Gruss,
  Chris
-- 
Christian Perle                                    chris AT linuxinfotag.de
010111                                              http://chris.silmor.de/
101010                          LinuxGuitarKitesBicyclesBeerPizzaRaytracing

_______________________________________________
Lug-dd maillist  -  [email protected]
https://ssl.schlittermann.de/mailman/listinfo/lug-dd

Antwort per Email an