Click to enlarge
GRUB 2
GRUB 2 is derived from PUPA which was a research project to investigate the next generation of GRUB. GRUB 2 has been rewritten from scratch to clean up everything for modularity and portability. A mailing list and a wiki have been setup for discussing the development of GRUB 2.
GRUB 2 targets at the following goals:
- Scripting support, such as conditionals, loops, variables and functions.
- Graphical interface.
- Dynamic loading of modules in order to extend itself at the run time rather than at the build time.
- Portability for various architectures.
- Internationalization. This includes support for non-ASCII character code, message catalogs like gettext, fonts, graphics console, and so on.
- Real memory management, to make GNU GRUB more extensible.
- Modular, hierarchical, object-oriented framework for file systems, files, devices, drives, terminals, commands, partition tables and OS loaders.
- Cross-platform installation which allows for installing GRUB from a different architecture.
- Rescue mode saves unbootable cases. Stage 1.5 was eliminated.
- Fix design mistakes in GRUB Legacy, which could not be solved for backward-compatibility, such as the way of numbering partitions.
Multiboot Specification
Multiboot Specification is a protocol between a boot loader and an OS kernel. Because this specification is generic, you can use the protocol in your own boot loader and/or in your own OS freely. Follow this link, for more details.
Howto Install Grub2 in Debian and Ubuntu?
Here goes.
First remove your grub.
apt-get remove grub
apt-get install grub2 grub2-splashimages
The new GRUB2 splash images are installed at:
# ls /usr/share/images/grub/
Once you’ve rebooted, your default grub will load up and it has a new option called ‘Chainload into Grub 2′.When you are satisfied that GRUB2 works then you can select the second option, “upgrade-from-grub-legacy“
You change the grub images from:
/usr/share/images/grub/
# nano /etc/grub.d/05_debian_theme
and change the following line from:
for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga}
to
for i in {/boot/grub,/usr/share/images/desktop-base,/usr/share/images/grub}/Plasma-lamp.{png,tga}
and save the file.
Reboot and enjoy!
Howto add “Windows Entry” in GRUB2 ?
Edit the /boot/grub/grub.cfg file!
# nano /boot/grub/grub.cfg
Add this at the end of your /boot/grub/grub.cfg
# (2) Windows XP
menuentry "Windows XP" {
set root=(hd0,1)
chainloader +1
}
With Windows Vista, via EasyBCD and NeoGRUB
Since EasyBCD's NeoGRUB currently can't understand the GRUB v2 menu format, chain-load to it by replacing the contents of your "C:\NST\menu.lst" file with lines similar to the following:
default 0
timeout 1
title Chainload into GRUB v2
root (hd0,1)
kernel /boot/grub/core.img
Grub2 has a new concept of root partition detection.
Unlike previous version of GRUB, if your XP is in hd1 or sda1
then put hda1 and sda1 and not hd0 /sd0