On 8 September 2010 18:36, Colin Watson
<cjwatson@debian.org> wrote:
OK. Now, hd0 and hd1 names are not guaranteed to be consistent even
between different boots of the same device. The 'set root' command is
just supposed to be a last-ditch fallback. The thing that's actually
supposed to set root is a 'search' command later in grub.cfg, which
should be finding the root device by filesystem UUID.
Okay, I was wrong about the symptoms. I just had to re-install, so I could check this out again, and GRUB actually does find the initrd just fine. It's actually the line:
linux /boot/vmlinuz-2.6.32-5-486 root=/dev/sdb1 ro quier
The problem is that the target FS is /dev/sdb1 when the USB installer is plugged in, but when it's just the flash disk, it's /dev/sda1. I can fix this to be /dev/sda1, boot into the system and run
grub-mkdevicemap
update-grub
...and the offending line becomes:
linux /boot/vmlinuz-2.6.32-5-486 root=UUID=fa9a0d.... ro quiet
So could the installer do this in the first place? That is, create the GRUB menu entry to use the UUID instead of an arbitrary device node?
- Jason