Hi Jordan, Thanks a ton. I am a bit of novice when it comes to file-systems and hard disks. I didn't know that path to grub.cfg is stored within grub's image, so this helped explain the behavior I was observing.
-Avinash On Thu, Jan 16, 2014 at 11:55 AM, Jordan Uggla <[email protected]>wrote: > On Tue, Jan 14, 2014 at 6:04 PM, Avinash Sridharan < > [email protected]> wrote: > > > > > > I have a slackware installation. I have 7 partitions on my hard disk > where /dev/sda1 is the boot partition and /dev/sda7 is the root partition > (on which slackware is installed). During installation, I didn't realize, > but /boot was not a separate mount point. That is /boot is sitting on > /dev/sda7. > > > > After installing slackware, I installed grub2 on /dev/sda1 > > What grub-install command did you actually run? If by "installed grub2 on > /dev/sda1" you mean that you ran "grub-install /dev/sda1" then that is a > mistake, grub's boot sector should be installed to the MBR because the MBR > is what your BIOS will load at boot, and installing grub's boot sector to > the MBR allows grub to use a stable embedding area. > > > > > and created the /boot/grub/gurb.cfg using grub-mkconfig. > > > So during installation of Slackware, your kernels and everything else for > /boot/ was installed to a directory in your root partition, and when you > ran grub-install the path '/boot/' was not a mount point for a separate > filesystem, so grub-install correctly installed grub's files to the /boot/ > directory on your root partition and configured grub's core.img to have a > $prefix (the variable grub uses to find its images and grub.cfg) to > "(,msdos7)/boot/grub/" meaning "The first partition on the msdos partition > table on the drive that the BIOS tells us that we booted from.". If you had > had your separate /boot/ partition mounted at the path "/boot/" when you > ran grub-install, then grub-install would have copied its images there and > configured the core.img with a $prefix of "(,msdos7)/grub/". You could have > also gotten the same effect by running "mount /dev/sda7 /mnt/ && > grub-install --boot-directory=/mnt/ /dev/sda" which explicitly tells > grub-install where your /boot/ directory is (if not provided, this option > defaults to "/boot/"). > > > > > > After hitting reboot, it hit me that grub.cfg is not on the boot > partition, but on /dev/sda7 and I thought grub might not be able to find > it. But low and behold, grub found it perfectly. > > > > I was wondering if I am missing something here, or there has been a > little bit of magic added to grub2 to actually have the grub.cfg on a > different location than the boot partition?? > > There is no magic here, grub did exactly what you told it to do. > > -- > Jordan Uggla (Jordan_U on irc.freenode.net) >
_______________________________________________ Help-grub mailing list [email protected] https://lists.gnu.org/mailman/listinfo/help-grub
