1、引导文件/boot/grub2/grub.cfg丢失
rm -rf /boot/grub2/grub.cfg
方法一、当系统没有重新启动时
grub2-mkconfig > /boot/grub2/grub.cfg
方法二、当系统被重新启动
引导系统启动
grub > set root='hd0,msdos1' ##此位置指定/boot分区所挂载的硬盘分区
grub > linux16 /vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda3 ##根分区挂载点,文件为内核文件
grub > initrd16 /initramfs-3.10.0-123.el7.x86_64.img ##初始化镜像文件
grub > boot
可以进入挽救模式查看,/boot分区挂载点,以及根分区挂载点
手动引导
即可进入系统
注意:手动引导后,系统正常启动,但是是临时的,因此进去系统后还是需要执行:grub2-mkcofig > /boot/grub2/grub.cfg
生成新的引导文件。系统才可以真正意义上恢复正常
mbr主引导记录损坏
dd if=/dev/zero of=/dev/vda bs=446 count=1
重启系统
把系统镜像文件放入光盘,并且选择从光盘启动
选择Troubleshooting进入,再选择Rescue,进入挽救模式
点击Continue,OK。成功进入挽救模式。
生成主引导记录mbr
grub2-install /启动分区所在硬盘
grub2-install /dev/vda
点击exit退出,将从光盘启动改为硬盘启动
内核文件丢失
rm -rf /boot/vmlinuz-3.10.0-123.el7.x86_64 ##删除内核文件
进入挽救模式
将镜像中的内核文件拷到/boot分区中:
chroot /mnt/sysimage ##改变程序执行时参考的根目录位置(增加系统安全性)
mkdir /rhel7
mount /dev/sr0 /rhel7 ##挂载镜像到/rhel7目录
cd /rhel7/Packages ##进入包
cp kernel-3.10.0-123.el7.x86_64.rpm /mnt ##将内核文件包复制到/mnt
cd /mnt
rpm2cpio kernel-3.10.0-123.el7.x86_64.rpm | cpio -id ##打开内核rpm包
cd boot/
cp vmlinuz-3.10.0-123.el7.x86_64 /boot/ ##将内核文件拷到/boot目录
exit ##退出
exit
更改系统启动级别,在进去挽救模式时更改为从光盘启动,启动系统,就可以恢复正常
系统初始化镜像文件丢失
rm -fr /boot/initramfs-3.10.0-123.el7.x86_64.img ##删除系统初始化镜像文件
方法一:mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) ##生成系统初始化镜像文件
方法二、系统重启
进入挽救模式
生成系统初始化镜像
更改为系统启动,进入系统
当/boot分区被删掉
rm -rf /boot/*
重启后:
进入挽救模式![chroot /mnt/sysimage ##改变程序执行时参考的根目录位置(增加系统安全性)
grub2-install /dev/vda ##生成主引导记录
mount /dev/cdrom /mnt ##挂载系统镜像
rpm -ivh /mnt/Packages/kernel-3.10.0-123.el7.x86_64.rpm --force ##强制安装内核包,这里不能取消
grub2-mkconfig > /boot/grub2/grub.cfg ##生成引导文件信息,重定向到grub.cfg新文件
更改系统启动级别,更改启动项
当开机启动级别被篡改
rm -rf /etc/systemd/system/default.target
ln -s /lib/systemd/system/reboot.target /etc/systemd/system/default.target
reboot
系统一直无限重启。
方法:开机时按上下键停止读秒。
标题按e进入编辑模式,选择内核启动行,末尾加5吗、,改为以图形化启动系统,ctrl+x启动
进入系统之后使用root用户执行systemctl set-default graphical.target
重启测试可以正常进入系统并没有无限重启