Linux操作系统启动故障排错之/boot目录被删除恢复案例
Linux操作系统启动故障排错之"/boot"目录被删除恢复案例
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.模拟删除/boot分区
1>.查看/boot分区
[root@yinzhengjie ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_node200-lv_root
50G .6G 44G % /
tmpfs .9G 72K .9G % /dev/shm
/dev/sda1 477M 41M 411M % /boot
/dev/mapper/vg_node200-lv_home
439G 71M 417G % /home
[root@yinzhengjie ~]#
2>.查看/boot分区下文件所在软件包
[root@yinzhengjie ~]# ll /boot/
total
-rw-r--r--. root root Jun config-2.6.-.el6.x86_64
drwxr-xr-x. root root Dec : efi
drwxr-xr-x. root root Dec : grub
-rw-------. root root Dec : initramfs-2.6.-.el6.x86_64.img
-rw-------. root root Dec : initrd-2.6.-.el6.x86_64kdump.img
drwx------. root root Dec : lost+found
-rw-r--r--. root root Jun symvers-2.6.-.el6.x86_64.gz
-rw-r--r--. root root Jun System.map-2.6.-.el6.x86_64
-rwxr-xr-x. root root Jun vmlinuz-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/config-2.6.-.el6.x86_64
kernel-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/initramfs-2.6.-.el6.x86_64.img
kernel-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/initrd-2.6.-.el6.x86_64kdump.img
file /boot/initrd-2.6.-.el6.x86_64kdump.img is not owned by any package
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/symvers-2.6.-.el6.x86_64.gz
kernel-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/System.map-2.6.-.el6.x86_64
kernel-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# rpm -qf /boot/vmlinuz-2.6.-.el6.x86_64
kernel-2.6.-.el6.x86_64
[root@yinzhengjie ~]#
3>.模拟删除/boot分区文件内容
[root@yinzhengjie ~]# rm -rf /boot/*
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# ll /boot/
total 0
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# reboot #重启后发现操作系统无法正常启动,如下图所示。
Broadcast message from root@yinzhengjie
(/dev/pts/0) at 0:01 ... The system is going down for reboot NOW!
[root@yinzhengjie ~]#
二.使用光盘选择救援模式进行恢复
1>.将光盘连接到虚拟机
2>.将光盘设置为第一个boot引导
3>.按回车同意
4>.选择"Rescue installed system"(救援模式)
5>.选择语言为"English"
6>.选择键盘类型为"us"
7>.不设置网络
8>.选择"Continue"
9>.选择ok
10>.继续选择ok
11>.输入回车进入命令行
12>.按住kernel相关软件包(恢复内核)
13>.安装grub
14>.手动编写grub.conf文件后退出shell(恢复grub)
15>.选中重启菜单并选择"ok"
16>.重启机器时需要将硬盘的优先级调高(选中Hard Drive按住"+"会增加优先级)
17>.输入回车同意保存配置
18>.查看进入到菜单栏选项
19>.后来操作系统就重启成功啦
Linux操作系统启动故障排错之/boot目录被删除恢复案例的更多相关文章
- Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例
Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟故障 [root@yinzhe ...
- Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.删除"/sbin/ini ...
- linux初学者-系统启动故障篇
linux初学者-系统启动故障篇 在系统的操作中,有时会不小心误删或者操作失误使得系统启动不起来,下文将列举几种常见的系统启动失败的情况及解决的办法. 1.删除或者覆盖mbr的446个字节 mbr的4 ...
- Linux操作系统启动流程梳理
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下 ...
- Linux操作系统启动流程
一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘.2)读取MBR,进行MBR引导.3)grub引导菜单(Boot L ...
- Linux 操作系统启动流程
1.加载bios bios中包含的硬件CPU 内存 硬盘等相关信息 2.读取MBR 读取完bios信息之后,计算机会查找bios制定的硬盘MBR引导扇区,将其内容复制到 0x7c00 地址所在的物理内 ...
- [转] Linux操作系统启动流程
总启动流程 这部分转自:https://www.cnblogs.com/liang-io/p/9651656.html 一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可 ...
- Linux操作系统启动流程浅析
启动BIOS程序 当电源键按下之后,BIOS(Basic nput Output System)就会由主板上的闪存来运行.BIOS程序会把自己解压缩到系统的内存之中,然后读取CMOS(Compleme ...
- 简述linux操作系统启动流程
Linux启动流程 POST-->BootSequence(BIOS)->Bootloader(MBR,grub)-->kernnel(ramdisk,initrd)-->ro ...
随机推荐
- [转].gitignore文件不起作用的解决方案
.gitignore文件不起作用的解决方案 觉得有用的话,欢迎一起讨论相互学习~Follow Me 转载地址 https://www.cnblogs.com/liugp/p/10399282.html ...
- 多用户同时操作一条Mysql记录问题
场景:两个用户同时读取了数据库中的一条记录,此时用户A对其中一个字段的值进行了修改操作并进行了提交,后来用户B也对这个字段进行了修改,用户B的提交将会覆盖用户A提交的值 关于乐观锁和悲观锁 悲观锁:每 ...
- python中将函数赋值给变量时需要注意的一些问题
python中将函数赋值给变量时需要注意的一些问题 变量赋值是我们在日常开发中经常会遇到的一个问题,本文主要给大家介绍的是关于python将函数赋值给变量时需要注意的一些问题,分享出来供大家参考学习, ...
- 【转】kettle7.1资源库无法打开,找不到connect按钮的问题处理
转自:https://www.aboutyun.com/home.php?mod=space&uid=71645&do=blog&id=3535 kettle是一个比较好用的E ...
- 快速读取TXT几百万行数据, 然后插入到数据,SqlBulkCopy功能的确是有效率
public static void Main(string[] args) { string strPath = "F:\\Download\\600.txt"; int lin ...
- 【jquery】【jqGrid】设置不能多选
onSelectAll:function(rowids,statue){ layui.layer.msg("请选择单条记录"); $("#jqGrid").jq ...
- c++中共享内存原理及实现
共享内存 (也叫内存映射文件) 主要是通过映射机制实现的 , Windows 下进程的地址空间在逻辑上是相互隔离的 , 但在物理上却是重叠的 ; 所谓的重叠是指同一块内存区域可能被多个进程同时使用 , ...
- 004 Thymeleaf学习笔记
1.Thymeleaf概述 SpringBoot并不推荐使用jsp,但是支持一些模板引擎技术:Freemarker.Thymeleaf.Mustache. 简单说, Thymeleaf 是一个跟 Ve ...
- Python代码约定
建议遵守以下约定: 使用 4 个空格来缩进 永远不要混用空格和制表符 在函数之间空一行 在类之间空两行 字典,列表,元组以及参数列表中,在 , 后添加一个空格.对于字典,: 后面也添加一个空格 在赋值 ...
- 池化方法总结(Pooling)
https://blog.csdn.net/mao_kun/article/details/50507376 在卷积神经网络中,我们经常会碰到池化操作,而池化层往往在卷积层后面,通过池化来降低卷 ...