Kernel panic - booting from USB harddisk
spakyelj at xs4all.nl
Fri Oct 2 14:00:05 PDT 2009
Op Fri, 02 Oct 2009 01:38:29 +0200 schreef Baho Utot
<baho-utot at columbus.rr.com>:
> Hans Kaper wrote:
>> Op Thu, 01 Oct 2009 00:19:29 +0200 schreef Baho Utot
>> <baho-utot at columbus.rr.com>:
>>> J.P.Kaper wrote:
>>>> I am building LFS from book 6.4 on an ext3 logical partition of an
>>>> external USB harddisk.
>>>> My host system is SUSE 10.3 on one of my two internal harddisks.
>>>> Booting from the USB disk fails with
>>>> "[4.410067] Kernel panic - not syncing: VFS: Unable to mount
>>>> root fs on unknown-block (2,0)"
>>> I have done some more research on your problem.
>>> Try this
>>> in /etc/fstab for the USB disk
>>> UUID=6342a6b5-25cf-4d01-a318-68309d12ab5b / ext3 defaults 1 1
>>> change the blkid to the correct value based on
>>> $ blkid /dev/sdxx
>>> Are you trying to boot with grub on the USB drive?
>>> If so try changing /boot/grub/menu.lst kernel line like this
>>> kernel /boot/lfskernel-22.214.171.124 root=/dev/sdd1 rootdelay=15 ro quite
>>> change the /dev/sdd1 to the correct value for your USB drive
>>> If you have success then try to use UUID in the menu.lst file like this
>>> kernel /boot/lfskernel-126.96.36.199
>>> root=UUID=6342a6b5-25cf-4d01-a318-68309d12ab5b rootdelay=15 ro quite
> It looks like grub or the kernel can give the kernel panic about not
> I like to use UUID or LABEL in grubs menu.lst file.
> Grub can process UUID of LABELs and it makes sure that the
> that you are trying to boot doesn't change or get mixed up. ( It keeps
> me from getting mixed up
> trying to keep "whos bootin from here to where ?" straight )
> After you can successfully load/execute the kernel, and grubs done it's
> I think the kernel can not locate its root file system and barfs giving
> the kernel panic.
> I have found that UUID or LABELs in /etc/fstab gives you the kernel
> panic because the kernel can not process UUID or LABELs
> without using a initrd as udev has not been started. So you need to use
> /dev/sdx there.
> title LFS 6.5 - USB
> root (hd0,0)
> kernel /boot/lfskernel-188.8.131.52 root=/dev/sdd1 rootdelay=15 ro quite
> That makes the USB tied to that PC :(
> If you need it to boot on another PC you need to edit the grub line from
> the menu when grubs starts up or use an initrd.
> Hope this helps.
You are right. root=/dev/sdc8 works fine. root=UUID=......... fails with a
Grub-error 11: Unrecognized device string.
My intention was indeed to use LFS on the usb-disk on different computers.
Maybe I will try to build an initrd sometime, just as an exercise;
changing the Grub-line every time I change computers looks not very neat
to me. But as you have seen in the post from Danny Engelbarts, leaving out
the root= altogether is an even simpler solution.
I think we can close this thread now. I am very grateful for your
interest; your suggestions have brought me a good step further in
understanding the workings of Linux.
More information about the lfs-support