centos6中boot文件被全部刪除的故障排除
/boot文件裏關於啟動的核心文件有三個,vmlinuz,initramfs-2.6.32-696.el6.x86_64.img,grub.conf
方法一:
開機進入救援模式
chroot /mnt/sysimgage/ 切根
mount /dev/sr0 /mnt 掛載光盤
cp /mnt/ioslinux/vmlinuz /boot/ 拷貝vmlinuz文件到目錄,恢復第一個文件
mkinitrd initramfs-`uname -r`.img `uname -r` 命令生成第二個文件
grub-install /dev/sda 生成grub目錄,相當於恢復grub1,1.5,2三個階段的文件,缺grub.conf
vi grub.conf 手寫缺失的grub.conf
default=0
timeout=5 等待時間可修改
title centos6 菜單的名字隨自己指定
kernel /vmlinuz-2.6.32-696.e16.x86_64 root=/dev/sda2 quiet rhgb selinux=0 這裏的root指根目錄,路徑為根所在分區 quiet靜默啟動 rhgb圖形不顯示 selinux=0文件不打標
initrd /initramfs-2.6.32-696.e16.x86_64.img
退出
重啟
重啟時會碰到selinux給文件打標簽,很慢,可以修改selinux
vim /etc/selinux/config
SELINUX=disabled
方法二:
進入救援模式
mkdir /mnt/cdrom 因為現在根目錄在/mnt下,所以在/mnt下面建個文件夾為掛載目錄
mount /dev/sr0 /mnt/cdrom 掛載光盤
rpm -ivh /mnt/cdrom/Packages/kernel-2.6.32-696.e16.x86_64.rpm --root=/mnt/sysimage/ --force 因為根目錄不是默認位置,所以要指定
此時前面兩個文件已經生成
chroot /mnt/sysimage/
grub-install /dev/sda
vi /boot/grub.conf
default=0
timeout=5 等待時間可修改
title linux 菜單的名字隨自己指定
kernel /vmlinuz-2.6.32-696.e16.x86_64 root=/dev/sda2 quiet rhgb selinux=0 這裏的root指根目錄,路徑為根所在分區 quiet靜默啟動 rhgb圖形不顯示 selinux=0文件不打標
initrd /initramfs-2.6.32-696.e16.x86_64.img
退出
重啟
在輸入kernel 和initrd的路徑時,可以在vi界面:r! 利用ls命令補全來輸入路徑,避免輸錯
在實驗中,因為root和boot路徑的錯誤,嘗試無數遍,最後對比快照的grub.conf文件,找到問題,更改路徑後解決
centos6中boot文件被全部刪除的故障排除