Linux rescue救援(光盘修复)模式详解

http://c.biancheng.net/view/5856.html

如果系统错误已经导致单用户模式不能进入了,那么是否需要重新安装 Linux 系统?不用着急,为了应对单用户模式也无法修复的错误,Linux 系统提供了 rescue 救援(光盘修复)模式。

rescue 救援模式的原理是不再使用硬盘中的文件系统启动 Linux,而是使用光盘中的文件系统启动 Linux。这样,就算硬盘中的 Linux 系统已经不能登录了(单用户也不能登录),rescue 救援还是可以使用的。当然,此模式也不是万能的,这时就只能重新安装  Linux 系统了。

如何进入rescue模式

首先需要有系统光盘或系统修复光盘。这里只需要把 CentOS 6.x 的第一张光盘放入光驱,然后重启系统,修改 BIOS 的启动顺序,让系统从光盘启动,就会看到如图 1 所示的光盘启动界面。



图 1 光盘启动界面


在这个界面上选择 "Rescue installed system" 进入rescue 救援,然后系统就会提示选择语言,如图 2 所示。



图 2 语言选择界面


选择 "English",接下来就会让我们选择键盘,如图 3 所示。



图 3 键盘选择界面


选择 "US",即美式标准键盘,之后会进入选择修复模式所在介质界面,如图 4 所示。



图 4 选择修复模式所在介质界面


选择光盘介质,然后确定,就会进入网络配置界面,如图 5 所示。



图 5 网络配置界面


选择"No",即不启用网络配置,就会进入 Rescue 模式选择界面,如图 6 所示。



图 6 Rescue模式


选择 "Continue" 进入光盘修复模式,在之后弹出的界面中选择 "OK",就会进入启动功能选择界面,如图 7 所示。



图 7 启动功能选择界面


选择 "shell Start shell",就会进入光盘修复模式,看到命令提示符。

rescue模式常见的错误修复

利用 rescue 救援模式,主要可以修复什么错误呢?其实能在单用户模式中修复的错误都能在该模式中修复,当然还可以修复一些在单用户模式中无法修复的错误。

1) 多系统并存,GRUB被覆盖

还记得在前面章节中讲解的手工安装 GRUB 吗?有一种情况就是先安装 Linux,后安装 Windows,导致 MBR 中的启动引导程序被 Windows 引导程序覆盖,需要重新安装 GRUB 引导程序。

重新安装 GRUB 的过程已经讲过了,但是重新安装 GRUB 的命令需要在 rescue 模式中执行。我们重新写一遍覆盖安装 GRUB 的过程,如下:

#放入光盘重启,进入 rescue 模式
sh-4.1#grub
#启动GRUB交互界面。注意到了吗?提示符不一样了,那是因为从光盘启动了系统,所以环境变量配件文件没有生效
gmb> root (hd0.0)
#设置GRUB的主目录
grub>setup (hd0)
#因为直接把GRUB安装到MBR中,所以不需要指定分区
grub> quit
#退出

这样GRUB覆盖安装的实验才算完成了。

2) 重要系统文件丢失,导致系统无法启动

如果系统中的重要系统文件丢失,则会导致系统无法正常启动,这时也可以利用 rescue 模式来进行修复。我们假设 /etc/inittab 文件丟失了,通过系统启动过程知道这个文件是于定义系统默认运行级别的,如果丟失了这个文件,那么系统当然不能正常启动,这时就需要进入 rescue 模式中,然后执行 chroot 命令。命令格式如下:

[root@localhost ~]#chroot 目录名

chroot 命令的作用是改变系统根目录,也就是可以把根目录暂时移动到某个目录当中。我们是通过光盘启动的 rescue 模式,所以我们现在所在的根目录并不是真正的系统根目录,而是光盘的模拟根目录,真正的系统根目录被当成外来设备放在了 /mnt/sysimage/ 目录中。

这时,就需要使用 chroot 命令把我们现在所在的根目录改成真正的系统根目录。命令如下:

bash-4.1# chroot /mnt/sysimage

执行这条命令之后,当前的根目录就是真正的系统根目录了。如果系统有任何错误,则可以直接修复。比如 /etc/inittab 文件丟失了。这时如果我们备份过系统重要文件,那么只需要把备份文件复制到 /etc/ 目录下即可。如果没有备份的文件,就需要从 RPM 包中提取 inittab 文件,然后复制。具体命令如下:

bash-4.1# chroot /mnt/sysimage
#改变主目录
sh-4.1#cd/root
#进入root目录。因为默认进入的是/目录,所以如果不进入root目录,那么一会提取的inittab文件会报错
sh-4.1# rpm -qf /etc/inittab
initscripts-9.03.31-2.el6.centos.i686
#查询一下/etc/inittab文件属于哪个包。如果系统中文件丢失不能查询,则需要通过其他Linux系统查询
sh-4.1# mkdir /mnt/cdrom
#建立挂载点
sh-4.1# mount /dev/sr0 /mnt/cdrom
#挂载光盘
sh-4.1# rpm2cpio /mnt/cdrom/Packages/initscripts-9.03.31-2.el6.centos.i686.rpm|cpio -idv ./etc/inittab
#提取inittab文件到当前目录
sh-4.1# cp etc/inittab /etc/inittab
#复制inittab文件到指定位置

