Ubuntu – How to change the GRUB boot order

bootgrub2

I have both Windows 7 and Ubuntu installed on a shared machine. Because a lot of the non-developers use Windows, I'd like to change the boot order to make it easier for them.

Currently the boot order looks like the following:

  • Ubuntu 11.10 kernelgeneric *86
  • Ubuntu 11.10 kernelgeneric *86 (safe boot)
  • Memory test
  • Memory test
  • Windows 7 on /dev/sda6

How do I change the default order so that Windows 7 is at the top of the list?

  • Windows 7 on /dev/sda6
  • Ubuntu 11.10 kernelgeneric *86
  • Ubuntu 11.10 kernelgeneric *86 (safe boot)
  • Memory test
  • Memory test

Best Answer

  • You can use an easy-to-use the GUI application called Grub Customizer to make your life a little bit easier. As the name suggests, you can do much more than just reordering GRUB menu entries with it.

    You can install it by:

    sudo add-apt-repository ppa:danielrichter2007/grub-customizer
    sudo apt-get update
    sudo apt-get install grub-customizer
    

    (See Ask Ubuntu question Are PPA's safe to add to my system and what are some “red flags” to watch out for?.)

    There is an How-To Geek article about it, How to Configure the Linux GRUB 2 Boot Menu the Easy Way. Take a look at it if you're interested. Also, there is a solved thread on the Ubuntu Forums, Change boot order in GRUB 2 that mentions this tool.

    Here are some screenshots:

    screen_1

    screen_2

    screen_3


    Some troubleshooting:

    The Grub Customizer settings may work only from within the latest Linux/Ubuntu installation, the one that installed the Grub.

    For example, if somebody has two OS-es installed (Windows and Ubuntu), and then installs a third OS (Manjaro, etc) and then tries to follow the above answer, Grub Customizer changes will not work when made from the second OS (Ubuntu, in the example). The program has to be installed in the thirs OS, as it seems that Grub Customizer can only edit the Grub files created by the installation of the system on which itself is installed.

    The files that determine the Grub boot menu come in most cases with the latest system installed on a machine, so Grub Customizer has to be installed and used from that Linux system.