Centos 6修复/boot目录及fstab等系统文件
author:JevonWei
版权声明:原创作品
错误界面

系统修复过程中,若需要修复fatab挂载文件,磁盘分区为lvm逻辑卷格式,则默认在修复模式下处于不可活动状态,需使用vgchage -ay 激活vg卷组,从而写入fatab文件挂载lvm分区
没有LVM逻辑卷挂载在系统下
- 系统修复过程中,若需要修复fatab挂载文件,磁盘分区为lvm逻辑卷格式,则默认在修复模式下处于不可活动状态,需使用vgchange -ay 激活vg卷组,从而写入fatab文件挂载lvm分区
- 因为删除了/etc/fstab文件,故救援模式下系统也无法找到/挂载目录
- 修复/etc/fstab文件,使系统找到 / 挂载点
1 . 进入光盘救援模式(找不到/挂载目录)

2 . ls /dev/sd* 查看磁盘分区
3 . fdisk -l /dev/sda 查看/dev/sda磁盘分区
4 . mkdir /test 新建一文件用来测试根挂载分区
5 . mount /dev/sda1 /test 将/dev/sda1分区挂载到/test目录下
6 . ls /test 查看/test目录下是否有文件,目录为空即表示根分区不是/dev/sda1
7 . umount /test 卸载/dev/sda1的挂载
8 . mount /dev/sda2 /test 将/dev/sda2分区挂载到/test文件中
9 . ls /test 查看是否为空,/test目录下有文件即表示/dev/sda2分区为/挂载分区
10 . cd /test
11 . vi /test/etc/fstab(编辑/boot和/两个必要的挂载项)
UUID=XXXXX / ext4 defaults 0 0 挂载/分区,即/dev/sda2为根挂载点
/dev/sda1 /boot ext4 defaults 0 0 挂载/boot分区
12 . exit 重启系统
- 再次进入救援模式,查看系统是否可以找到系统的挂载点,若可以找到挂载点,则说明以上操作修复/etc/fatab文件成功,反之则失败,即需要重新修复
13 . 重新进入救援模式(可能由于/boot分区挂载失败导致查找/分区失败)


14 . chroot /mnt/sysimage /进入真实系统
15 . vim /etc/fstab(挂载/boot到/dev/sda3分区)
/dev/sda3 /boot ext4 default 0 0 挂载/boot分区挂载到/dev/sda3分区上
UUID=XXXXX / ext4 default 0 0 挂载/分区
16 . exit 重启
17 . 进入救援模式成功查找到/挂载点

