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目录被删除恢复案例的更多相关文章

  1. Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例

    Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟故障 [root@yinzhe ...

  2. Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例

    Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.删除"/sbin/ini ...

  3. linux初学者-系统启动故障篇

    linux初学者-系统启动故障篇 在系统的操作中,有时会不小心误删或者操作失误使得系统启动不起来,下文将列举几种常见的系统启动失败的情况及解决的办法. 1.删除或者覆盖mbr的446个字节 mbr的4 ...

  4. Linux操作系统启动流程梳理

    接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下 ...

  5. Linux操作系统启动流程

    一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘.2)读取MBR,进行MBR引导.3)grub引导菜单(Boot L ...

  6. Linux 操作系统启动流程

    1.加载bios bios中包含的硬件CPU 内存 硬盘等相关信息 2.读取MBR 读取完bios信息之后,计算机会查找bios制定的硬盘MBR引导扇区,将其内容复制到 0x7c00 地址所在的物理内 ...

  7. [转] Linux操作系统启动流程

    总启动流程 这部分转自:https://www.cnblogs.com/liang-io/p/9651656.html 一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可 ...

  8. Linux操作系统启动流程浅析

    启动BIOS程序 当电源键按下之后,BIOS(Basic nput Output System)就会由主板上的闪存来运行.BIOS程序会把自己解压缩到系统的内存之中,然后读取CMOS(Compleme ...

  9. 简述linux操作系统启动流程

    Linux启动流程 POST-->BootSequence(BIOS)->Bootloader(MBR,grub)-->kernnel(ramdisk,initrd)-->ro ...

随机推荐

  1. 【翻译】Flink Table Api & SQL — 性能调优 — 流式聚合

    本文翻译自官网:Streaming Aggregation  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table ...

  2. java学习摘抄笔记mybaits1

    mybatis 第一天 mybatis的基础知识 课程安排: mybatis和springmvc通过订单商品 案例驱动 第一天:基础知识(重点,内容量多) 对原生态jdbc程序(单独使用jdbc开发) ...

  3. mysql 导入txt数据到数据表【原创】

    1.如何将数据表导入到mysql的表中,可以使用:load data infile ... into table  ... 示例: load data infile 'e:\datainfo.txt' ...

  4. JVM中的逃逸分析

    逃逸分析(Escape Analysis)是目前Java虚拟机中比较前沿的优化技术. 逃逸分析的基本行为就是分析对象动态作用域:当一个对象在方法中被定义后,它可能被外部方法所引用,例如作为调用参数传递 ...

  5. Maven依赖中scope的含义

    https://www.jianshu.com/p/7145f01ac3ad Maven依赖中scope的含义 整理一下Maven中Scope的详细作用,都是抄的别人内容整理了一下.参考: https ...

  6. pyhthon Opencv截取视频中的图片

    import os import cv2 ##加载OpenCV模块 def video2frames(pathIn='', pathOut='', imgname='', only_output_vi ...

  7. VB2015运行项目时出现的错误

    错误:未能加载文件或程序集“System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856a ...

  8. (谷歌浏览器)前端以FormData类形成表单(含文件),通过ajax提交,PHP后端$_POST数组为空

    [错误信息] PHP获取不到前端发来的POST数据 [前端代码] [HTTP请求] [后端报错]

  9. Go基础编程实践(九)—— 网络编程

    下载网页 package main import ( "io/ioutil" "net/http" "fmt" ) func main() ...

  10. 下载并使用MNIST数据集

    TensorFlow提供了一个库,可以直接用来自动下载与安装MNIST. MNIST里包含3个数据集:第一个是训练数据集(mnist.train.images),另外两个分别是测试数据集(mnist. ...