系統故障無可避免,關鍵在於擁有結構化的分析方法論與熟練的修復技能。本文總結核心排錯思路,並通過四大經典案例(密碼遺失、MBR 損壞、/etc/fstab 錯誤、/etc/inittab 遺失)演示完整修復流程。
設定 GRUB 密碼可防止惡意編輯啟動選單。編輯 /boot/grub/grub.conf,在標題行上方加入:
password --md5 $1$q5Ppn/$MZr67rBdz6kIhk0lYDvFh0
(使用 grub-md5-crypt 生成 MD5 密碼)。重啟後編輯選單需輸入 p 並驗證密碼。
linux rescue 進入救援模式 → 一路 Enter → chroot /mnt/sysimage/boot/grub/grub.conf,刪除或重設 password 行e 編輯第二行(kernel 行) → 尾部加 1 或 single → b 啟動單用戶模式passwd 重設 Root 密碼 → 重啟系統模擬損壞:dd if=/dev/zero of=/dev/sda bs=46 count=1(僅供測試環境)。重啟無法啟動時:
chroot /mnt/sysimagegrub-install /dev/sda 重寫 MBR/etc/fstab 遺失或錯誤刪除 /etc/fstab 後重啟,系統卡在掛載階段。修復步驟:
chroot /mnt/sysimagefdisk -l 查看分區佈局 → e2label /dev/sdX 獲取各分區 Labelmkdir /temp && mount /dev/sda3 /temp/temp/etc/fstab,按 Label 填寫掛載點、檔案系統類型、參數/etc/inittab 遺失刪除後重啟報錯「no more processes left in this runlevel」。修復:
mount /dev/hdc /media/cdrominitscripts RPM 包:rpm -ivh /media/cdrom/.../initscripts-*.rpm/etc/inittabfstab、inittab、grub.conf 是高頻故障點掌握以上案例與原則,絕大多數啟動階段故障將迎刃而解。