Linux下对boot分区出现问题进行恢复

Linux系统启动过程

通电—>开机自检(加载BIOS)——> BIOS扫描MBR—>MBR引导—>GRUB菜单—>加载内核kernel—>运行/sbin/init进程(系统里其他所以进程的父进程)—>读取/etc/inittab配置文件—>执行/etc/rc.d/rc.sysinit脚本(系统初始化脚本,设置主机名和IP地址等)—>执行/etc/rc.d/rc脚本(根据系统的运行级别,在开机时启动不同软件、0到6级)—>启动mingetty进程。

如果/boot分区被删掉后 (内核也被删了)
模拟问题:
rm -fr /boot/
reboot
问题解决:

进入到挽救模式以后

chroot /mnt/sysiamge     ##将系统挂载更改到根目录下
mount /dev/sr0 /westos   ##将光盘文件挂载
cd /westos/              ##切换到光盘挂载点
ls                       ##查看光盘中的文件
cd Packages/             ##切换到安装包目录中(记住,不要ls,有4000多个包)
cp kernel-3.10.-123.e17.x86_64.rpm /mnt/        
                      ##将这个文件包拷贝到/mnt/下,因为在光盘目录中不能进行拆包
cd /mnt/                 ##切换到/mnt/
ls                       ##查看/mnt/下拷贝过来的文件包
rpm2cpio kernel-3.10.0-123.e17.x86_64.rpm | cpio -id    ##拆包
ls                       ##查看包中的文件
pwd                      ##查看当前路径
cd boot/                 ##切换到包中的boot/目录下
ls -l                    ##包中存在内核文件
cp vmlinuz-3.10.0-123.e17.x86_64 /boot/        
                         ##将内核文件拷贝到系统的/boot/目录下
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)  ##生成系统初始化镜像
grub2-mkconfig > /boot/grub2/grub.cfg 
exit                     ##退出chroot更改的根目录
exit                     ##shell窗口

操作如下:
关闭虚拟机,通过光驱模式启动得到shell,按照之前的操作,依次安装mbr、恢复内核文件、初始化镜像和开机自动引导文件后通过硬盘启动即可
在这里插入图片描述
退出挽救模式。系统缺少引导文件仍然不能正常登录 —恢复引导文件
在这里插入图片描述此时系统可以临时登录
/boot/grub2/grub.cfg文件只时临时生成的,还需要在系统启动后进行操作
grub2-mkconifg > /boot/grub2/grub.cfg
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值