1、光盘修复模式概念

Linux系统的光盘修复模式,也叫光盘救援模式,或者叫光盘安全模式都可以。

Linux系统的最终修复模式就是光盘修复模式(进入光盘下的安全模式启动系统),光盘修复模式会绕开系统的硬盘启动,也就是说拿光盘做为启动盘进行系统的启动,这样的话硬盘上所有的内容都没有被系统加载,最后把硬盘作为数据盘,挂载到光盘系统下,就可以修改系统硬盘上的数据了。通过光盘修复模式登陆到系统后,一些系统上的错误,理论上都可以进行修复(理论上)。

注意:

光盘修复模式的前提也是拿到本机,虽然Linux系统有修复模式,但是你最好能不用就别用,我们不应该把宝压在修复模式上,而是应该压在完整的操作规范,合理的权限划分等这些方面。不要随意操作,不要想着出现问题再进行修复,只要是修复就代表系统就已经出现问题了。

2、光盘修复模式修复系统问题

(1)准备系统光盘

首先需要有系统光盘,或系统修复光盘。

我们这里只需要把CentOS 6.8的第一张光盘放入光驱,在关机的状态下进行操作。

如下图所示:

(2)进入BIOS

开启虚拟机,选择启动时进入BIOS。

如下图所示:

(3)修改BIOS的启动顺序

修改BIOS的启动顺序,让系统从光盘启动。

1)选择Boot选项

2)光标移动到CD-ROM上

+号,向上移动到第一位。

3)选择Exit界面

选择第一选项保存并退出。

(4)进入光盘修复模式

1)系统重新启动后,选择第三项Rescue installed systen(救援已安装的系统)

稍等一会就会进入到光盘启动系统的设置中。

2)首先选择系统语言。

这里要注意,默认选择English。

这里是Linux系统的纯字符界面,不能选择中文,不支持。

3)键盘默认选择美式键盘。

tab键进行切换,按空格或者回车进行确认。

4)光盘安全启动模式是否需要启动网络。

需要你选择,光盘安全启动模式是否需要启动网络。

启不启动都可以,反正光盘修复模式是需要拿到本机进行操作的,选择不启动就很好。

5)在救援模式下需要进行的操作。

需要你选择在救援模式下,你需要进行什么样的操作。

点击Continue继续。

  • Continue:可以对系统进行任何所需的更改,如果要继续此步骤,请选择“继续”。
  • Read-Only:以只读方式挂载文件系统。
  • Skip:表示跳出光盘安全模式,直接进行系统安装。
  • Advanced:高级选项。

如下图所示:

选择OK

选择OK

6)选择通过打开shell的方式进入安全模式。

7)可以看到shell的命令行模式出现了。

上图中可以看到,现在出现的提示符和我们常规的Linux提示符是不一样的。是因为光盘的修复模式中的环境变量和配置文件都没有加载,所以看到bash-4.1#这样的提示符是正常的。

(5)修复系统

我们是通过光盘启动的光盘修复模式,所以我们现在所在的根目录不是真正的系统根目录,而是光盘的模拟根目录。系统根目录被当成外来设备放在了/mnt/sysimage/目录中。(重点)

所以,Linux系统真正的根目录,是自动被挂载在/mnt/sysimage/目录上,我们此时的目录是在光盘的模拟根目录中,我们要切换到/mnt/sysimage/目录中,来执行我们需要的系统修复工作。

需要执行chroot命令,chroot命令的作用是change root directory改变系统根目录的意思。把我们现在的所在目录移动到真正的系统根目录(换句话说就是把根目录暂时移动到某个目录当中。)。

执行命令:bash-4.1 # chroot /mnt/sysimage/

只要该命令执行完,我所在的访问目录就是真正的系统盘了。

我们可以从上图中看到,执行完bash-4.1 # chroot /mnt/sysimage/命令后,系统提示符发生了一些变化,还有就是根目录中的内容也发生了变化,执行完命令之后看到的目录中的文件就和我们实际系统中根目录中的文件就一样了。

这个时候你就可以修复原Linux系统中出现的问题了,系统有任何错误都可以直接修复。

比如重要系统文件丢失,导致系统无法正常启动。比如如果忘记了密码,直接执行丢改root用户密码就可以。比如如果系统默认的运行级别修改错了,直接编辑/etc/inittab文件进行修改就可以了。再比如如果是硬盘信息配置错误导致系统启动不了,修改/etc/fstab文件就可以。

(6)修复系统实操

我们就拿上边说的重要系统文件丢失,导致系统无法启动来进行修复。

假设把/etc/inittab文件丢失了,我们通过系统启动过程知道这个文件是定义系统默认运行级别的,如果丢失了这个文件,系统就不能正常启动。

操作流程如下:

  • 改变根目录

    bash-4.1# chroot/mnt/sysimage
  • 进入root目录。因为默认进入的是/目录,如果不进入root,提取的inittab文件是会报错。

    sh-4.1# cd/root
  • 查询/etc/inittab文件属于哪个包。如果系统中文件丢失不能查询,需要通过其他Linux

    系统查询。
    sh-4.1# rpm -qf /etc/inittab
    initscripts-9.03.31-2.el6.centos.1686
  • 建立挂载点

    sh-4.1# mkdir /mnt/cdrom
  • 挂载光盘

    sh-4.1# mount /dev/sr0 /mnt/cdrom
  • 提取inittab文件到当前目录

    sh-4.1# rpm2cpio /mnt/cdrom/Packages/ini tscripts-9.03.31-2.el6.centos.1686.rpm cpio -idv ./etc/inittab
  • 复制inittab文件到指定位置

    sh-4.1# cp etc/inittab /etc/inittab

    注意:

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

