My feelings about GRUB 1 versus GRUB 2
I have been dealing with CentOS 6 recently (since I didn't give in to temptation), which has been an interesting experience. In many ways CentOS 6 is a real blast from the past, with all sorts of packages that I just don't use any more. One of those is that CentOS 6 still uses GRUB 1 (which is really just plain 'GRUB') instead of GRUB 2, which basically all of our other Linux systems use.
Boy was fiddling with the machine's boot configuration an eye-opening experience, in a good way. I've become so used to GRUB 2's insane level of complications and opacity that I'd forgotten how pleasant and simple GRUB 1 is by comparison. You have menu entries. They say things. Normally it boots the first menu entry. Your entire GRUB file probably fits on a screen (certainly if you have only one or two kernels and a 50-line xterm window). There is not a shell language in sight.
GRUB 2? Well, I was going to quote a bit of the start of one of our
grub.cfgs, but it's way too long. You don't edit GRUB 2 config
files, or even look at them; they are simultaneously verbose and
opaque, generated by scripts (often scripts that leave you lies in
comments). GRUB 2 has an entire Bourne shell like programming
language (and the Bourne shell is not a good programming language),
for what I'm sure is reasons that makes sense to the GRUB 2
maintainers. The result is the traditional new Linux pile of mud
where you make any changes (very) indirectly, magic happens,
everything is supposed to work, and if it doesn't you are up the
In case it's not obvious, I don't particularly like GRUB 2. No doubt it helps someone, but on all of our machines it just complicates my life (and this includes my desktops and my laptop). Using the original GRUB again was a breath of fresh air, one that I'll now be sad to give up when I work on our other machines.
(I was going to say that some of the complexity of GRUB 2
files was partly the fault of distributions but no, this appears
to be from a standard config builder that's part of GRUB 2 itself.)
PS: Even if GRUB 1 is still available and supported on our Linux distributions and our hardware, it is not worth fighting city hall on this issue (and then finding out all of the things that are undoubtedly broken despite GRUB 1 theoretically being supported). This nicely illustrates how you lose by an inch at a time and then wind up with an entire collection of sprawling mudpiles.
Comments on this page:Written on 12 March 2015.