Linux救援模式是什么,如何使用

一、Linux 救援模式是什么?

Linux 救援模式是一个独立的、精简的 Linux 系统环境。它通常从以下介质加载:

  • 系统安装光盘/USB(最常见)
  • 专用的救援磁盘(如 SystemRescueCd)
  • • 网络启动(PXE)

它的核心目的是:在不启动你硬盘上原本的、已损坏的 Linux 系统的情况下,为你提供一个可用的 Shell 环境,让你能够挂载原来的系统分区,并进行故障排查和修复。

** rescue mode 和 emergency mode 的区别:**

  • 救援模式 会尝试自动挂载 你的根文件系统到 /mnt/sysimage(但处于只读模式),并为你提供 root shell。它会尝试加载一些必要的驱动和网络。
  • 紧急模式 更加基础。它不会尝试挂载你的根文件系统,也不会设置任何东西(如网络),只是给你一个最简的 root shell,一切都需要你手动操作。当救援模式也失败时,可以尝试紧急模式。

二、什么情况下需要使用救援模式?

当你遇到以下问题时,救援模式很可能能帮到你:

    1. 文件系统损坏fsck 无法自动修复,需要手动干预。
    1. GRUB 引导程序损坏或丢失 :系统无法启动,黑屏提示 grub rescue> 或直接进入 BIOS。
    1. 误删关键系统文件 :如 /bin/bash, /etc/fstab 等。
    1. 忘记 root 密码:需要重置。
    1. 错误的配置文件 :错误的 /etc/fstab 配置导致系统无法挂载分区。
    1. 驱动问题:新安装的驱动导致内核恐慌(Kernel Panic),无法进入系统。
    1. 修复被覆盖的 MBR:Windows 安装后覆盖了 GRUB。

三、如何使用救援模式(以 CentOS/RHEL 为例)

以下是使用系统安装盘进入救援模式的标准流程

第 1 步:准备安装介质并启动
    1. 从官网下载与你系统版本匹配的 ISO 镜像(如 CentOS 7/8, RHEL 8/9),并制作成启动 U 盘。
    1. 将 U 盘插入故障服务器,进入 BIOS/UEFI 设置,确保从 U 盘启动
    1. 启动后,你会看到系统安装界面。
第 2 步:选择救援模式
    1. 在安装界面,选择语言和键盘布局(通常保持英文即可)。
    1. 接下来会看到一个名为 "Installation Summary" 或类似标题的界面。
    1. 找到并选择 "Troubleshooting" (故障排除)选项。
    1. 在故障排除菜单中,选择 "Rescue a CentOS system""Rescue a Red Hat Enterprise Linux system"
第 3 步:配置救援环境

系统会加载一个小型 Linux 环境,然后出现一个提示符,提供几个选项:

    1. 1) Continue继续 。系统会尝试自动查找并挂载你硬盘上的 Linux 安装,并将其挂载到 /mnt/sysimage。这是最常用的选项
    1. 2) Read-Only:以只读方式挂载,防止任何意外修改。
    1. 3) Skip跳过 。不挂载任何东西,直接进入命令行。如果你需要手动操作(比如修复 /etc/fstab),或者系统自动挂载失败,可以选择这个。

绝大多数情况下,我们选择 1) Continue

系统会提示:Your system has been mounted under /mnt/sysimage.(你的系统已被挂载到 /mnt/sysimage 下)。

第 4 步:切换根环境(Chroot)

这是最关键的一步!仅仅挂载了原来的系统还不够,你需要将当前的根目录"切换"到原来系统的根目录上,这样你执行的修复命令(如重装内核、修改密码)才会实际作用于原来的系统。

系统会提示你执行以下命令来完成切换:

代码语言:javascript

AI代码解释

复制代码
chroot /mnt/sysimage

执行后,你的命令行提示符可能会发生变化。现在,你所在的 / 目录就是你原来硬盘上的根文件系统了。

第 5 步:开始修复

现在,你可以像正常登录系统一样执行任何命令了。以下是一些常见修复示例:

  • 修复 GRUB:

代码语言:javascript

AI代码解释

复制代码
# 对于 Legacy BIOS 启动:
grub2-install /dev/sda

# 对于 UEFI 启动(确保 EFI 分区已挂载,通常是 /boot/efi):
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
# 重新生成配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
  • 重置 root 密码:

代码语言:javascript

AI代码解释

复制代码
passwd root

然后输入两遍新密码。

  • 检查并修复文件系统:

代码语言:javascript

AI代码解释

复制代码
# 首先卸载要检查的分区(如果已挂载)
umount /dev/sda1
# 然后修复
fsck -y /dev/sda1
  • 检查 /etc/fstab 文件:

代码语言:javascript

AI代码解释

复制代码
cat /etc/fstab

确保没有错误的条目。

第 6 步:退出并重启
    1. 修复完成后,退出 chroot 环境:

代码语言:javascript

AI代码解释

复制代码
exit
    1. 退出救援模式的 Shell:

代码语言:javascript

AI代码解释

复制代码
exit
    1. 系统会回到之前的界面,取出安装 U 盘,并选择 "Reboot" 重新启动计算机。

四、对于 Ubuntu/Debian 系统

Ubuntu/Debian 的安装盘也提供救援模式,通常称为 "Recovery Mode""Rescue Mode"

    1. 从安装盘启动。
    1. 选择语言后,在主菜单选择 "Try or Install Ubuntu"
    1. F10C 键进入命令行(具体提示看屏幕下方)。
    1. 手动挂载根分区(过程更接近上述的"Skip"选项)
相关推荐
2601_960567962 小时前
电商套图自动化效率的工程量化分析——从逐张生成到批量套图的架构演进
运维·架构·自动化
吳所畏惧3 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈3 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
HiDev_3 小时前
【非标自动化】2、认识元器件(确定目标)
运维·自动化
维天说4 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zhang~Ling4 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind4 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的阿森4 小时前
鸿蒙三方库 | harmony-utils之PreferencesUtil首选项数据监听详解
服务器·华为·harmonyos·鸿蒙·huawei
爱写代码的森4 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
中微极客4 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能