Difference between revisions of "Change Boot Menu options from Grub Bootloader"

From CDOT Wiki
Jump to: navigation, search
Line 52: Line 52:
  
  
==Editing the Grub Bootloader ("/boot/grub/menu.lst" file does NOT exist) ==
+
==Editing the Grub Bootloader ("'''/boot/grub/menu.lst'''" file does <u>NOT</u> exist) ==
  
 
I discovered when I installed Mythbuntu 9.10 from a fresh install that the /boot/grub/menu.lst file did NOT exist!
 
I discovered when I installed Mythbuntu 9.10 from a fresh install that the /boot/grub/menu.lst file did NOT exist!

Revision as of 23:49, 29 December 2009

What is the Grub Bootloader?

Grub stands for (GRand Unified Bootloader)

The Grub bootloader is a package that is used to boot various operating systems via a menu upon computer system boot-up. The bootloader menu file usually resides (or resided) in the /boot/grub/menu.lst file.


How the Grub Bootloader Works

Generally when most Linux systems are installed, the Grub bootloader program is installed. After Linux installation and computer reboot, the Grub bootloader menu should appear offering the user with a selection of operating systems to boot. The concept is similar to the boot.ini file that NTLDR (the boot loader for Windows OS) uses to supply a menu selection for a multiple-boot system.


When the computer system starts, the computer's BIOS locates and runs the bootstrap program on the MBR (Master Boot Record). A series of programs (of Grub) are run provide the user with a selection of operating system to boot. For example, the user can select a version of Linux to load the Linux Kernel, or the user can select another operating system (like Windows) to load in the boot-loader (eg. NTLDR). This process of loading boot loaders for other non-Linux operating systems is referred to as chainloading.


Why Edit the Grub Bootloader?

There are numerous reasons to edit the Grub bootloader:

  • Change the order of bootable operating systems in the menu list
  • Change the DEFAULT bootable operating system (eg. from timeout or "count-down")
  • Change the DEFAULT count-down (timeout) value
  • Change the appearance (color) of the bootloader menu
  • Assign a boot password
  • Add additional options to the kernel upon loading Linux Kernel


NOTE: Many people complain that installing Linux causes Linux to be the DEFAULT operating system from a boot-loader list in Grub.
But the user can simply edit bootloader menu file to make their preferred operating system the DEFAULT.


Editing the Grub Bootloader ("/boot/grub/menu.lst" file exists)

Let's assume that we have just installed Linux on our machine, and we want to edit the Grub Bootloader to set MS Windows as the DEFAULT operating system.

!! NOTE: You should first make a backup copy of the bootloader file prior to making any editing changes. We will show you this in the step below !!


STEPS:


  1. Boot up into your Linux system.

  2. Open a command prompt (called a Linux shell) by selecting APPLICATIONS -> ACCESSORIES -> TERMINAL

  3. In the terminal, issue the command: sudo su (this will give administrator priviledges - assuming your have these priviledges, enter your account password)

  4. Issue the command: cp   /boot/grub/menu.lst   /boot/grub/menu.bk (just making a backup copy...)

  5. Issue the command: gedit   /boot/grub/menu.lst (this opens the file in gedit application to allow you to make changes)

  6. Under Comments ## End Default Options ## lists the linux Kernel versions (in groupings labelled title, uuid, kernel and initrd) that will boot up.
    The first grouping at the top of that list will be the DEFAULT operating system.

  7. Farther below should list non-linux OS choices. Usually you can identify them because in the grouping will contain the keyword "chainloader"

  8. Copy and paste the non-linux (eg. Windows) groupings labelled title, rootnoverify, savedefault, makeactive, and chainloader immediately ABOVE the DEFAULT Linux grouping

  9. Save and exit the file.

  10. Test-out by rebooting your machine to load into your DEFAULT (Windows) OS, and then reboot to load into your Linux menu item.


Editing the Grub Bootloader ("/boot/grub/menu.lst" file does NOT exist)

I discovered when I installed Mythbuntu 9.10 from a fresh install that the /boot/grub/menu.lst file did NOT exist! I suspect there was a change in procedure...

Below are steps to edit the Grub Bootloader if the menu.lst file does NOT exist...

STEPS:


  1. Boot up into your Linux system.

  2. Open a command prompt (called a Linux shell) by selecting APPLICATIONS -> ACCESSORIES -> TERMINAL

  3. In the terminal, issue the command: sudo su (this will give administrator priviledges - assuming your have these priviledges, enter your account password)

  4. Issue the command: cp   /etc/default/grub   /etc/default/grub.bk (just making a backup copy...)

  5. Issue the command: ls   /etc/grub.d

    You should see a number, followed by the name of the Windows OS. Take note of that number.

  6. Issue the command: gedit   /etc/default/grub (this opens the file in gedit application to allow you to make changes)

  7. Change the option GRUB_DEFAULT=0 to correspond to that number for your Windows OS boot loader.
    For example, GRUB_DEFAULT=3
  8. Save and exit the file.

  9. Run the command: update-grub
  10. Test-out by rebooting your machine to load into your DEFAULT (Windows) OS, and then reboot to load into your Linux menu item.

This Author's opinion: I suspect that this new method was designed to make things simpler, but I prefer (or at least I got used to) editing menu.lst file...