GNU GRUB

GNU GRUB

Ubuntu menggunakan GRUB (GRand Unified Bootloader) sebagai boot-loader/boot-manager, yaitu sebuah program kecil (dan juga bagian dari sistem operasi) yang nantinya akan memuat sistem operasi yang biasanya tertanam pada harddisk.

Ubuntu mulai menggunakan GRUB 2 mulai sejak Ubuntu 9.10 (Karmic Koala) dirilis, sedangkan Ubuntu 9.04 (Jaunty Jackalope) kebawah masih versi GRUB legacy.

Bagi para pengguna Ubuntu/Linux dual boot pasti tidak asing lagi dengan GRUB, karena setiap kali mereka menyalakan komputer pasti akan melihat bagimana grub ini bekerja. Dengan adanya GRUB ini kita akan diberikan pilihan untuk booting ke sistem operasi mana saja yang terinstall di komputer kita (lihat gambar diatas). Tapi bagimana kalau tidak ada sistem operasi lain selain Ubuntu? Kalau tidak ada sistem operasi lain yang terdeteksi oleh GRUB, maka saat komputer dinyalakan maka biasanya akan langsung masuk ke Ubuntu.

Versi GRUB

Supaya tidak bingung, berikut ini adalah penjelasan singkat tentang GRUB yang digunakan pada tiap versi Ubuntu yang telah dirilis.

  • Jika Anda menginstall (fresh install) Ubuntu 9.10 keatas, maka Anda menjalankan GRUB 2
  • Jika Anda menginstall Ubuntu 9.10 kebawah, maka Anda menjalankan GRUB legacy
  • Jika Anda menginstall Ubuntu 9.10 kebawah lalu mengupgradenya ke Ubuntu 9.10, maka Anda menjalankan GRUB legacy secara default, kecuali Anda mengupgradenya ke GRUB 2.
  • Setiap Ubuntu (9.10 keatas) yang baru saja diinstall akan langsung masuk ke desktop Ubuntu jika tidak ada sistem operasi lain yang diinstall
  • Anda bisa menekan dan tahan tombol Shift untuk memunculkan menu GRUB atau juga bisa dengan tombol Esc
  • File yang berisi konfigurasi GRUB legacy ada pada /boot/grub/menu.lst, sedangkan pada GRUB 2 ada pada /boot/grub/grub.cfg

Untuk mengecek versi GRUB yang Anda gunakan jalankan perintah ini di Terminal:

grub-install -v

GRUB tidak muncul/tertimpa

Banyak alasan yang menyebabkan GRUB tidak muncul pada saat booting. Salah satu alasan yang paling utama adalah bootloader Ubuntu (GRUB) tertimpa oleh bootloader sistem operasi lain misalnya Microsoft Windows. Ini sangat sering terjadi di kalangan pengguna Linux yang dual boot dengan Windows.

Jika kita menginstall ulang Windows pada komputer yang sebelumnya sudah terinstall Ubuntu maka GRUB Ubuntu akan tertimpa oleh MBR punya Windows, inilah yang mengakibatkan mengapa menu grub tidak tampil pada saat komputer booting.

Mengembalikan GRUB Ubuntu yang hilang/tertimpa

Jika kita menginstall ulang Windows setelah menginstall Ubuntu, maka GRUB akan tertimpa oleh MBR Windows. Pada kondisi ini Ubuntu Anda tidak rusak ataupun hilang, dan tidak perlu melakukan install ulang Ubuntu, karena yang dibutuhkan adalah menginstall kembali bootloader Ubuntu (GRUB) yang tertimpa oleh MBR Windows. Ingat, yang diinstall ulang hanya bootloadernya saja buka sistem operasinya.

Untuk menginstall ulang GRUB kita membutuhkan LiveCD Ubuntu, usahakan yang sama versinya dengan Ubuntu yang sedang kita gunakan/yang akan dikembalikan GRUB nya. Contohnya, gunakan LiveCD Ubuntu 9.10 untuk mengembalikan GRUB dari Ubuntu 9.10, atau gunakan LiveCD Ubuntu 11.04 untuk mengembalikan GRUB dari Ubuntu 11.04, dst.

Kalau sudah punya LiveCD nya, saatnya mulai.

  • Masukkan Live CD Ubuntu ke CD/DVD ROM laptop/PC dan booting ke LiveCD tersebut.
  • Setelah berhasil masuk ke desktop Ubuntu, jalankan Terminal dan jalankan beberapa perintah dibawah ini.

Tentukan di mana letak partisi Ubuntu

Jalankan perintah berikut ini untuk menampilkan tabel partisi:

sudo fdisk -l

Contoh di komputer saya via Terminal:

fdisk

Atau bisa juga mengecek lokasi partisi via program GParted (program bawaan pada Live CD Ubuntu):

GParted

Pada gambar diatas (via Terminal dan Gparted) menunjukkan kalau lokasi instalasi Ubuntu saya adalah pada partisi /dev/sda5. Punya Anda mungkin berbeda, bisa saja /dev/sda4, /dev/sda6, dan lainnya.

Mount partisi di mana instalasi Ubuntu berada

Jalankan perintah berikut ini untuk me-mount partisi Ubuntu Anda:

sudo mount /dev/sdaX /mnt

/dev/sdaX adalah lokasi instalasi Ubuntu. Lokasi instalasi ini tergantung pada hasil pada langkah pertama (fdisk).

Install GDUB ke partisi yang sudah di-mount

sudo grub-install --root-directory=/mnt/ /dev/sda

Update GUBR
Setelah semua langkah diatas sukses dijalankan, yang harus Anda lakukan berikutnya adalah merefresh GRUB yang baru saja diinstall.

sudo update-grub

Terakhir, reboot komputer Anda untuk memastikan apakah GRUB sudah tampil pada saat booting.

Update:
Kalau cara diatas belum berhasil (kadang-kadang muncul pesan /usr/sbin/grub-probe: error: cannot stat `aufs'), maka yang harus Anda lakukan adalah:

sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
 
update-grub
grub-install /dev/sda
grub-install --recheck /dev/sda
exit
sudo umount /mnt/dev/pts
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt

Lalu jalankan lagi sudo update-grub sampai partisi Windows Anda dikenali. Kalau sudah muncul pesan seperti ini:

“Found Windows 7 (loader) on /dev/sdaX”

itu artinya GRUB nya sukses dikembalikan :).

Kalau Anda merasa kurang jelas dengan penjelasan/langkah-langkah diatas janganlah ragu-ragu untuk bertanya atau memberi komentar di sini :)

Referensi:
[Grub2]
[RecoveringUbuntuAfterInstallingWindows]