Bug#357272: USB /dev/sda comes too late
I am trying to boot a notebook from an external USB harddisk with
grub, a debian 18.104.22.168 kernel and an initrd generated with
The kernel boots, but then does not find it's root partition. It says
that /dev/sda1 does not exist, and opens an emergency shell. Right
after the shell prompt appears the kernel prints to have found
/dev/sda* partitions. From the shell the partition exists.
So it seems to be a timing problem. the initrd seems to be finished
and trying to pass the control over to the /root partition before the
kernel has found the partitions on the USB device. USB partitions
seem to simply come too late.
Could the init script in the initrd check for existence of the root
partition, and if not, maybe wait for 1 or 2 seconds and check again
(maybe repeat this step 5 times)?