一个简单小例子来说一下Rescue营救模式

昨天不小心将/lib64下的一个动态库文件libc.so.6(很多命令都依赖的)给移动到了/root下,然后除了一些内部命令可用外,其余命令都不能用了,然后就想着看看重启可不可以修复,结果重启后就再也开不了机了,心想着这可咋整,要不用最快的方式进行快照恢复吧,结果老师就说了,不能使用快照,让我们使用Rescue营救模式进行恢复,然后在恢复的过程中就发现一个问题,

这个库文件的改变分两种:1.将它移动了位置;2.将它改名字了;在这里这两种情况归为一种解说,还有另外一种就是删除,而且Centos 6与Centos 7的营救模式还有点不一样,接下来分别讲一下:

本文总共分两部分:

一:在Centos 6下 恢复/lib64/libc.so.6

二:在Centos 7下 恢复/lib64/libc.so.6

一:在Centos 6下 恢复/lib64/libc.so.6:

如下图所示,将/lib64/libc.so.6移动到了/root/下。然后,像ls、ll命令已经不能用了,接下来,我们就去Rescue模式

一个简单小例子来说一下Rescue营救模式

首先我们要重启一下虚拟机,接下来就考验手速了:在出现如下图所示的界面时,立即将鼠标点进去并快速的按一下Esc键,(这个界面出现的时间比较短,一定要记得快速按键)

一个简单小例子来说一下Rescue营救模式

然后就会进入如下图所示的界面:这里选择第三项(用上下键进行移动)CD-ROM Drive(虚拟光盘设备),因为我们现在虚拟环境里已经没有了动态库文件libc.so.6,所以我们要借助虚拟光盘进行将我们的文件找回;

一个简单小例子来说一下Rescue营救模式

然后进入下面的界面,选择第三项营救模式下,enter键继续

一个简单小例子来说一下Rescue营救模式

接下来的两步都直接默认,enter继续,到第三个界面时提醒是否开启网络,点YES也行,这里我选择NO

一个简单小例子来说一下Rescue营救模式

接下来的这个选项就要好好看看,大概意思就是告诉你这里挂载在/mnt/sysimage目录下,(也就是说我们之前的根/,就是现在/mnt/sysimage),下面的四个选项,这里我们要做一些操作,所以这里选择默认的Continue选项;

一个简单小例子来说一下Rescue营救模式

接下来会再次告诉你,你现在在/mnt/sysimage下,如果你想改变你的root的目录,使用chroot /mnt/sysimage这条命令进行,我们只是想找回libc.so.6这个文件所以这里就直接OK就好了;

一个简单小例子来说一下Rescue营救模式

这里它会反复提醒你根目录的所在位置/mnt/sysimage,进去后要想进入/root下就要敲/mnt/sysimage/root

一个简单小例子来说一下Rescue营救模式

现在点击OK的话就会进入一个shell

一个简单小例子来说一下Rescue营救模式

如下图所示,这里可以看到第一个lib64下也可以看到libc.so.6,因为我们把libc.so.6移动到了/root下,所以我们可以再将它移回来,那我们要是在终端上将/lib64/libc.so.6删除了,在/mnt/sysimage/root下就没有这个文件了,所以我们这时就需要把刚进入shell时的目录下的lib64下的libc.so.6拷贝一份(cp lib64/libc.so.6 /mnt/sysimage/lib64/)就可以了,然后输入exit退出;再enter进入shell环境后,输入reboot重启虚拟机就好了(因为我们将文件破坏了,所以重启的时候可能有点慢,耐心等待呦。)

一个简单小例子来说一下Rescue营救模式

二:在Centos 7下 恢复/lib64/libc.so.6

这里可以结合上面的那张图一起看,我们一会要从虚拟环境中的lib64下 的libc.so.6给cp(拷贝)到/mnt/sysimage/lib64(也就是现在的/lib64/);

一个简单小例子来说一下Rescue营救模式

现在重启虚拟机,跟Centos 6差不多,手速要快哦,当出现滚动条后,立刻鼠标点进去并快速按下Esc键,出现的界面和Centos 6的一样,都是选择第三项进入CD-ROM Drive(虚拟光盘设备);enter之后,这里就和Centos 6 有所不同,没有直接将Rescue模式列出来,而是通过点击第三项Troubleshooting(错误排查);

一个简单小例子来说一下Rescue营救模式

然后进入如下界面,这里点击第二项Rescue模式,然后接下来的界面与Centos 6有所不同,Centos 6是弹框显示,这里直接就是命令行显示

一个简单小例子来说一下Rescue营救模式

这里的提示和Centos 6一样,所以这里要输入“1”,进行Continue,然后点击Enter,

一个简单小例子来说一下Rescue营救模式

这里提示和Centos 6里一样,都是告诉你挂载目录在/mnt/sysimage下,之前所有以根(/)起始的目录在这里都要以/mnt/sysimage起始;然后按Enter键,就可以进入shell环境了。

一个简单小例子来说一下Rescue营救模式

如下图所示,进入shell后,将当前目录下的lib64下的libc.so.6拷贝到/mnt/sysimage/lib64即可

一个简单小例子来说一下Rescue营救模式

最后一步比Centos 6 稍微少一步,就是在Centos 7下直接输入exit,按Enter键就可以直接重启, 不需要exit后再reboot重启(这个过程也需要几分钟的等待时间呦)。

OK,等重启结束,这个示例也结束了,用Rescue模式还原我们丢失的一些文件,而不用像快照恢复一样,因为快照拍摄后我们可能又建了很多文件,这时若使用快照恢复的话,那么这些文件就会丢失,当然,你也可以将它备份到其他虚拟机上,等快照恢复后再拷回来,这个需要根据具体情况而定,毕竟每个东西的存在都有它的价值。

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

(2)
M.SunM.Sun
上一篇 2017-08-21
下一篇 2017-08-21

相关推荐

  • 通过Nginx来安装一个discuz,软件并不是编译安装的

    这次由于时间有限,所以我就没有用编译安装来启动LMP,只有Nginx 是编译安装的 因为是在centos7上面安装的Nginx所以我们这里由于能力有限,暂时不能将其加入开机启动,日后我会进行改进,将其加入开机启动。这里我们给出Nginxd的编译选项及环境   yum groupinstall "Development&…

    Linux干货 2016-10-25
  • 安全和加密

    安全基础仿冒别人给某人发邮件telnet 127.0.0.1 25helo a.com 命令mail from:god@heaven.com 从某处发来的邮件rcpt to:root 给某人发邮件data 数据subject:hello 邮件名I miss you 邮件正文How old are you. 点代表结束quit redhat5普通用户提升管理员…

    Linux干货 2018-01-17
  • 网络管理实战(子网划分、单网卡多IP、多网卡单IP、Linux路由实现)

        1、某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子 公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为?          分析过程:C类地址标准的掩码为24位,因为有6个子公…

    Linux干货 2016-09-05
  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@CentOS7 ~]# fdisk /dev/sdb Command (m for help): n Select…

    Linux干货 2016-08-22
  • 进程查看及管理

        在Linux系统中,触发任意一个事件时,系统都会将它定义为一个进程,并且给予这个进程一个ID,称为PID,同时依据触发这个进程与用户相关的属性关系,给予这个PID一组有效的权限设置。 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。…

    Linux干货 2016-11-27
  • Linux nginx 服务

                           Linux nginx 服务 Nginx服务简介:      NGINX :是一个自由、开源、高性能、轻量级的HT…

    系统运维 2016-11-18