Update, September 2016:
I’m leaving a tl;dr-ified version of the article up, but please note that I have no idea whether this procedure still works. Or whether it’s still relevant.
You might encounter a strange error message when trying to boot Arch from a USB drive:
Boot device didn't show up after 30 seconds
Arch then drops you to an initramfs shell, without any hint to what you should do. Here’s the hint.
Step 1: you need to know what device name Arch expects. It’ll be something along the lines of /dev/disk/by-label/ARCH_something
and Arch should display it right before the error message. Write this down somewhere!
Step 2: you need to figure out what block device your USB drive has been assigned to. USB flash drives are managed by the SCSI subsystem for some reason, so you’ll need to use this command to get a list of all allegedly-SCSI drives on your system:
cat /proc/scsi/scsi
Take whatever CD drives (scd*
) are there out of the picture and look at which position your USB drive occupies. For example, if it occupies the second position, it’ll probably be /dev/sdb1
. For the third, it probably is /dev/sdc1
.
Step 3: type the following command:
ln -sf [usb-device] [arch-device]
Replacing [usb-device]
with the USB drive’s blockdevice (e.g. /dev/sda1) and [arch-device]
with the device Arch expects.
Step 4: hit Control-D.
OMFG I LOVE YOU SO MUCH
Thanks man!!!
Very good. Thank you.
Is there a permafix for this?
Thanks so much! Why is this still happening two years after you shared this fix?
Still happening six years later.
What do i write in [arch-device], sorry i don´t know english, I’m from Ecuador
Perfect man. Really useful
That was really helpful!. Consider adding it to the wiki?
I would if I knew how the Arch Wiki was organized. Feel free to add it yourself.
Excellent. That got me past the error message.
Thank you for sharing this very useful information.
Thanks A LOT man! helped me out real much!