Comment 38 for bug 202009

Revision history for this message
Paul Mattes (paul-mattes) wrote :

I was also bitten by this when upgrading from 8.10 to 9.04. update-grub said that it found the new kernel, but it did not change menu.lst.

The reason was that I had previously modified the 'automagically generated' section of menu.lst (removing the 'splash' option to help diagnose another issue), instead of using the correct method of modifying the structured comment '# defoptions' *above* the automagically generated section and re-running update-grub. Modifying the wrong section got me the effect I wanted on grub some weeks ago, but with the surprise side-effect yesterday.

To reiterate, to modify menu.lst, you must do it in a way that update-grub likes, or update-grub won't work the next time you install a new kernel. You must modify right structured comment, then re-run update-grub, which will apply your change to the part of the file that it 'owns'.

[Suffice to say, putting the update-grub parameters and the live grub parameters in the same file is strongly counter-intuitive -- there should be a separate 'update-grub.param' file, and the generated 'menu.lst' file should clearly state that it was generated by update-grub and that the correct way to change it is to edit update-grub.param and run update-grub.]

That might never happen, given the investment made by so many people in figuring out the current method ;-), but what should really be fixed now is 'update-grub' -- when it detects that someone has hand-modified the 'wrong' part of the file, it should say so *VERY LOUDLY*, instead of appearing to do the right thing but not changing menu.lst at all.