因操作失误删除 /boot 分区内容(或整个分区),导致系统无法启动。利用 CentOS 6 安装光盘的 Linux Rescue 救援模式,可重新安装 kernel 包、重建 grub 配置与引导扇区,完整恢复启动能力。本文记录实战全过程。
linux rescue 回车。/mnt/sysimage。# 救援模式下系统已挂载至 /mnt/sysimage
chroot /mnt/sysimage
# 现在 / 即为原系统根目录,可直接使用 yum、rpm、grub 等命令
# 挂载安装光盘(救援模式通常已挂载至 /mnt/source 或 /mnt/cdrom)
mount /dev/cdrom /mnt/cdrom 2>/dev/null || mount /dev/sr0 /mnt/cdrom
# 查找 kernel rpm
ls /mnt/cdrom/Packages/kernel-*.rpm
# 强制重新安装(--replacepkgs 允许覆盖已安装文件)
rpm -ivh --replacepkgs /mnt/cdrom/Packages/kernel-2.6.32-71.el6.i686.rpm
# 验证 /boot 内容恢复
ls /boot
# 应出现 vmlinuz-, initramfs-, config-, System.map-, grub/ 等
mkdir -p /boot/grub
touch /boot/grub/grub.conf
cp -rf /usr/share/grub/i386-redhat/* /boot/grub/
# 或 x86_64 系统
cp -rf /usr/share/grub/x86_64-redhat/* /boot/grub/
cat > /boot/grub/grub.conf <<'EOF'
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS 6 (2.6.32-71.el6.i686)
root (hd0,0)
kernel /vmlinuz-2.6.32-71.el6.i686 ro root=/dev/sda3 rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto quiet
initrd /initramfs-2.6.32-71.el6.i686.img
EOF
关键点:root (hd0,0) 对应 /boot 所在分区(/dev/sda1);root=/dev/sda3 为根分区。请根据 fdisk -l 结果调整。
grub --batch <<'EOF'
root (hd0,0)
setup (hd0)
quit
EOF
exit # 退出 chroot
exit # 退出救援模式 Shell
reboot
系统应能正常显示 grub 菜单并启动 CentOS 6。

完整流程:救援模式 → chroot → 重装 kernel rpm → 复制 grub 文件 → 编写 grub.conf → grub 安装 MBR。操作前建议先备份重要数据,若分区表亦受损需先用 fdisk/testdisk 恢复分区表。
Linux mkdir 提示「Read-only file system」三階段排查:掛載權限、檔案系統錯誤、硬體故障
Kali Linux 網路配置完整指南:靜態 IP、DNS、網路重啟與校園網實戰案例
Linux vi/vim 編輯器卡死於 connect(/dev/gpmctl) 的解決方法
Linux 與 Windows 檔案權限機制深度比較:為何 Linux 更安全?
Linux Ctags 實戰指南:搭配 Vim 實現原始碼極速導航
重裝 Windows 後無法進入紅旗 Linux 6.0?修復雙引導的完整指南