Ada momen dalam karier administrator ketika terminal akrab berubah jadi lawan: password root terlupa, GRUB hanya menampilkan baris error, atau sistem berhenti di tengah boot. Kabar baiknya, Linux jarang benar-benar mati — selama kernel dan media boot bisa dijangkau, hampir semua kerusakan konfigurasi diperbaiki tanpa instal ulang. Dua senjata utamanya: boot darurat lewat GRUB untuk me-reset password, dan chroot dari live USB untuk memperbaiki sistem dari luar. Chapter ini menyusun prosedur keduanya, ditutup kebiasaan yang mempercepat pemulihan.
Peta Pemulihan: Pilih Jalur Sesuai Gejala #
Langkah pertama pemulihan bukan mengetik perintah, melainkan mencocokkan gejala dengan jalurnya:
| Gejala | Jalur pemulihan | Alat utama |
|---|---|---|
| Password root terlupa | boot dengan init=/bin/bash | GRUB, passwd |
| GRUB rusak atau hilang | chroot dari live USB, pasang ulang | grub-install, update-grub |
Isi /etc/fstab salah, boot menggantung | chroot dan koreksi fstab | editor teks, mount |
| Kernel baru menolak jalan | pilih entri kernel lama di menu GRUB | GRUB |
Kasus boot yang gagal total dibedah lebih jauh di Chapter Boot Failures dan Recovery dari Live USB .
Reset Password Root Lewat GRUB #
Trik ini bekerja karena kernel menerima parameter init= pengganti program pertama yang dijalankan; menunjuk /bin/bash memberi shell root tanpa proses login. Prosedurnya:
- Nyalakan ulang mesin; saat menu GRUB tampil, tekan
epada entri standar (anatomi menunya dibedah di Chapter Bootloader dan GRUB ). - Cari baris yang diawali
linux, lalu tambahkaninit=/bin/bashdi ujungnya. - Tekan
Ctrl+Xuntuk boot dengan parameter itu; sistem berhenti di promptbash-5.2#sebagai root tanpa password. - Root filesystem masih ter-mount read-only, jadi remount read-write:
mount -o remount,rw /. - Ganti password dengan
passwd root— ataupasswd budiuntuk user biasa. - Tulis perubahan ke disk dengan
sync, lalu nyalakan ulang:reboot -f(atauexec /sbin/inituntuk melanjutkan boot normal).
Baris yang diedit pada langkah 2 — berikut contoh tampilan setelah parameter ditambahkan; sisanya (lokasi kernel, partisi root) biarkan apa adanya:
linux /boot/vmlinuz-6.1.0-18-amd64 root=/dev/sda2 ro quiet init=/bin/bashChroot dari Live USB untuk Perbaikan Menyeluruh #
chroot mengganti akar direktori shell ke filesystem lain — setelah chroot /mnt, perintah apt, update-grub, dan passwd berjalan seolah sistem yang rusak sedang boot normal. Dipadukan live USB, hampir semua luka konfigurasi bisa dijahit ulang:
- Boot live USB apa pun, buka terminal.
- Kenali partisi dengan
lsblk -f— cari partisi root (dan EFI bila sistem UEFI). - Pasang partisi korban:
sudo mount /dev/sda2 /mnt. - Pinjamkan tiga direktori pseudo:
sudo mount --bind /dev /mnt/dev,sudo mount --bind /proc /mnt/proc,sudo mount --bind /sys /mnt/sys(tambahsudo mount /dev/sda1 /mnt/boot/efibila UEFI). - Masuk:
sudo chroot /mnt. - Perbaiki yang rusak:
update-grubdangrub-install /dev/sda, koreksi/etc/fstab, ataupasswd. - Keluar dengan
exit, lepas kaitan dengansudo umount -R /mnt, lalu reboot.
Ringkasan peran tiap alat dalam prosedur di atas:
| Alat | Peran dalam prosedur |
|---|---|
lsblk -f dan mount | mengenali dan memasang partisi korban |
mount --bind | meminjamkan /dev, /proc, /sys ke sistem yang diperbaiki |
chroot | berpindah akar sehingga perintah berjalan di konteks sistem rusak |
grub-install dan update-grub | menulis ulang bootloader dan konfigurasinya |
chroot sendiri termasuk panggilan sistem yang hanya boleh dipakai root — di container latihan kita bisa menyaksikan penolakannya secara langsung:
mkdir -p target
/usr/sbin/chroot target /bin/true 2>&1Output yang Dihasilkan:
chroot: cannot change root directory to 'target': Operation not permittedPesan Operation not permitted berasal dari kernel yang menolak UID bukan 0 — bukan karena folder kosong. Karena itu pula prosedur di atas ditulis sebagai daftar langkah untuk mesin sungguhan. Satu pagar sebelum langkah ke-5 adalah memastikan partisi benar-benar sudah ter-mount dengan mountpoint:
mkdir -p rescue
mountpoint -q / && echo "/ adalah mountpoint"
mountpoint -q rescue || echo "rescue belum ter-mount"Output yang Dihasilkan:
/ adalah mountpoint
rescue belum ter-mount- Baris 1: folder
rescuemeniru mountpoint yang diperiksa. - Baris 2:
mountpoint -qmemeriksa tanpa mencetak status;&&hanya berjalan bila lolos. - Baris 3:
||menangkap kegagalan — pola yang dipasang sebelumchroot /mntagar tidak memperbaiki folder kosong.
Referensi mekanisme chroot dan passwd tersedia lengkap, dan wiki Arch merangkum resep chroot lintas distro.
Kebiasaan yang Mempercepat Pemulihan #
Pemulihan cepat disiapkan jauh sebelum kerusakan terjadi. Kebiasaan yang membayar dirinya sendiri: simpan hasil lsblk -f dan salinan /etc/fstab sebagai peta partisi; jaga live USB yang bisa boot dan perbarui isinya setahun sekali; catat recovery key LUKS di pengelola password; dan yang terpenting — jalankan backup rutin yang restore-nya pernah diuji, materi pembuka Section Storage dan Backup
. Keterampilan pemulihan menyelamatkan sistem; backup menyelamatkan data.