一、忘记root密码的解决方法
1.开机后在系统选择页面按e,找到以linux16开头的那行,删除 ro 后面的所有内容,并将 ro 改为 rw rd.break ,按ctrl+x进入下一个页面
2.等系统停止后按Enter弹出
switch_root:/# 界面
输入
chroot /sysroot/ ##从内核模式切换到shell模式
echo westos | passwd --stdin root ##设置密码为westos
touch /.autorelabel ##建立密码认证文件
3.root密码更改完成,重启即可
二、硬盘引导阶段异常
1.模拟问题
MBR主引导记录丢失
dd if=/dev/zero of=/dev/vda bs=446 count=1 ##破坏MBR,/dev/vda是本机/boot所在地
2.解决方法
若是真实主机,需要插入镜像光驱,并从光驱启动。
若是虚拟机,则添加虚拟光驱,从光驱启动
进入挽救模式
出现命令行后输入
chroot /mnt/sysimage ##切换到真实根目录
grub2-install /dev/vda ##此处磁盘应与刚才所截位置一致
关闭虚拟机,更改从磁盘启动,即可恢复正常
三、文件引导阶段可能出现的问题
1.引导文件丢失
(1)引导文件所在路径
/boot/grub2/grub.cfg
(2)预准备
需提前知道根目录所在分区和内核版本
uname -r ##查询内核版本命令
(3)模拟问题
rm -fr /boot/grub2/grub.cfg ##删除引导文件
reboot ##重启系统
(4)解决方法
grub > set root='hd0,msdos1'
grub > linux16 /vmlinuz-3.10.0-514.el7.x86_64 ro root=/dev/vda3 ##内核版本指定本机的,位置指定根目录所在分区
grub > initrd16 /initramfs-3.10.0-514.el7.x86_64.img ##内核版本指定本机的
grub > boot
以上步骤只是临时更改,下次开机还会报同样的错误,所以需要进入系统后恢复引导文件。
grub2-mkconfig > /boot/grub2/grub.cfg ##恢复引导文件
2.内核文件丢失
(1)内核文件
/boot/vmlinuz-3.10.0-514.el7.x86_64
(2)模拟问题
rm -fr /boot/vmlinuz-3.10.0-514.el7.x86_64 ##删除内核文件
(3)解决方法
进入挽救模式(与上面解决MBR丢失相同的进入方法)
出现命令行后
在命令行输入
chroot /mnt/sysimage/ ##切换到真实根目录下
mount /dev/cdrom /media/
cp /media/Packages/kernel-3.10.0-514.el7.x86_64.rpm /mnt/
cd /mnt/
rpm2cpio kernel-3.10.0-514.el7.x86_64.rpm | cpio -id ##从rpm包中提取文件
cd boot/
cp vmlinuz-3.10.0-514.el7.x86_64 /boot/ ##复制缺失的内核文件到/boot下
关闭虚拟机,更改从磁盘启动,即可恢复正常
3.系统初始化镜像文件丢失
(1)系统初始化镜像文件
/boot/initramfs-3.10.0-514.el7.x86_64.img
(2)模拟问题
rm -fr /boot/initramfs-3.10.0-514.el7.x86_64.img ##删除系统初始化镜像文件
(3)解决方法
进入挽救模式(与上面解决MBR丢失相同的进入方法)
出现命令行后
在命令行输入
chroot /mnt/sysimage/ ##切换到真实根目录下
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) ##$(uname -r) 表示当前内核版本,也可直接写
4./boot/分区丢失
(1)模拟问题
rm -fr /boot/* ##删除/boot分区下所有文件
(2)解决方法
进入挽救模式(与上面解决MBR丢失相同的进入方法)
出现命令行后
在命令行输入
chroot /mnt/sysimage/ ##切换到真实根目录下
grub2-install /dev/vda ##/boot所在分区
mount /dev/cdrom /opt/
cp /opt/Packages/kernel-3.10.0-514.el7.x86_64.rpm /mnt/
cd /mnt/
rpm -ivh kernel-3.10.0-514.el7.x86_64.rpm --force ##安装
grub2-mkconfig > /boot/grub2/grub.cfg ##导入引导文件
四、开机启动级别被篡改
1.模拟问题
rm -fr /etc/systemd/system/default.target ##删除原有的开机级别
ln -s /lib/systemd/system/reboot.target /etc/systemd/system/default.target ##更改重启为新开机级别
此问题出现后电脑在开机后会无限重启
2.解决方法
(1)开机后在系统选择页面按e,在以linux16开头的那行的最后面加个5,ctrl+x即可正常进入系统
(2)进入系统后
systemctl set-default graphical.target ##恢复正常开机启动级别