Posts tagged ‘grub’

[howto] Enable/Disable GRUB Password

NOTE: This is not a rock solid secured way of disabling access to your pc. But atleast for those “Windoze users” who have no clue wtf is a grub, it’s going to be pretty effective! I’m going to teach you how to enable as well as disable grub password.

Enable GRUB password:

1. Open terminal and type as root:

# cp /boot/grub/menu.lst /boot/grub/menu.lst.backup

2. Now that your GRUB is backed up. Type:

# grub

grub> md5crypt

Password: ******** [Type in the password that you want to encrypt!]

Now copy the encrypted message it gives you!

grub> quit

3. Open /boot/grub/menu.lst.backup and paste the message after initrd line. If you have a number of Grub entries , you must paste it [or use a different encrypted password using the above method] for every entry that you want to password protect! Use it like this:

title           Debian GNU/Linux, squeeze/sid
root            (hd0,1)
kernel          /boot/vmlinuz-2.6.30-1-amd64 root=/dev/hda2 ro splash quiet vga=791
initrd          /boot/initrd.img-2.6.30-1-amd64

password – -md5 gasgd6876b2dsd2d/

paste the code after “password – -md5”

Note: Since wordpress has the weird habit of showing double hyphen as a single large one, I put a space in between the two, you just need to put two hyphens without any space in between!

Disable/Hack GRUB password:

1. You need a Linux live CD for this.

2. Insert the CD and boot from it.

3. In command line [or if you’re using ubuntu cd 😛 open a terminal and type]:

$ su

# fdisk -l [to check the name of the root directory]

# mount -t ext3 -o rw /dev/sda2 /mnt

[change ext3 to ext4 and /dev/sda2 according o the fdisk -l output]

# chroot /mnt /bin/bash

# nano /boot/grub/menu.lst

Now just remove the password line from the grub menu. 😛 Simple eh? Now save , unmount the partition and reboot!


[howto] Restore Grub

It is always recommended to install Windows first and then Linux, however if you would prefer [for some weird reasons] to do the opposite then follow this guide!


You need a Linux LIVE CD. E.g.-> ubuntu or suse or mandriva,etc etc.

Boot from your Live CD. Now open a terminal and type in:


find /boot/grub/stage1

Now it will show you the correct root partition.

root (hd0,1)   [replace 0 and 1 according to the output!]

setup (hd0)


sudo grub-install /dev/sda [or hda , whichever is your MBR]



[Out-dated] GRUB-GFX {Graphical Grub Menu}

GRUB-GFX will transform your ugly grub menu into a beautiful one.

First remove your older grub:

apt-get remove grub

Download the 32bit version from here. I use 64bit, but it’s not available anywhere it seems so I might upload it somewhere if someone requests!

Goto the folder where you downloaded it and install using

dpkg -i filename.deb

Download the suse grub from here. Put it in a new folder else it will get messy!

cpio -i < message.suse

This will extract it! See toldya’ it will get messy!

Now edit the pictures as you want and then put it back up:

ls . |cpio -o > /boot/grub/message.custom

If you don’t want to go through this hassle there are countless themes already there, search in or For debian users you can try out this one.

Just copy it into /boot/grub

cp mesage.debianorange /boot/grub/

Then edit your menu.lst

sudo cp /boot/grub/menu.lst /boot/grub/menu.lst_backup
sudo gedit /boot/grub/menu.lst

and make it use gfxboot

gfxmenu /boot/grub/message.suse # the suse can be replaced

Type in:

grub> find /boot/grub/stage1
(hdx,y) # this will be the output
grub> root (hdx,y)
grub> setup (hdx)

Replace hdx,y with whatever output it shows, for me it was (hd0,1)

Now :

grub-install /dev/hda [or sda whichever is your MBR]


Reboot and enjoy!

NOTE: Please follow this guide if you run into any problem.

GRUB 2 [howto]

Click to enlarge

Click to enlarge


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:


# 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}
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