Merubah setting GRUB2 di Backtrack 5 (Ubuntu 10.04)

Pertamax mari kita mengenal apa itu GRUB?

Menurut dokter Wiki, GRUB adalah paket boot loader dari proyek GNU. GRUB adalah implementasi referensi spesifikasi Multiboot, yang menyediakan pilihan untuk boot dari salah satu OS yang terpasang pada komputer atau memilih konfigurasi kernel tertentu yang tersedia pada partisi sistem operasi tertentu.

Contohnya:

Cara kerja GRUB adalah ketika komputer dihidupkan, BIOS menemukan perangkat bootable primary (biasanya hard disk komputer) dan memuat program inisial bootstrap  dari master boot record (MBR), lokasinya pada 512 byte pertama dari hard disk, kemudian mentransfer kontrol ke kode di dalam GRUB.

Karena BT5 ini berbasis OS Ubuntu 10.04 maka GRUB yang digunakan adalah versi ke-2 (kedua) atau dipanggil GRUB2

Kalau dulu pada saat GRUB versi pertama kita dapat merubah setting melalui file menu.lst, sedangkan untuk GRUB2 lokasi file untuk merubahnya ada di /boot/grub/grub.cfg


#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
set saved_entry=${prev_saved_entry}
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
fi
}

function recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=1024x768
set gfxpayload=keep
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.39.4' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
linux    /boot/vmlinuz-2.6.39.4 root=UUID=2337f381-eae7-4efe-bcf3-e6a4dc429763 ro   text splash nomodeset vga=791
initrd    /boot/initrd.img-2.6.39.4
}
menuentry 'Ubuntu, with Linux 2.6.39.4 (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
echo    'Loading Linux 2.6.39.4 ...'
linux    /boot/vmlinuz-2.6.39.4 root=UUID=2337f381-eae7-4efe-bcf3-e6a4dc429763 ro single
echo    'Loading initial ramdisk ...'
initrd    /boot/initrd.img-2.6.39.4
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
linux16    /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 2337f381-eae7-4efe-bcf3-e6a4dc429763
linux16    /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 2C62855262852226
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

Contoh GRUB2 diatas adalah GRUB pada BT5 saya.
Beberapa setting yang saya ketahui:

  1. Lihat line 012, disitulah kita merubah posisi default grub saat komputer kita booting.
    set default=0 berarti posisi boot pada atas sendiri, kalau kita ganti angka 0 dengan 2 berarti posisi boot berada pada baris ke-3 (misalnya pada gambar diatas berarti terletak di posisi ubuntu 8.04, memtest86+).
    Atau

    sudo grub-set-default<strong> X (X adalah angka yang dikehendaki)</strong>
    sudo update-grub
  2. Kemudian lihat line 65, 73, 86, 92, 101. Pada line tersebut terdapat tulisan menuentry “bla..bla…”, kalimat di dalam tanda petik “…” dapat dirubah sesuai selera.
    Misal pada line 65 diganti menuentry “My Backtrack 5 R1” atau mau menghilangkan menu Windows 7 tinggal kasih tanda # didepan line 101-106 (mulai menuentry, kurung buka dan kurung tutup).

Untuk setting yang lain saya belum mempelajarinya lebih lanjut seperti fitur nomodeset vga=791, merubah kernel di initrd /boot/initrd.img-2.6.39.4 dan lain sebagainya.

Jika pembaca ada yang mengetahuinya dan ingin membaginya disini tulis saja pada comment dibawah nanti saya akan tampilkan.

Semoga bermanfaat and keep sharing,

M

Sumber:

https://secure.wikimedia.org/wikipedia/en/wiki/GNU_GRUB

https://help.ubuntu.com/community/Grub2