Announcement

Collapse
No announcement yet.

[SOLVED] GRUB not reading current menu.lst after Jaunty upgrade

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [SOLVED] GRUB not reading current menu.lst after Jaunty upgrade

    I upgraded from 8.10 to 9.04 this morning and long story short, eventually got everything up and running.
    However, when I boot up my computer, the menu GRUB displays appears to be based off my old menu.lst file and not my current one.
    The really strange part is that I can still boot into my newly upgraded OS, but because it's using the old boot options I'm not using the new kernel.
    I know how to work with the menu.lst file, I just have absolutely no clue as to why GRUB isn't reading it anymore and I'm baffled as to how it could be reading a menu.lst file that no longer exists.

    I've searched for answers for awhile now and am finally turning to you all for some help!

    #2
    Re: GRUB not reading current menu.lst after Jaunty upgrade

    We have been seeing numerous situations like this and have not really nailed it down yet. Most of what we have seen is that we assumed the menu.lst file was for the new system but somehow did not include the new kernel. I think that if you have customizations in your menu.lst they should be retained over an upgrade, so how can you be sure it is just your old file? Actually, thinking about this it must be the old file.

    One person reported running "sudo update-grub" which should look for /boot/vmlinuz files and add them to menu.lst, and even though the kernel was there it had to be added manually. I think that update-grub is what the kernel installation script uses to get its new kernel added to menu.lst.

    I guess the real question is why update-grub is not adding the new kernel to menu.lst. Got any good ideas?

    Comment


      #3
      Re: GRUB not reading current menu.lst after Jaunty upgrade

      Actually, that's how I know my current file isn't being read. When I see GRUB's menu after I boot, all the 'titles' read "Ubuntu 8.10 ..." whereas my /boot/grub/menu.lst file was updated after the upgrade finished and the titles all read "Ubuntu 9.04 ..." and the "kernel" line does actually give the location and name of the new kernel (vmlinuz-2.6.28-11-generic is what it says).
      Otherwise I agree that I would have no way of knowing it wasn't using my current menu.lst

      Comment


        #4
        Re: GRUB not reading current menu.lst after Jaunty upgrade

        Good info. When I run "locate menu.lst" it shows, among others
        /var/lib/ucf/cache/:var:run:grub:menu.lst
        When I cat that it is my current list of kernels, but my system does not have that problem. Does this file exist on your system and does it contain the old kernels?

        Comment


          #5
          Re: GRUB not reading current menu.lst after Jaunty upgrade

          A little more info
          dpkg -S /var/lib/ucf
          ucf: /var/lib/ucf

          and then "aptitude show ucf" which you can run if you want. It is Ubuntus method of preserving user changes to files that are not Debian conf files because they are created by postinst scripts. This sounds like what is happening, but is it what should happen? Is it what the devs want to happen?

          Comment


            #6
            Re: GRUB not reading current menu.lst after Jaunty upgrade

            I did 'locate menu.lst' as you did and it returned that same location. I then did 'cat /var/lib/ucf/cache/:var:run:grub:menu.lst' and was returned the portion of my menu.lst file between '## ## End Default Options ##' and '### END DEBIAN AUTOMAGIC KERNELS LIST' . It was taken from my current menu.lst file which isn't being used, so it had my most current kernels listed as well with "Ubuntu 9.04 ..."

            The other commands you listed also returned the same output you gave.

            This is awfully strange IMO.
            I'll keep tinkering, but any more ideas would be great. Luckily I at least have everything running, so it isn't a huge problem, but still something I want to fix if possible.

            Comment


              #7
              Re: GRUB not reading current menu.lst after Jaunty upgrade

              Does you /etc/kernel-img.conf contain
              postinst_hook = /usr/sbin/update-grub
              postrm_hook = /usr/sbin/update-grub
              do_bootloader = no
              That should cause update-grub to be run after the kernel is installed.

              Comment


                #8
                Re: GRUB not reading current menu.lst after Jaunty upgrade

                Another thing you might try while you have the weird system
                There is a script, boot_info_script29.sh, which I have downloaded from sourceforge and been impressed with. It collects all the boot related info it can find on your system, and it finds more than I know to look for.You do have to run it as root, but I have looked at and run the 29 version. If you google boot_info_script you will find the repository and a discussion on Ubuntu Forums about trusting it.

                Comment


                  #9
                  Re: GRUB not reading current menu.lst after Jaunty upgrade

                  This is my /etc/kernel-img.conf:
                  do_symlinks = yes
                  relative_links = yes
                  do_bootloader = no
                  do_bootfloppy = no
                  do_initrd = yes
                  link_in_boot = no
                  postinst_hook = update-grub
                  postrm_hook = update-grub

                  So it has the update-grub part, but not the entire directory address that you mentioned. Is it worth trying to change that?
                  I'll definitely look into that script and see what I might be able to find.
                  Thanks for the help! This is the first time I've actually gotten a response here :P

                  Comment


                    #10
                    Re: [SOLVED] GRUB not reading current menu.lst after Jaunty upgrade

                    So, I figured out how to fix it.
                    In the end I ended up doing the following:

                    Kmenu>System Settings>Advanced>GrubEditor>Tools>Install/Restore GRUB

                    I thought that I had done this already, via command line. I guess not though. Or maybe I did it wrong or something. Either way, I now see the appropriate menu, and am booting with the new kernel. It definitely made a huge difference in how quickly my computer boots now too.

                    Thanks again for the help along the way mando_hacker!

                    Comment

                    Working...
                    X