/etc/fstab及/boot分区文件恢复

以centos6为例,/boot目录下有最为关键的开机启动所必须的内核文件、根文件系统驱动文件已经引导加载程序(bootloader)grub。当我们清空此文件夹之后关机,机器就不能正常启动了,这种情况下,可以借助光盘启动进入救援模式解决。具体步骤如下:

1. 开机进入救援模式

/etc/fstab及/boot分区文件恢复

/etc/fstab及/boot分区文件恢复

/etc/fstab及/boot分区文件恢复

这里不像正常情况下,显示根文件系统挂载在/mnt/sysimage目录,而是提示找不到分区。这是因为我把/etc/fstab文件删除了,即使救援模式下,系统启动也不会搜索挂载根目录了,此时我们只能查看本主机各个分区情况,尝试找到根目录并手动挂载。

2.手动挂载根目录,恢复/etc/fstab文件

/etc/fstab及/boot分区文件恢复

进入shell模式下,根据分区情况可以看出,为了是系统容量具有拓展性,根系统基于逻辑卷的。但是通过#lvdisplay命令可以看出,逻辑卷的状态是not available,这是因为LVM及software Raid设备是在运行系统初始化脚本/etc/rc.d/rc.sysinit时才被激活。很显然,在本例中bootLoader都已经被损坏,lvm无法被自动激活,使用命令#vgchange -ay 手动激活

/etc/fstab及/boot分区文件恢复

/etc/fstab及/boot分区文件恢复

激活lvm之后,通过逻辑卷名字看出根文件系统应该在/dev/vg_www/lv_root逻辑卷设备上,挂载该设备到/mnt/tmp目录。参考下图ls结果可知,此设备确实是根文件系统,创建fstab文件并重启

/etc/fstab及/boot分区文件恢复

3.重启,进入救援模式,修复/boot

1)如下图所示,救援模式下已显示找到根文件系统,并挂载在/mnt/sysimage目录。进入shell模式,在/boot目录下安装kernel和grub

/etc/fstab及/boot分区文件恢复

/etc/fstab及/boot分区文件恢复

2)grub.conf文件可以在上述shell下直接编辑修复也可以在进入开机菜单时使用grub交互程序输入

重启机器,系统直接进入grub交互界面,如下图所示

/etc/fstab及/boot分区文件恢复

分别输入kernel参数和伪根文件系统路径,并启动

/etc/fstab及/boot分区文件恢复

a:指定kernel和initrd的文件路径根为/boot所在的设备及分区;(hd0,0)代表着第一个硬盘中第一个分区

4.重启之后,可以正常登陆了

/etc/fstab及/boot分区文件恢复

登陆之后再去完善/etc/fstab文件及grub.conf文件,机器就恢复成功了。


原创文章,作者:ffu,如若转载,请注明出处:http://www.178linux.com/79526

(0)
ffuffu
上一篇 2017-07-09 17:15
下一篇 2017-07-09 17:49

相关推荐

  • 推荐-LVS专题: LVS的工作模型和调度算法介绍

    LVS专题: LVS的工作模型和调度算法介绍 LVS专题: LVS的工作模型和调度算法介绍 前言 什么是负载均衡? 什么是LVS? LVS的架构: LVS的实现模型: NAT实现原理: DR实现原理: TUN实现原理: FULLNAT实现原理: LVS的调度算法 静态调度算法(4种) 动态调度算法(6种): 总结 前言 本文大概介绍一下LVS的工作方式和实现…

    Linux干货 2016-04-05
  • 简述计算机网络中的物理层

          简要说明物理层在网络传输中做了哪些工作解决的问题      物理层是计算机网络OSI模型中最低的一层。物理层规定:为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的,电子的,功能的和规范的特性。简单的说,物理层确保原始的数据比特流可在各种物理媒体上传输。使得…

    Linux干货 2017-05-08
  • 推荐-zabbix原理篇(1)

    zabbix原理篇(1) 介绍zabbix 之前让我们先来熟悉一下什么snmp ☺ SNMP:Simple Network Management Protoclol  翻译一下:简单网络管理协议 SNMP的工作模式是啥 ☺ NMS向agent采集数据 agent向NMS报告数据 NMS请求agent修改配置 SNMP组件…

    Linux干货 2016-04-11
  • 软件包管理

    一、软件运行环境     API: Application Programming Interface         POSIX: Portable OS     程序源代码 –>…

    Linux干货 2016-08-22
  • Shell脚本、特殊变量、declare、算术运算、退出状态、条件测试、括号区别

    Shell脚本、特殊变量、declare、算术运算、退出状态、条件测试、括号区别 Shell脚本基础(一) 练习

    Linux干货 2016-08-15
  • 第五周

    显示/boot/grub/grub.conf中以至少一个空白字符开头的行 egrep "^[[:space:]]+" /boot/grub/grub.conf 显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行 egrep "^#[[:…

    Linux干货 2016-09-19