Linux 排错 误删 /etc/fstab 和 /boot怎样恢复
实验:在分区情况下,rm -rf /boot和/etc/fstab,恢复
首先我们查看一下/etc/fstab 里面放的是什么东西,从下图可以看出里面存放的是分区的挂载情况,删除分区将不能自动挂载
接下来查看/boot下存放的是Linux的核心文件/boot/vmlinuz-VERSION-release,和引导加载程序grub,辅助内核加载硬件驱动的伪根系统/boot/initramfs-VERSION-release.img,缺少这几项将导致Linux无法开机
好了,我要开始删了
rm -rf /boot /etc/fstab ;reboot
这时可以看到开不了机了出现错误代码 Error15 要记住这个现象,以后遇到相同问题就知道原因了
修复过程分为两步
修复/etc/fstab
1 进救援模式,过程就不再累述了,用df 查看分区情况发现分区无法挂载到/mnt/sysimage,lsblk命令也不能用了
恩,还好fdisk -l还能用 ,但是我们没办法知道分区的挂载情况,不知道哪个分区挂载在/下,哪个挂载的/app,但是我们记得每个分区下文件的特点,只是现在没有挂载没办法查看,所以我们可以尝试挂载,在下面的分区列表中/dev/sda1 后面有个*,所有它是开机启动的,应该挂载在/boot下,/dev/sda5是swap分区挂载在/swap下,但是哪个是 / 无法判断
2 我们创建一个临时挂载点
mkdir /mnt/tmp
3 分别挂载/dev/sda{1,2...} /mnt/tmp
4 查看分区下的文件ls /mnt/tmp,找出符合 / 目录下文件特点的分区挂载到 / 目录下
6 创建分区信息表 vim /etc/fstab
vim /mnt/tmp/etc/fstab
/dev/sda1 /boot ext4 defaults 0 0
/dev/sda2 / ext4 defaults 0 0
/dev/sda3 /app ext4 defaults 0 0
/dev/sda5 swap swap defaults 0 0
exit;exit
目前为止/etc/fstab 已经修复完成,接下来修复/boot我们重启一下发现仍然不能启动,错误信息变成了如下所示,只有一个光标
修复/boot
方法一:
1 重新进入救援模式,用df查看,分区已经自动挂载挂载到/mnt/sysimages成功
2 挂载光盘,安装内核
mkdir /mnt/cdrom
mount /mnt/cdrom
rpm -ivh /mnt/cdrom/Packages/kernel.xxx.rpm --root=/mnt/sysimages --force
3 切根,修复grub
chroot /mnt/sysimage
grub-install --root-directory=/mnt/sysimage /dev/sda
4 编写grub.conf
vim /boot/grub/grub.conf
default=0
timeout=5
title linux
kernel /vmlinuz-2.6.32-696.el6.x86_64 root=UUID=6da11b60-dd80-460a-a00f-beb8b3373b5c
initrd /initramfs-2.6.32-696.el6.x86_64.img
exit;exit
方法二:
1 进救援模式
2 切根 :chroot /mnt/sysimage
3 修复/boot/initramfs: mkinitrd /boot/ininramfs-`uname -r` `uname -r`
4 挂载光盘: mount /dev/sr0 /mnt
5 复制光盘内核到/boot: cp /mnt/isolinux/vmlinuz-2.6.32-696.el6.x86_64 /boot
6 修复grub: grub-install --root-directory=/mnt/sysimage /dev/sda
7 编写/boot/grub/grup.conf
vim /boot/grub/grub.conf
default=0
timeout=5
title linux
kernel /vmlinuz-2.6.32-696.el6.x86_64 root=UUID=6da11b60-dd80-460a-a00f-beb8b3373b5c
initrd /initramfs-`uname -r`.img
转自https://blog.csdn.net/jieranjieran/article/details/78119132
Linux 排错 误删 /etc/fstab 和 /boot怎样恢复的更多相关文章
- Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例
Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟故障 [root@yinzhe ...
- linux下面误删root里面的文件夹 恢复方法
手残吧 /root/ 里面的文件删除了. .mkdir /root cp -a /etc/skel/.[!.]* /root 主要是吧 /etc/skel/里面的文件拷贝回去就行了~~~哈.. 转自: ...
- 在Linux,误删磁盘分区怎么恢复呢【转】
在我们运维工作中,频繁的操作,可能命令写入错误,造成磁盘分区的删除,那么应该怎么办呢?怎么恢复磁盘分区呢? 一不小心删除了磁盘分区.如下图,删除了sda磁盘的第一个分区,为系统boot分区,系统如果重 ...
- Linux busybox mount -a fstab
/*********************************************************************** * Linux busybox mount -a fs ...
- Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.删除"/sbin/ini ...
- Linux 通过 UUID 在 fstab 中自动挂载分区
Linux 通过 UUID 在 fstab 中自动挂载分区 summerm6关注 2019.10.17 16:29:00字数 1,542阅读 605 https://xiexianbin.cn/lin ...
- rocky8删除/etc/fstab 和/boot/所有文件,通过光盘救援模式恢复
rocky8删除/etc/fstab 和/boot/所有文件,通过光盘救援模式恢复 mkdir /rootdir 先通过df和lsblk确定那个分区是根,如果确定不了,就先挂载一个分区,查看里边的文件 ...
- 删除Linux的依赖库并进入救援模式恢复
删除Linux的依赖库并进入救援模式恢复 模拟一下依赖库文件被删,并进入救援模式恢复 系统:CentOS7 一.删除mv的依赖库文件 删除/lib64/libc.so.6 [root@centos7 ...
- Linux下用rm删除的文件的恢复方法
Linux下用rm删除的文件的恢复方法_Linux教程_Linux公社-Linux系统门户网站https://www.linuxidc.com/Linux/2008-08/14744.htm linu ...
随机推荐
- 【转】【Python】装饰器
1.闭包 >>> def outer(): ... x = 1 ... def inner(): ... ... return inner >>> foo = ou ...
- (笔记)Linux常用命令大全
系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS ...
- JUnit套件测试实例
“套件测试”是指捆绑了几个单元测试用例并运行起来.在JUnit中,@RunWith 和 @Suite 这两个注解是用来运行套件测试. 下面的例子演示这两个单元测试:JunitTest1 和 Junit ...
- EF5+MVC4系列(8) ActionResult的返回值
我们在MVC的代码中,经常会看到这样的一个 代码 可能有人会有疑问,既然我定义的是ActionResult,为什么返回值会是View方法呢? 其实这个View方法的返回值的类型是ActionResul ...
- Xianfeng轻量级Java中间件平台:一期开发计划
关于Xianfeng轻量级Java中间件平台,考虑到需要控制开发周期,通过分期开发的方式来实现一些基础的.常用的功能,这样有利于跟踪开发计划.一期的开发计划,主要实现的目标如下: 系统架构: 1.确定 ...
- 常用RAID简介_001
RAID定义 RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘, ...
- Java非递归的方式获取目录中所有文件(包括目录)
零.思路解析 对于给出的文件查看其下面的所有目录,将这个目录下的所有目录放入待遍历的目录集合中,每次取出该集合中的目录遍历,如果是目录再次放入该目录中进行遍历. 一.代码 /** * 非递归的方式获取 ...
- windows 找不到文件'igfxHK.exe'
现象:开机时windows报:windows 找不到文件'igfxHK.exe' 解决办法:win+r 输入services.msc 进入服务管理, 找到服务名称为: Intel(R) HD Gr ...
- Logback中文文档(一):介绍
什么是 logback Logback 为取代 log4j 而生. Logback 由 log4j 的创立者 Ceki Gülcü 设计.以十多年设计工业级记录系统的经验为基础,所创建的 logbac ...
- 【转】MongoDB学习笔记(查询)
原文地址 MongoDB学习笔记(查询) 基本查询: 构造查询数据. > db.test.findOne() { "_id" : ObjectId("4fd58ec ...