Vladimir 'φ-coder/phcoder' Serbinenko wrote:
On 12.06.2011 04:28, Bruce Dubbs wrote:
I'm trying to manually run grub-mkconfig to establish grub-1.99
installation instructions for Linux From Scratch.
I am getting:
grub-mkconfig -o /boot/grub/grub.cfg
/usr/sbin/grub-probe: error: cannot stat `/dev/root'
Doing some investigating grub-mkconfig is running:
/usr/sbin/grub-probe --target=device /
Drilling down, grub-probe is doing:
device_name = grub_guess_root_device (path);
Which in turn is doing:
grub_find_root_device_from_mountinfo( "/", NULL );
This is reading /proc/self/mountinfo. The problem here is that this
file does not give the device, but specifies /dev/root:
13 1 8:15 / / rw,relatime - ext3 /dev/root
rw,errors=continue,barrier=0,data=writeback
The kernel is 2.6.39.1, but 2.6.37 seems to give the same thing.
grub-probe should be able to detect /dev/sda15, but fails on newer
kernels.
grub-probe for grub-1.98 works fine. A grep there shows no use of
/proc/self/mountinfo.
Suggestions?
update either udev or grub. normally /dev/root should be a symlink.
Newer grub-probe can cope with some other arrangements as well
Well I'm using udev-171. That is the most recent version. We don't
like to non-release package versions in LFS, but we do occasionally
patch files.
I don't know when /dev/root became a 'device'. Udev doesn't create it.
We also don't use an initrd. That's not needed when you know in
advance what your hardware configuration is.
I did work around the problem by manually creating the symlink. I do
not know of anything other than GRUB that needs it, but I don't use lvm.
In any case, I don't think GRUB should choke because /dev/root is missing.
-- Bruce
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel