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. Springboot配置连接两个数据库

    背景: 项目中需要从两个不同的数据库查询数据,之前实现方法是:springboot配置连接一个数据源,另一个使用jdbc代码连接. 为了改进,现在使用SpringBoot配置连接两个数据源 实现效果: ...

  2. Webpack 4 SplitChunksPlugin配置方案(转)

    通常情况下我们的 WebApp 是有我们的自身代码和第三方库组成的,我们自身的代码是会常常变动的,而第三方库除非有较大的版本升级,不然是不会变的,所以第三方库和我们的代码需要分开打包,我们可以给第三方 ...

  3. php-resque 队列简单使用

    一.安装 php-resque 进入项目根目录,composer 安装 php-resque composer require chrisboulton/php-resque 二.常用方法 1.连接 ...

  4. 读Secrets of the JavaScript Ninja(一)函数

    理解JavaScript为什么应该作为函数式 在JavaScript中,函数是程序执行过程中的主要模块单元 函数是第一类对象 通过字面量创建 function ninjaFunction(){} 赋值 ...

  5. spark笔记 环境配置

    spark笔记 spark简介 saprk 有六个核心组件: SparkCore.SparkSQL.SparkStreaming.StructedStreaming.MLlib,Graphx Spar ...

  6. Centos7下JDK1.8的安装

    1.下载并上传并解压安装包 下载安装包上传到/usr/local目录 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-dow ...

  7. 洛谷P5022 旅行 题解

    前面几个代码都是部分分代码,最后一个才是AC了的,所以最后一个有详细注释 安利一发自己的Blog 这是提高组真题,233有点欧拉回路的感觉. 题目大意: 一个 连通 图,双向边 ,无重边 , 访问图中 ...

  8. FORMAT 的用法

    https://www.cnblogs.com/gaodu2003/archive/2008/12/22/1359927.html Format 格式指令具有以下的形式:"%" [ ...

  9. Python之路【第二十九篇】:django ORM模型层

    ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的 ...

  10. MySQL恩恩怨怨

    数据库基础 Windows安装MySQL Mac安装MySQL Linux安装MySQL MySQL存储引擎概述 MySQL表操作 MySQL支持的数据类型 MySQL表的完整性约束 MySQL记录操 ...