Find the answer to your Linux question:
Results 1 to 2 of 2
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    How to force USB boot to /dev/sda?


    I have a custom linux environment with a 2.6 kernel downloaded from with a simple busybox shell as init. The system boots off a USB flash drive with root=/dev/sda with lilo, and it works perfectly when it's alone with no other SATA drives.

    However, once I connect a SATA drive to the PC, from the bootup logs, it seems that the SATA drive is detected as sda, and the USB flash drive is detected as sdb, so I get a kernel panic with the following message

    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)
    Pid: 1, comm: swapper Not tainted 2.6.37 #37
    This is despite setting the boot order to boot from USB drives before SATA drives.

    If I try to append the root=/dev/sdb boot option in LILO, I get a different kernel panic:

    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,16)
    Pid: 1, comm: swapper Not tainted 2.6.37 #37
    How do I get force the USB drive to be /dev/sda so that it boots up correctly?

  2. #2
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    This is a known issue with Linux - changing drive configurations changes the /dev ID's of the visible drives. There are two solutions. One is to use the UUID of the drive/file-system, and the other is to label the file system and use that in your /etc/fstab.
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts