Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a simple question concerning Grub. When Ubuntu it's the only system installed on a machine, Grub doesn't appear when the computer it's turned on, my question is: When Ubuntu is the only system, Grub it's not installed on MBR?

I has this doubt when I tried the ASPM command in Grub, to see if it could save some battery on my notebook, and the difference was only 0.4W. I don't even know if it made some effect or it's just a normal oscilation.

Thanks.

share|improve this question

3 Answers 3

up vote 4 down vote accepted

As Ubuntu's GRUB wiki page says (from the behavior section):

Initial Default

GRUB 2 will boot straight into the default operating system if no other operating system is detected. No menu will be displayed. If another operating system is detected, the GRUB 2 menu will display.

So, don't worry. GRUB is there.

share|improve this answer
    
Thanks for the answer, bioShark :) –  Dennis Dec 14 '11 at 0:41
    
Welcome. Glad to help. –  bioShark Dec 14 '11 at 0:44
1  
Hold down shift if you want it to stop and show the menu anyhow, or you can edit the default timeout in /etc/default/grub. –  psusi Dec 14 '11 at 14:38

By default, Grub does not show the list of installed OSes if there is only one installed. However, it still has many entries (such as safe mode and memtest).

To force it show the list (and prove its existence) just press and hold Shift key during the booting process (before the kernel is loaded).

share|improve this answer
    
Thanks for the tip, it's definitely useful. –  Dennis Dec 19 '11 at 4:27

GRUB as a Boot Manager

You're thinking of GRUB as a boot manager, which is not wrong but is only part of its function. Boot managers are most useful when selecting between different operating systems. But in its capacity as a boot manager, GRUB also lets you:

  • choose between different kernels
  • manually specify kernel options (like nomodeset)
  • run memtest (the RAM test utility) -- technically this is booting into another OS
  • implement password-protected boot
  • perform basic diagnostic and recovery operations -- though we usually just boot from a live CD/DVD or live USB for this as it's more powerful, and often easier and less technical

As others have said, when Ubuntu is the only installed OS, most of this functionality is accessible by holding down Shift while booting.

But GRUB is, most importantly, a boot loader.

But the most important function of GRUB is as a boot loader. The functions of a boot loader and a boot manager overlap somewhat, and the terms are sometimes used interchangeably. But the difference is:

  • A boot manager provides handy functionality to enhance the user's control over the boot process.
  • A boot loader performs the necessary actions to boot the operating system. Without a boot loader, the operating system cannot even begin to boot.

Essentially all boot managers are boot loaders, but not all boot loaders are boot managers. Some boot loaders offer boot management features less extensive than GRUB. For example, the Windows boot loader lets you choose between operating systems, though in practice it's usually only used to select between different Windows operating systems.

Why a Boot Loader is Needed

Your computer's BIOS or EFI firmware is responsible for accessing storage devices and loading the boot loader from the master boot record of the device being booted from.

The kernel image (typically) resides within an actual partition on the disk. The boot loader accesses the filesystem containing the kernel, loads the kernel into memory, performs any steps required to run the kernel1, and runs it2.

Some boot loaders provide additional facilities, like allowing you to choose what OS or what kernel to boot or setting boot options for kernels (like the Linux kernel and most other modern kernels) that accept them. But that is all, in a sense, secondary: the main function of the boot loader is to load the kernel and start it running. Without a boot loader, your PC wouldn't boot an OS at all.

(1) For example, for historical reasons a traditional 32- or 64-bit BIOS-based PC starts out emulating a 16-bit processor. It has to "become" a 32-bit (or 64-bit) machine before loading a modern kernel, which modern boot loaders facilitate.

(2) Just after the kernel is first loaded, it behaves like a program and it make sense to talk about it "running." Once the system is started up, there's no specific process in a modern OS that is "the kernel." Instead, there are several separate kernel services, and what we usually think of as "the running kernel" is really more like a library (providing system calls to applications).

Further reading:

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.