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等系统文件的更多相关文章

  1. CentOS7 修复boot目录

    这里为了达到实验目的,首先删除boot目录下所有内容 重启后发现系统进不去了,这正是我们想要的 进入系统救援模式,以重新引导系统 进入救援模式后,输入以下命令进行修复boot目录 重启后,能正常引导系 ...

  2. Linux下/boot目录

    /boot目录存放的是开机所需的文件----内核,开机菜单,及所需配置文件等: (1)系统Kernel的配置文件: (2)启动管理程序GRUB的目录,里面放的都是GRUB在启动时所需要的画面.配置及各 ...

  3. CentOS 访问 Windows 共享目录

    起因 由于公司的网络切换后,将所有的服务器都切换到了指定的网段(工作电脑在一个网络,服务器在另一个网络:这样一来,不同部门的 work stations 可以彼此访问,不同部门的服务器(servers ...

  4. linux Boot目录满了之后的解决方法

    boot目录为什么会满? Linux默认分区时,boot分区就200多M,按理说也不小,足够了(实际也就几十M),但是内核经常性的升级,而且自己又不自动卸载,于是该目录下旧的内核文件越积越多,最后就满 ...

  5. Linux中 /boot 目录介绍 【转载】

    Linux中 /boot 目录介绍 转自:点击打开链接 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件 ...

  6. Linux系统/boot目录破损无法启动怎么办

    linux系统中的/boot目录存放着系统开机所需要的各种文件,其中包含内核.开机菜单及所需配置文件等等.但是当不小心删除了/boot目录里的某些文件或者干脆整个/boot目录都不见了的情况下,该如何 ...

  7. Solaris10镜像情况下如何修复boot archive

    在某些情况下(比如:异常宕机)solaris10的boot archive可能会损坏,导致solaris无法启动,此时需要手工修复boot archive. 本文通过模拟boot archive损坏, ...

  8. Linux操作系统启动故障排错之/boot目录被删除恢复案例

    Linux操作系统启动故障排错之"/boot"目录被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟删除/boot分区 1>.查看/b ...

  9. BOOT目录磁盘占用满处理

    背景:Ubuntu:16.04 查看已安装启动镜像 dpkg --get-selections |grep linux-image 这里会列出目前已经安装的启动镜像,一般分两种,一种状态为“insta ...

随机推荐

  1. 5.spark弹性分布式数据集

    弹性分布式数据集 1 Why Apache Spark 2 关于Apache Spark 3 如何安装Apache Spark 4 Apache Spark的工作原理 5 spark弹性分布式数据集 ...

  2. 简单工厂设计模式--Java设计模式(一)

    一 概念: 简单工厂模式就是通过一个工厂类根据参数动态创建对应的类. 二 案例 我们以汽车作为例子,在现实生活中汽车只是一个抽象的产品,其中有很多类型的汽车才是具体产品,如奔驰.宝马.保时捷等等(当然 ...

  3. JavaScript高程--<script>标签

    <script>标签 在HTML5中script主要有以下几个属性:async,defer,charset,src,type, async(可选): 关键词:异步脚本,外部文件,立即下载: ...

  4. iOS底层学习-KVC使用实践以及实现原理

    简介 KVC(Key-value coding)键值编码,顾名思义.额,简单来说,是可以通过对象属性名称(Key)直接给属性值(value)编码(coding)"编码"可以理解为& ...

  5. CocoaPods详解之----制作篇【转】

    Cocoapods是非常好用的一个iOS依赖管理工具,使用它可以方便的管理和更新项目中所使用到的第三方库,以及将自己的项目中的公共组件交由它去管理.Cocoapods的介绍及优点本文就不在赘述,我开始 ...

  6. centos 系统常用命令

    一:查看cpu信息more /proc/cpuinfo | grep "model name" grep "model name" /proc/cpuinfo ...

  7. Android护眼模式功能小记

    最近自己在做一个小说阅读器,看到某阅有护眼模式功能,别人都有,我怎么能没有? 现在这功能已经不稀奇了,很多手机都带有这个功能. 实现起来不难,用一个蒙版遮在界面上面就行. 至于蒙版,可以用Window ...

  8. python实战===使用smtp发送邮件的源代码,解决554错误码的问题,更新版!

    import smtplib from email.mime.text import MIMEText from email.header import Header import time #密文输 ...

  9. XML语法小结

    语法结构主要要求: (1)有且仅有一个根元素. 根元素也称文档元素,整个 XML 文档的其他元素都包含在根元素中,并通过嵌套形成树 型结构.除了根元素外,其他元素都是子元素. (2)每个元素必须有开始 ...

  10. 两点补充——CSS3新属性以及弹性布局

    CSS3 新属性 一.[ CSS3新增属性前缀 ] 1.-webkit-:chrome/safari 2.-moz-:火狐 3.-mo-:IE 4.-o-: Opera 欧朋 二 .[CSS 长度单位 ...