(7)总结

在光盘修复模式下,如果你能确认系统到底出现了什么问题,就把它修复回来就好了。怕的就是你也不知道是什么原因出现的系统问题,这样即使你进入了系统的光盘修复模式,也很难进行系统的修复,如果修复不了就只能重装系统了。

『学了就忘』Linux启动引导与修复 — 74、Linux系统的修复模式(光盘修复模式)的更多相关文章

  1. 『学了就忘』Linux启动引导与修复 — 68、Linux系统运行级别

    目录 1.Linux系统运行级别介绍 2.查看运行级别 3.修改当前系统的运行级别 4.系统默认运行级别 5./etc/rc.d/rc.local文件说明 1.Linux系统运行级别介绍 Linux默 ...

  2. 『学了就忘』Linux启动引导与修复 — 69、启动引导程序(grub)

    目录 1.启动引导程序(Boot Loader)简介 2.启动引导程序grub的作用 3.启动引导程序grub的位置 4./grub目录中其他的文件简单介绍 提示: 简单地说,Boot Loader就 ...

  3. 『学了就忘』Linux启动引导与修复 — 70、grub启动引导程序的配置文件说明

    目录 1.grub中分区的表示方法 2.grub的配置文件 3.grub的配置文件内容说明 (1)grub的整体设置 (2)CentOS系统的启动设置 1.grub中分区的表示方法 在说grub启动引 ...

  4. 『学了就忘』Linux启动引导与修复 — 72、Linux系统的修复模式(单用户模式)

    目录 1.单用户模式常见的错误修复 2.通过单用户模式修改系统密码 (1)进入grub启动引导程序中 (2)编辑相应的系统启动内容 (3)编辑grub配置文件内容 (4)启动系统 (5)修改root用 ...

  5. 『学了就忘』Linux启动引导与修复 — 71、grub启动引导程序的加密

    目录 1.什么是grub加密 2.grub加密步骤 3.grub加密的lock属性 1.什么是grub加密 上篇文章说了,系统在开机的时候,有一个5秒的读秒时间,方便你进入到grub界面中. 如下图所 ...

  6. 『学了就忘』Linux文件系统管理 — 66、通过图形界面进行LVM分区

    目录 1.选择自定义分区 2.分配boot分区 3.创建LVM物理卷 4.生成卷组 5.创建逻辑卷 6.格式化安装 我们先用新安装Linux系统时的图形化界面,来演示一下LVM逻辑卷如何进行分区. 提 ...

  7. 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)

    目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...

  8. 『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同

    目录 1.Linux严格区分大小写 2.Linux一切皆文件 3.Linux不靠扩展名区分文件类型 4.Linux中所有的存储设备都必须在挂载之后才能使用 5.Windows下的程序不能直接在Linu ...

  9. 『学了就忘』Linux文件系统管理 — 60、Linux中配置自动挂载

    目录 1.自动挂载 2.如何查询系统下每个分区的UUID 3.配置自动挂载 4./etc/fstab文件修复 上一篇文章我们说明了手动分区讲解,对一块新硬盘进行了手动分区和挂载. 但是我们发现重启系统 ...

随机推荐

  1. 大爽Python入门教程 3-5 习题

    大爽Python入门公开课教案 点击查看教程总目录 1 求平方和 使用循环,计算列表所有项的平方和,并输出这个和. 列表示例 lst = [8, 5, 7, 12, 19, 21, 10, 3, 2, ...

  2. 大白话讲解Mybatis的plugin(Interceptor)的使用

    mybatis提供了一个入口,可以让你在语句执行过程中的某一点进行拦截调用.官方称之为插件plugin,但是在使用的时候需要实现Interceptor接口,默认情况下,MyBatis 允许使用插件来拦 ...

  3. 从零搭建vsftpd

    先吐槽一下这个工具,配置繁琐,限制规则复杂,报错信息不够详细,学起来吃力. 准备工作 [root@vsftp-server ~]# mkdir /data/ #创建ftp目录 [root@vsftp- ...

  4. centos7系列的网络yum源配置

    因为新安装centos机器yum比较旧,主要是对网易源进行配置,其它源也差不多.我是在securecrt远程ssh工具操作的,非虚拟机软件上. yum install lszrz -y   安装上传工 ...

  5. Java设计模式之(四)——原型模式

    1.什么是原型模式 Specify the kinds of objects to create using a prototypical instance,and create new object ...

  6. [hdu6974]Destinations

    注意到一个人的三条链一定不会同时选(忽略仅选一个终点的限制),因为其有公共点(起点) 换言之,问题相当于给定$3m$条链,选择$m$条没有公共点的链,并最小化代价和 进一步的,显然也不存在多于$m$条 ...

  7. [loj3527]地牢游戏

    当英雄能力值$\ge 10^{7}$时,即能战胜所有敌人,简单预处理即可 若英雄能力值在$[2^{k},2^{k+1})$中,对敌人分类讨论: 1.若$s_{i}\le 2^{k}$,其必然会战胜这些 ...

  8. [loj2091]小星星

    (分别用$E_{T}$和$E_{G}$表示树和图的边集) 简单分析,可以发现题目即求排列$p_{i}$的数量,满足$\forall (x,y)\in E_{T},(p_{x},p_{y})\in E_ ...

  9. java的String参数格式化

    String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. form ...

  10. 目前国内UI设计师的发展现状如何?

    在分析这个问题之前,我们先来说说如何优秀的UI设计师所需要具备的素质是什么,只有做到了以下几点,才有资格在这个行业生存下去的能力,也才有机会展望行业的未来前景. 一位合格的UI设计师必须做到以下3点: ...