grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Feature Request: menu.lst should be split into smaller conf files for th


From: Dustin Harriman
Subject: Feature Request: menu.lst should be split into smaller conf files for the convenience and safety of distro-specific kernel package maintainers
Date: Sun, 6 May 2007 15:39:07 -0700

Hello,

I use Ubuntu Linux 6.10, which comes with grub.  The majority of all
grub users probably have a very similar setup, what with Ubuntu being
the most commonly installed Linux, yadda yadda.

I recently installed a newer version of the linux kernel as a routine
security update, using their extremely convenient "update notifier".
After the new kernel was installed, menu.lst got updated badly (as
part of that software package installation), leaving my system
unbootable.

I had to use a rescue CD and repair the menu.lst by hand.  The problem
was all the devices in all sections for each kernel were changed to be
the wrong boot device, ie. /dev/hda1 instead of /dev/hda3, and hd(0,0)
instead of hd(0,2).

How many newbies out there are smart enough to boot from a rescue CD
and repair a damaged menu.lst by hand, knowing about devices and the
grub syntax for addressing them, such as "hd(0,0)"?  I would argue
very few.  At that point it's probably time for many of them to freak
out, cry and re-install Windows.

I thought to myself: that problem shouldn't have happened.  If
anything, only one kernel should have gotten screwed up (ie. the newly
installed one), not all of the previously existing ones as well.

Now admittedly, that was Ubuntu's fault for somehow mistaking what my
boot device was, but grub could have minimized the damage with a more
software packager-friendly format.  I think grub should have a design
that insulates from such problems.

Could menu.lst please be separated into several smaller config files,
like Apache does?  Note how Apache's httpd.conf used to be huge and
very unwieldly, but now they have many smaller configs, which are put
in separate files in /etc/apache/conf.d/?  Each of these smaller,
separate configs makes it very easy and clean for package maintainers
to add and remove what they need for Apache to support them.

For example, if I install an Apache-based program like, say
PHPMyAdmin, it creates a new file in /etc/apache/conf.d specific to
PHPMyAdmin, and does not touch httpd.conf, which avoids potential
munging of the customizations I've done in httpd.conf.

In the same way, when I install a new linux kernel like in the example
above, I think it should create a new file, in, say, /boot/grub/conf.d
with the grub configs just for that new kernel, leaving other files
(and other kernel configs) alone, especially the menu.lst.

menu.lst should only contain preference-related stuff like what splash
screen to use, the delay to wait, etc.  Then in a separate directory,
each small conf file has one version of a linux kernel on one
partition (plus the alternative to boot that kernel in single user
mode).  Then when a new kernel gets installed, that's a new, separate
conf file.  The option to boot to windows or into memtest86 would each
also be a separate conf file.

This way any new software package I install that needs to change a
grub configuration just brainlessly plops a small file into the right
directory (which the end user is not supposed to edit), rather than
carefully and automagically trying to edit menu.lst and not screw up
any customizations done there by the end user.  Removal of that
software package is just as easy and clean, the small file is just
deleted again: there are no customizations that are in danger of being
lost, as they live in menu.lst.  And no danger of hurting the other
kernel configs.

Please help the newbies out there who can't recover from this disaster
like I was able to.  Remember, if a newbie can't boot at all, that's a
big blocker for them.  Please don't leave it to each distro to figure
out how to safely edit menu.lst and not damage end user
customizations, when grub could make it trivial for everyone in one
pop.

Thanks,
Dustin Harriman

My Blog: http://ca.blog.360.yahoo.com/dustinharriman
RSS Feed: http://ca.blog.360.yahoo.com/rss-RkGSoVA1brWtXrVH9Gr5CzgVujwwGg--?cq=1

"Freedom is not the capacity to do whatever we please; freedom is the
capacity to make intelligent choices"  -Francis Moore Lappé




reply via email to

[Prev in Thread] Current Thread [Next in Thread]