My grub boot menu showed linux as first. It was fine while I was working on the kernel source. But now I tend to use a lot of Win gui apps. So I had to change it.

You can either do:

  • Manually edit the grub config file followed by updating grub menu

sudo emacs /etc/default/grub
sudo update-grub

Change the number in GRUB_DEFAULT line. First boot menu is numbered 0. If it is 6th boot menu, type in GRUB_DEFAULT=5.

Problem was that I didnt remember what order my Win 7 came at. So I had to use a gui tool: startupmanager

  • Or use a gui tool called startupmanager

sudo apt-get install startupmanager

Very nice to configure:

Finally I reopened the file /etc/default/grub and found that the order was actually 5:


The good thing about this tool is that it actually shows you what the name that appears in the title is.

Update: Using the above didnt help me fine tune the startup menu and I found myself manually editing the /boot/grub/grub.cfg to reorder the menu. Note that if you wish your Windows option to be listed above Linux, just rename 30_os-loader to 09_os-loader (above 10_linux)