- 修复/boot及grub和inittab、rc.sysinit等文件
18 . chroot /mnt/sysimage 切换真实系统
19 . mount /dev/cdrom /mnt 挂载光盘文件
20 . cd /mnt
21 . ls /mnt/images/pxeboot/vmlinuz /mnt/isolinux/vmlinuz -l 通过比较发现,两个vmlinuz是相同的
22 . cp /mnt/images/pxeboot/vmlinuz /boot 拷贝vmlinuz内核文件到/boot目录下
23 . cd /boot
24 . mkinitrd initramfs-$(uname -r).img $(uname -r) 生成initramfs虚拟磁盘文件
25 . rpm -ivh /mnt/Packages/kernel-2.6.32-696.e16.x86_64.rpm --force 重新安装内核,会自动生成vmlinuz内核文件和initramfs虚拟磁盘文件,--force强制安装(可替换22和24操作)
26 . ls 查看是否生成vmlinuz内核文件
27 . 22、24操作可替换为25操作
28 . vim /boot/grub/grub.conf
default=0
timeout=5
title danran
root (hd0,0)
kernel /vmlinuz-* root=/dev/sda2
initrd /initramfs-*.img
- 找回rc.sysinit、/etc/inittab 文件
29 . rpm -qf /etc/inittab 查看/etc/inittab文件属于哪个软件包
30 . rpm -qf /etc/rc.d/rc.sysinit 查看/etc/rc.d/rc.sysinit 文件属于哪个软件包
31 . rpm -qf /etc/rc.d/rc.local 查看/etc/rc.d/rc.local文件属于哪个软件包
32 . rm -rf /tmp/* 清空/tmp目录
33 . cp /initscript-.rpm /tmp 拷贝软件包到/tmp目录下
34 . cd /tmp
35 . rpm2cpio initscript-.rpm | cpio -imd 解压此软件包到当前目录
36 . ls
37 . cd /etc
38 . cp inittab /etc
39 . cp rc.d/rc.sysinit rc.d/rc.local /etc/ 复制rc.d/rc.sysinit rc.d/rc.local到/etc/下
40 . vim /etc/inittab 修改系统的默认运行级别
41 . exit
42 . exit
- 操作过程如下:
修复/etv/fstab文件

修复/boot及grub



LVM逻辑卷挂载在系统下
- 磁盘分区为lvm逻辑卷格式,则默认在修复模式下处于不可活动状态,需使用vgchange -ay 激活vg卷组,从而写入fatab文件挂载lvm分区
- 找回/etc/fstab文件
1 . 进入修复模式
2 . ls /dev/sd* 查看sd的磁盘分区
3 . lvs 查看逻辑卷设备
4 . vgs 查看卷组
5 . ls /dev/vg0/lv0_root 查看lv0_root逻辑卷失败
6 . lvdisplay 查看lv的详细信息,发现lv0_root逻辑卷的Status状态为NOT avaliable不可激活状态
7 . lvscan 扫描逻辑卷,状态都为inactive不可活动状态
8 . vgchange -ay 激活逻辑卷
9 . blkid 查看逻辑卷的信息
10 . mkdir /mnt/rootfs
11 . mount /dev/vg0/lv0_root /mnt/rootfs 挂载/分区到/mnt/rootfs
12 . cd /mnt/rootfs
13 . vim etc/fstab(编辑fstab文件挂载信息)
/dev/sda2 /boot ext4 defaults 0 0
/dev/vg0/lv0_root / ext4 defaults 0 0
/dev/vg0/lv0_home /home ext4 defaults 0 0
/dev/vg0/lv0_swap swap swap defaults 0 0
.....
14 . exit
15 . 重启系统再次进入救援模式
- 修复boot和grub
16 . chroot /mnt/sysimage
17 . mount /dev/cdrom /mnt
18 . rpm -ivh /mnt/Packages/kernel-.rpm --force 安装内核生成vmlinuz和initramfs文件
19 . grub-install /dev/sda
20 . vim /boot/grub/grub.conf
default=0
timeout=5
title danran
root (hd0,0)
kernel /vmlinuz-* root=/dev/sda2 \\指定根分区
initrd /initramfs-*.img
21 . exit;reboot
Centos 6修复/boot目录及fstab等系统文件的更多相关文章
- CentOS7 修复boot目录
这里为了达到实验目的,首先删除boot目录下所有内容 重启后发现系统进不去了,这正是我们想要的 进入系统救援模式,以重新引导系统 进入救援模式后,输入以下命令进行修复boot目录 重启后,能正常引导系 ...
- Linux下/boot目录
/boot目录存放的是开机所需的文件----内核,开机菜单,及所需配置文件等: (1)系统Kernel的配置文件: (2)启动管理程序GRUB的目录,里面放的都是GRUB在启动时所需要的画面.配置及各 ...
- CentOS 访问 Windows 共享目录
起因 由于公司的网络切换后,将所有的服务器都切换到了指定的网段(工作电脑在一个网络,服务器在另一个网络:这样一来,不同部门的 work stations 可以彼此访问,不同部门的服务器(servers ...
- linux Boot目录满了之后的解决方法
boot目录为什么会满? Linux默认分区时,boot分区就200多M,按理说也不小,足够了(实际也就几十M),但是内核经常性的升级,而且自己又不自动卸载,于是该目录下旧的内核文件越积越多,最后就满 ...
- Linux中 /boot 目录介绍 【转载】
Linux中 /boot 目录介绍 转自:点击打开链接 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件 ...
- Linux系统/boot目录破损无法启动怎么办
linux系统中的/boot目录存放着系统开机所需要的各种文件,其中包含内核.开机菜单及所需配置文件等等.但是当不小心删除了/boot目录里的某些文件或者干脆整个/boot目录都不见了的情况下,该如何 ...
- Solaris10镜像情况下如何修复boot archive
在某些情况下(比如:异常宕机)solaris10的boot archive可能会损坏,导致solaris无法启动,此时需要手工修复boot archive. 本文通过模拟boot archive损坏, ...
- Linux操作系统启动故障排错之/boot目录被删除恢复案例
Linux操作系统启动故障排错之"/boot"目录被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟删除/boot分区 1>.查看/b ...
- BOOT目录磁盘占用满处理
背景:Ubuntu:16.04 查看已安装启动镜像 dpkg --get-selections |grep linux-image 这里会列出目前已经安装的启动镜像,一般分两种,一种状态为“insta ...
随机推荐
- Java设计模式汇总
Java设计模式汇总 设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式. ...
- [补档][JLOI 2017]聪明的燕姿
[NOI 2008]假面舞会 题目 阴天傍晚车窗外 未来有一个人在等待 向左向右向前看 爱要拐几个弯才来 我遇见谁会有怎样的对白 我等的人他在多远的未来 我听见风来自地铁和人海 我排着队拿着爱的号码牌 ...
- [js高手之路]es6系列教程 - 解构详解
解构通俗点说,就是通过一种特定格式,快捷的读取对象/数组中的数据的方法, es6之前,我们通过对象名称[键] 读取数据 var User = { 'name' : 'ghostwu', 'age' : ...
- mongodb分片部署
Mongodb 分片部署 配置mongodb集群,比如 在3个server上配置 3 shard的Mongodb集群: 架构: 1.每片数据需要3个mongod server,2个为主从数据节点:1个 ...
- Oracle sql 查询结果某一列字段合并成为一条数据
使用oracle中自带函数 wmsys.wm_concat(需合并列的字段名) 用法如下: select code,name,wmsys.wm_concat(baname) from tab gro ...
- JS数组去重的十种方法
一.前言: 我们在实际工作中,或者在面试找工作时,都会用到或者被问到一个问题,那就是"数组如何去重".是的,这个问题有很多种解决方案,看看下面的十种方式吧! 二.数组去重方式大汇总 ...
- 教你如何反编译app,拿到加密方式
大家知道app 有安卓和ios 安卓是apk 现在基本上apk都是经过加密的 想动态脱壳没一定的技术是搞不定的 IOS是ipa 今天我主要讲的是这个 准备好反编译设备 1.一套越狱的ios手机 我 ...
- python_装饰器_语法糖
什么是高阶函数? -- 把函数名当做参数传给另外一个函数,在另外一个函数中通过参数调用执行 #!/usr/bin/python3 __author__ = 'beimenchuixue' __blog ...
- css的一些问题
background-size ie8不支持怎么解决? background-size这个属性是css3,新增的属性,现在很多浏览器已经支持了,但是IE系列的浏览器却没有支持,比如IE8,下面介绍下如 ...
- JS之this
作为JS中比较容易让人迷糊,同时又很重要的难点. 关于this指向问题,我们始终要记住一句话,这句话对于理解this指向很重要.这句话是:this要在执行时才能确认它的值,定义时无法确认. this的 ...