On Wednesday, February 17, 2016 10:03:04 AM Rick Stevens wrote:
On 02/16/2016 09:19 PM, Mike Wright wrote:
On 02/16/2016 08:15 AM, Chris Murphy wrote:
At the GRUB menu, type
pager=1 set
Look for variable 'prefix=' this will be drive, partition, and path, to the GRUB directory where its cfg and modules are found.
All right Chris!
So apparently grub.cfg is ?compiled? into some other secret location know only to the bootloader. I have the sinking feeling I have to run some grub2 magic spell to get the modified boot file into wherever it goes but am loathe to try anything. The reason I have a stripped down grub.cfg is because the last one generated for me was pushing 200K and the boot lines in each stanza had, so help me, nineteen swap files included in each one.
grub2 uses the file /boot/grub2/grub.cfg by default. This file does get rebuilt by kernel updates, and by running /sbin/grub2-mkconfig
Now the question:
Is there a command that will take my simplified grub.cfg and install it without modifying it in any way and leave me with a bootable system? (please please please say yes).
I've never used it, but I suspect grub-menulst2cfg may do what you want. It claims to "Convert a configuration file from GRUB 0.xx to GRUB 2.xx format". If you're going to continue to tinker in this way, you really have to read up on grub2:
http://www.gnu.org/software/grub/manual/grub.html
I agree it's convoluted and confusing and I'm not a fan (just like I'm not a fan of systemd or journald), but that's what you're stuck with.
Most of the config info you may need to change is in /etc/default/grub. The scripts that generate the menu entries are in /etc/grub.d (particularly 10_linux and possibly 40_custom). The final config created by grub2-mkconfig generally ends up in /boot/grub2/grub.cfg.
If you remove the file /etc/grub.d/30_osprober, then grub2-mkconfig will not look for other operating systems to add to the config file, but will only add the kernels for the current OS. Then if you have a simple chainloader as the initial config that points to each OS, each OS will only have its on entries in its grub.cfg.