On 21/10/2007, Les Mikesell <lesmikesell@xxxxxxxxx> wrote: > > > All that matters is what the GRUB root device is, > > how it is defined via device.map and the BIOS disk numbering scheme, > > and where it is mounted (!) when you access the files on it. As long > > as it's mounted on the /boot mount-point, referring to a "root > > directory" is misleading. > > Where (or even if) the OS sees the partition is not relevant to grub, > but it is very relevant to someone who wants to modify the grub > configuration, kernel, or initrd files. This is the missing piece in > the documentation, especially if you move away from the /boot partion > convention, want to have multiple copies, etc. On this list, the attempts at writing better documentation have not been fruitful so far. Especially if you make /boot a mount-point. Step back to playing with GRUB's "find" command to understand how it accesses files on partitions based on absolute paths. If you really want to fill a hole in the docs, be much more explicit in explaining the difference between a normally mounted /boot partition and what it means when GRUB mounts the same partition to accesses the fs on it. When trying to make it clearer, expand the examples with the following case and put into words why the files have a different path in grub.conf: title Another Linux root (hd0,0) kernel /d5/vmlinuz ro root=/dev/sda5 quiet 3 initrd /d5/initrd.img To avoid emphasis on the Linux kernel's root= parameter, it would be better to either remove the parameters (imagine the kernel had them built-in or used a different method to read them, e.g. via initrd) or use a fs label like: title Fedora 8 (custom kernel) root (hd0,0) kernel /f8/vmlinuz ro root=LABEL=f8root rhgb quiet initrd /f8/initrd.img > > You can even make the GRUB root device a > > separate partition, but still store the kernel+initrd in a > > sub-directory. That is because GRUB doesn't care where a file is > > stored as long as it is told what the absolute path to the file is and > > what device to enable. > > Note that absolute paths have a leading / which we define as the root > directory. Every partition has a root directory if you put a fs like ext3 on it. That's why I've pointed out before that _where_ files are found depends on whether and where the fs is mounted. GRUB also knows the notion of "mounting a partition". It just doesn't construct a file-system hierarchy from multiple partitions, because it only mounts a single partition. Still, by overloading the term "root directory" too much, you can confuse Linux beginners unnecessarily.