I've upgraded to Karmic, and all I can say is that Grub2 is a huge PITA. Here were my first experiences with it.
Installed on my laptop, but I couldn't get the provided nvidia drivers to work. No problem, I'll get them directly from nvidia and install them. Everything goes fine, and I reboot. Unfortunately, something didn't work, and my system freezes on boot. No problem, I'll just boot in single user mode, which will keep X.org from loading. Wait, where's my grub prompt. Oooo, grub2 doesn't give you the menu unless there are multiple kernels or OSes on your machine. Seriously, there's no way I can change my boot parameters without enabling the grub menu, but I can't do that because my system won't boot??? I'm literally about to tear my computer apart at this point. Stuff like this drove me to Linux. I want my machine to do what I say when I say it, but grub2 has decided that I don't get to tell it how to boot.
So get my LiveCD, and boot that up. There's no /boot/grub/menu.lst file. Instead there several configuration files. On grub1 all I had to do to get a menu was, change hiddenmenu to #hiddenmenu. Of course there's nothing like that. I think GRUB_HIDDEN_TIMEOUT_QUIET=false this is the line that I need to change, but I'm not sure, so I change three different lines. Now I need to run update-grub just so it will load these changes??? Are you mad! And of course I can't figure out how to run this command from a LiveCD because it doesn't know where grub2 is.
This did me the menu that I needed, and I was able to fix my system very easily once I got to the terminal.
I have looked at grub since, and most of the changes make no sense to me. Instead of having all the menu items in a single file (a la /boot/grub/menu.lst), they have been moved to their own files. They are so complicated and filled with code that I can't even begin to understand them. I guess you wold add entries to /etc/grub.d/40_custom file. Seriously WTF! Why is this so complicated. There's no sample entries in here like grub1. That's really helpful; if you are adding another Linux system you can reference your current Linux entries and get an idea of the format, and it works for Windows as well because there is a Windows example in /boot/grub/menu.lst, but of course that has been eliminated in grub2.
I understand why Ubuntu was hamstringed into switching to grub2; the grub developers wouldn't add support for ext4 to grub1. I just don't understand why it's so needlessly complicated. I was so frustrated trying to do something that, in the past, took adding a single character to a well-known file. The developers completely failed at making it easy to use. I was trying to help a user install Windows alongside Ubuntu the other day. I flatly told him to install windows first because grub2 is too difficult to add an entry for windows. That's completely unacceptable. Grub2 is the new newCoke.
Bookmarks