/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文件,找到问题,更改路径后解决
原文地址:https://www.cnblogs.com/tony3154/p/10082269.html