注意,在执行此命令时不能将文件直接恢复到 /etc/ 目录,只能提取到当前目录,且恢复的文件名称所在路径要写完整的绝对路径。提取文件成功后,将其复制到根分区所在的 /mnt/sysimage/ 目录下的相应位置即可。

系统修复模式是维护 Linux 的有力武器,本节通过两个例子讲解了它的应用方法,希望能够给读者一点启示。解决 Linux 系统启动的故障,必须充分理解 Linux 的引导过程,才能够对故障进行有效的判断和处理。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CentOS 7救援模式是一种紧急情况下修复操作系统的模式。在遇到系统故障、引导问题或其他无法启动的情况下,我们可以进入救援模式来进行修复。 首先,我们需要从启动菜单中选择进入救援模式,通常会显示在启动选项列表中。选择该选项后,系统会重新启动,并进入到救援模式。 一旦进入救援模式,系统会提示你输入root用户的密码,以便获得root用户权限。在输入正确的密码后,我们可以执行各种救援操作。 常见的救援操作包括修复引导问题,修复文件系统错误,重新安装损坏的软件包等。这些操作可以通过命令行工具来完成,例如fsck命令用于修复文件系统错误,chroot命令用于在救援环境中挂载和操作root文件系统。 在修复完成后,我们可以执行reboot命令来重新启动系统,以确保修复效果生效。 在进行CentOS 7救援模式修复系统时,建议备份重要数据并了解所执行的操作的风险和潜在影响。此外,如果你对救援模式不太熟悉或不确定如何进行修复,请寻求专业人士的帮助。 ### 回答2: CentOS 7救援模式是一种用于修复系统的功能强大的工具。在故障发生时,可以使用这种模式来查找并解决问题。 要进入CentOS 7救援模式,你需要重启计算机并选择从Grub菜单中的相关选项启动。在启动过程中,你将看到一条提示信息,指示你按下某个键进入救援模式。 进入救援模式后,你将被提示选择所需的语言、键盘布局和其他一些配置选项。完成后,你将进入一个命令行界面,可以执行各种系统维护和修复任务。 在救援模式中,你可以执行各种任务,例如修复损坏的启动加载程序、修复损坏的文件系统、恢复被删除的文件、重置用户密码等。你可以使用各种命令和工具,如fsck、chroot、grub-install、passwd等来完成这些任务。 修复系统的具体步骤可能因问题和要解决的情况而异。通常情况下,你首先可以使用fsck命令来检查和修复文件系统错误。如果启动加载程序有问题,你可以使用grub-install命令重新安装引导加载程序。如果你遇到密码问题,你可以使用passwd命令来重置用户密码。 在进行任何操作之前,强烈建议先备份重要数据,以防止意外损坏或丢失。 总之,CentOS 7救援模式是一个非常有用的工具,可以帮助修复各种系统问题。但请谨慎操作,并确保你了解每个命令和操作的影响,以避免进一步损坏系统。如果你对系统修复不确定,建议寻求专业人士的帮助。 ### 回答3: CentOS 7救援模式是一种用于修复系统的模式,当系统出现问题无法正常启动或运行时,可以使用救援模式来恢复系统。以下是使用救援模式修复系统的步骤: 1. 首先,启动你的CentOS 7系统。在GRUB启动菜单中选择你要修复的CentOS 7版本,并按下"e"键进入编辑模式。 2. 在编辑模式中,找到以"linux16"开头的行,将其替换为"linux16 rescue"。然后按下Ctrl + x键启动救援模式。 3. 系统将提示你输入root密码,输入正确的密码后按下Enter键。如果你没有设置root密码,则直接按下Enter键。 4. 进入救援模式后,系统会自动加载必要的驱动程序和文件系统。一旦加载完成,你将看到一个类似于命令行的提示符。 5. 在这个提示符下,你可以使用各种命令来修复系统。例如,你可以使用"fsck"命令来检查和修复文件系统上的错误,使用"chroot"命令来切换到已安装的系统环境,然后执行其他维护任务,如重新安装引导程序。 6. 修复完成后,你可以输入"exit"命令退出救援模式,并重新启动你的系统。 需要注意的是,在救援模式下进行任何操作都要小心谨慎,确保了解每个命令的作用和影响。如果你不确定某个命令的用法,请参考相关文档或向专业人士寻求帮助。此外,建议在进行任何重要操作之前备份你的数据,以防止意外数据丢失。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值