I am booting a RPI3 B Plus via USB from an mSATA drive (using the Desktop Pi enclosure). This works fine. My kernel command-line uses the partition UUID to identify the root partition:
root=PARTUUID=xxx
When, at boot time, an additional USB stick is present (which is DOS-formatted and entirely empty)
- if the second device is plugged in right below the boot disk (boot disk top-right USB port, if looked at from the outside, and second disk bottom-right), the device boots.
- if the second device is plugged in on the left side (either top or bottom slot), the device does not boot. In this case, the green LED never even flashes once.
Why is that? Is it possible that the left USB ports are being consulted by the boot loader before the right ones, and the bootloader doesn't bother to look further if it already found a device even if it is not bootable? Because if I copy /boot/*
to the root of the second USB device, it does boot again, even if plugged in on the left side.
If so, I'd consider that a bug. Or what am I getting wrong / should be doing differently?
sudo blkid
- does/dev/sda1
have the same PARTUUID as/dev/sda2
for example? If so, perhaps the boot process sees the PARTUUID "prefix" is correct on the first disk it sees (the USB disk) and figures the it has the right disk (makes sense to me) - do/dev/sda
and/dev/sdb
(i.e. the whole disk) have the samePTUUID
? (runsudo blkid /dev/sda /dev/sdb
to see this if it's not shown in the above command)