Memperbaiki GRUB Bootloader (Debian & Turunannya)

Panduan step-by-step, mudah dipahami — termasuk metode chroot lewat Live USB (jika sistem tidak bisa boot)

Pendahuluan singkat

GRUB (GRand Unified Bootloader) adalah bootloader yang umum dipakai di Debian, Ubuntu, Mint, dan turunannya. GRUB bisa rusak/hilang setelah update kernel yang gagal, mengubah partisi, instal ulang Windows, atau kesalahan pada konfigurasi disk. Panduan ini menunjukkan cara memperbaikinya dengan aman.

Perhatian: Sebelum mengubah bootloader, pastikan kamu memahami partisi disk dan punya backup data penting. Salah memilih device saat menjalankan grub-install dapat menyebabkan sistem tidak boot.

Alur umum perbaikan (ringkas)

  1. Cek apakah sistem masih bisa boot.
    • Jika ya → lakukan perbaikan langsung di sistem (metode A).
  2. Jika tidak bisa boot → pakai Live USB/Live CD dan chroot ke sistem terpasang (metode B).
  3. Tentukan apakah sistem memakai BIOS (Legacy) atau UEFI/GPT.
  4. Jalankan grub-install lalu perbarui konfigurasi GRUB (update-grub).
  5. Reboot dan periksa hasilnya.

Metode A — Jika sistem masih bisa boot (perbaikan langsung)

Jika kamu bisa masuk ke Debian/Ubuntu, jalankan perintah ini sesuai jenis firmware:

1) Cek apakah sistem menggunakan UEFI atau BIOS

# jika ada folder /sys/firmware/efi maka sistem boot via UEFI
[ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS (legacy)"

2) Perbaiki untuk BIOS (Legacy)

Ganti /dev/sdX dengan device disk (bukan partisi), contoh /dev/sda atau /dev/nvme0n1:

sudo grub-install --recheck /dev/sdX
sudo update-grub

3) Perbaiki untuk UEFI

Pastikan ESP (EFI System Partition) sudah ter-mount di /boot/efi:

# contoh mount (ubah /dev/sdXY sesuai partisi EFI)
sudo mount /dev/sdXY /boot/efi

# lalu instal GRUB untuk UEFI
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
sudo update-grub

Jika distro kamu adalah Ubuntu, gunakan --bootloader-id=ubuntu agar nama di firmware muncul sesuai distro.

Metode B — Jika sistem tidak bisa boot (gunakan Live USB + chroot)

Gunakan Live USB Debian/Ubuntu (pilih arsitektur yang sama: amd64/arm64...). Boot ke "Try" atau "Live" mode lalu buka terminal. Berikut langkah lengkapnya.

1) Identifikasi partisi

# lihat layout partisi
lsblk -f
# atau
sudo fdisk -l

Catat partisi root (mis. /dev/sda2 atau /dev/nvme0n1p2) dan partisi EFI (jika UEFI) biasanya bertipe vfat (~100-500MB).

2) Mount root dan partisi penting

# ganti /dev/sdXN dengan partisi rootmu
sudo mount /dev/sdXN /mnt

# jika ada /boot terpisah:
sudo mount /dev/sdXY /mnt/boot

# jika UEFI: mount EFI partition
sudo mount /dev/sdXZ /mnt/boot/efi

3) Mount virtual filesystems

sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount -t proc /proc /mnt/proc
sudo mount -t sysfs /sys /mnt/sys
sudo mount --bind /run /mnt/run || true

# Copy resolv.conf agar jaringan tersedia (jika perlu)
sudo cp /etc/resolv.conf /mnt/etc/

4) Masuk chroot

sudo chroot /mnt /bin/bash
# sekarang prompt adalah root di sistem yang terpasang

5) Di dalam chroot: instal ulang GRUB

Di dalam chroot, jalankan langkah sesuai firmware:

# Cek UEFI?
[ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS"

# Jika BIOS:
grub-install --recheck /dev/sdX
update-grub

# Jika UEFI (pastikan /boot/efi ter-mount):
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
update-grub

6) Keluar chroot dan unmount

exit
sudo umount /mnt/dev/pts
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/run || true
sudo umount /mnt/boot/efi || true
sudo umount /mnt/boot || true
sudo umount /mnt

Setelah itu, reboot dan coba boot dari disk.

Kasus cepat di grub rescue (sementara)

Jika kamu berada di prompt grub rescue> dan perlu boot sementara, langkah berikut kadang membantu (contoh sederhana):

# contoh, asumsi /boot/grub ada di (hd0,msdos1)
grub rescue> set root=(hd0,msdos1)
grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue> insmod normal
grub rescue> normal

Ini hanya cara sementara untuk boot. Setelah masuk sistem, jalankan metode A untuk memperbaiki GRUB secara permanen.

Masalah umum & solusi singkat

Ringkasan tindakan cepat

  1. Coba boot; kalau bisa, jalankan grub-install dan update-grub di sistem (Metode A).
  2. Kalau tidak bisa boot, gunakan Live USB → chroot → reinstall GRUB (Metode B).
  3. Untuk UEFI pastikan EFI partition ter-mount di /boot/efi.
  4. Jika masih gagal, periksa partisi, LVM/LUKS, dan gunakan efibootmgr untuk boot order.

Butuh bantuan lebih lanjut? Simpan output perintah penting (lsblk -f, efibootmgr -v, dan error dari grub-install) — itu membantu diagnosa.

Contoh perintah (ringkas untuk copy)

# contoh (UEFI):
sudo mount /dev/sdXZ /boot/efi
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
sudo update-grub

# contoh (BIOS):
sudo grub-install --recheck /dev/sdX

sudo update-grub
Home Home
times;