注:本文为 "Linux 系统应急维护" 相关合辑。
图片清晰度受引文原图所限。
略作重排,如有内容异常,请看原文。
1 概述
单用户模式、救援模式、紧急外壳等均为 Linux 系统的应急维护模式,主要应用于系统因错误配置无法正常启动 或root 管理员密码遗忘的场景。其中,CentOS 7/8 与 RedHat 8 系统的操作逻辑完全通用,无版本差异化适配要求。
各类应急模式的定位如下:
- 单用户模式:系统本地引导的最小化运行环境,默认以
root权限登录,无网络服务加载,操作效率高,为优先选择的应急方案。 - 救援模式:通过系统安装介质(光盘/U盘)引导的独立环境,将本地系统盘作为挂载磁盘使用,适用于单用户模式无法进入的极端故障场景,也可用于系统故障时的文件备份。
- 紧急外壳:仅挂载根文件系统为只读模式,不启动任何服务,适用于根文件系统损坏、init 进程故障等极端场景。
- Live 系统:完全独立于本地系统的运行环境,运行在内存中,适用于本地系统无法引导、数据救援、系统修复等场景。
2 Linux 系统运行级别与 systemd 目标说明
2.1 传统运行级别(run-level)
Linux 系统定义了 7 个标准运行级别,各级别对应固定的系统运行状态:
0 :关机状态
1 :单用户模式(无密码验证、root 权限、无网络,用于密码重置/系统修复)
2 :多用户模式,无网络服务
3 :完全多用户模式,加载全部网络服务,纯字符界面
4 :系统保留级别,无默认用途
5 :图形化界面模式,加载全部服务
6 :系统重启状态
进入单用户模式需要在实机上操作,且进入单用户模式需要重启服务器,重启后远程连接早已中断,因此无需担心他人远程随意篡改密码。
2.2 systemd 系统目标(target)
现代 Linux 系统采用 systemd 管理服务,运行级别对应 systemd 目标:
runlevel1.target→rescue.target:救援目标,挂载所有本地文件系统,启动基本服务runlevel0.target→poweroff.target:关机目标runlevel6.target→reboot.target:重启目标emergency.target:紧急外壳目标,仅挂载根分区为只读模式
3 单用户模式重置 root 密码(常用方案)
3.1 进入 GRUB 启动项编辑界面
系统开机启动时,停留在 GRUB 引导菜单页面,按下键盘按键 e,进入内核启动参数的临时编辑界面。

3.2 修改内核启动参数(区分 BIOS/UEFI 固件模式)
3.2.1 固件模式判断方法
执行以下命令可在系统正常运行时提前判断固件类型,应急场景可跳过此步骤,直接根据 GRUB 界面显示的指令选择对应修改方式:
bash
# 存在此目录 → UEFI 启动;不存在 → BIOS 启动
ls /sys/firmware/efi
3.2.2 内核指令区分
- BIOS(Legacy)固件环境:内核参数行以
linux16开头; - UEFI 固件环境:内核参数行以
linuxefi开头(CentOS 8/RHEL 8 等系统常见)。
两种环境的修改逻辑完全一致,仅指令名称不同,二选一配置即可,无需重复配置。
3.2.3 配置方式一(Recommend,一步到位)
- 将参数行内的只读挂载标识
ro修改为 读写挂载标识rw; - 在该行的末尾位置 添加启动参数:
init=/bin/sh- BIOS 示例:
linux16 /vmlinuz-3.10.0 rw root=/dev/mapper/centos-root init=/bin/sh - UEFI 示例:
linuxefi /vmlinuz-4.18.0 rw root=/dev/mapper/centos-root init=/bin/sh
- BIOS 示例:
3.2.4 配置方式二(传统兼容方式)
- 保留参数行内的
ro无需修改; - 在该行的末尾位置 添加启动参数:
rd.break- BIOS 示例:
linux16 /vmlinuz-3.10.0 ro root=/dev/mapper/centos-root rd.break - UEFI 示例:
linuxefi /vmlinuz-4.18.0 ro root=/dev/mapper/centos-root rd.break
- BIOS 示例:
补充说明:
ro代表 root 分区只读挂载,rw代表 root 分区读写挂载;修改为
rw后,进入单用户模式可直接修改系统文件,无需执行二次挂载命令。
3.3 启动单用户模式
内核参数修改完成后,按下组合键 Ctrl + x,系统将基于修改后的参数启动,直接进入单用户模式的 Shell 交互界面。

3.4 单用户模式内的前置环境配置
3.4.1 若选择「配置方式一」(init=/bin/sh)
进入界面后,当前 Shell 已默认拥有完整的 root 权限,执行命令 id 可验证权限身份,无需额外操作,直接跳转至 3.5 节修改密码。

3.4.2 若选择「配置方式二」(rd.break)
进入界面后,系统默认将 /sysroot 挂载为只读模式,需执行以下命令完成权限与挂载配置,步骤如下:
bash
# 重新以读写模式挂载 /sysroot 分区
mount -o remount,rw /sysroot
# 切换系统根环境至本地系统,获取 root 操作权限
chroot /sysroot
3.5 执行 root 密码重置操作
在完成上述前置配置的单用户 Shell 中,执行密码修改命令,按照提示输入新密码并二次确认即可:
bash
# 直接修改 root 用户密码,CentOS 7/8 可省略 root 关键字,直接执行 passwd
passwd root
注意事项:
密码设置需符合系统复杂度要求(建议长度 ≥8 位,包含数字+字母),若提示密码过于简单,可执行
passwd --stdin root强制设置简单密码。
3.6 解决中文乱码(可选优化)
若操作过程中出现中文乱码,影响命令输入与结果查看,回到 3.2 节的 linux16/linuxefi 参数行,将参数内的 zh_CN 字符集修改为 en_US 即可解决,不影响操作。
3.7 刷新 SELinux 上下文标记
CentOS/RedHat 系统默认启用 SELinux 安全机制,密码修改后必须执行以下命令,否则重启后新密码无法生效,且会出现「新旧密码均无法登录」的故障:
bash
# 在根目录创建自动重标记触发文件,重启时系统将自动刷新 SELinux 上下文
touch /.autorelabel
原理说明:
/.autorelabel文件会触发系统重启时的 SELinux 文件系统重标记,使密码文件的权限与安全上下文匹配,保证密码验证机制正常工作;该文件在重标记完成后会被系统自动删除。
3.8 重启系统并验证密码
完成所有配置后,执行以下任一命令均可重启系统,重启过程中会执行 SELinux 重标记,耗时约 1~3 分钟,请勿中断重启过程:
bash
# 方式1:标准系统初始化重启,推荐使用
exec /sbin/init
# 方式2:直接强制重启(部分环境下适用)
reboot -f
重启完成后,使用新设置的 root 密码即可正常登录系统。
3.9 补充场景:CentOS 7 内核参数 init=/sysroot/bin 适配
部分 CentOS 7 系统在编辑 linux16 行时,可将参数修改为 rw init=/sysroot/bin,操作后按 Ctrl + x 进入系统,后续执行以下命令完成密码修改:
bash
# 切换系统根环境
chroot /sysroot
# 修改 root 密码
passwd root
# 刷新 SELinux 上下文
touch /.autorelabel
# 重启系统
reboot
对应操作界面参考:




4 单用户模式常见报错与解决方案
4.1 报错现象:开机提示 SMBus Host Controller not enabled!
该报错为内核硬件识别警告,无需执行任何操作,等待系统自动加载完成即可,强行操作会导致引导中断。
4.2 故障现象:无法进入单用户模式、新旧密码均失效
此为高频故障,多因修改内核参数时遗漏配置、未执行 touch /.autorelabel 或中途中断重启导致。
解决方案:
- 重新进入 GRUB 编辑界面(开机按
e),找到linux16/linuxefi行; - 在该行的
rd.lvm.lv字段前方 添加参数rw; - 在该行的末尾 补充参数
init=/bin/sh; - 按
Ctrl + x进入单用户模式,重新执行密码修改与 SELinux 刷新操作。

4.3 补救命令:手动重挂载根分区
若进入单用户模式后,执行 passwd 提示「只读文件系统」,说明根分区仍为只读挂载,执行以下命令即可修复:
bash
# 通用命令,适配所有单用户模式场景
mount -o remount,rw /
5 救援模式重置 root 密码(兜底方案)
当单用户模式因内核损坏、GRUB 引导故障、文件系统损坏等原因无法进入时,使用救援模式进行兜底修复,该模式需依赖 系统安装光盘/U盘 作为引导介质。
5.1 从安装介质引导系统
- 将系统安装光盘/U盘插入主机,在 BIOS/UEFI 引导项中,将光盘/U盘设置为第一启动项;
- 进入安装介质的引导菜单后,选择第 3 项
Troubleshooting(故障排除);

- 在故障排除子菜单中,选择
Rescue a Red Hat Enterprise Linux system(拯救系统)。

5.2 挂载本地系统分区
- 进入救援模式引导流程后,系统会自动检测本地磁盘的系统分区,最终弹出交互选项;
- 选择第 1 项
Continue(继续),输入数字1并回车,系统将本地的系统根分区自动挂载至/mnt/sysroot目录下。

说明:救援模式的运行环境为安装介质内的迷你系统,本地硬盘的系统文件仅作为「挂载磁盘」存在,所有对原系统的修改都需在
/mnt/sysroot目录内执行。
5.3 重置 root 密码(两种有效方法,任选其一)
方法一:切换根环境修改密码(推荐,规范无风险)
bash
# 切换当前 Shell 的根目录至本地系统分区,获取原系统的 root 权限
chroot /mnt/sysroot
# 修改原系统的 root 密码
passwd root
# 刷新 SELinux 上下文,必执行步骤
touch /.autorelabel
# 退出切换的根环境
exit
方法二:直接编辑密码配置文件(应急方案)
该方法通过修改系统用户配置文件,实现免密登录,适合密码复杂度限制无法突破的场景,操作如下:
bash
# 编辑原系统的用户密码文件
vi /mnt/sysroot/etc/passwd
找到文件内的 root 用户行,原始内容为:
root:x:0:0:root:/root:/bin/bash
将行内的 x 字符删除(x 代表该账户启用密码验证),修改后内容为:
root::0:0:root:/root:/bin/bash
保存退出后,重启系统即可免密登录 root 账户,登录后执行 passwd root 重新设置密码即可。
5.4 重启系统完成修复
执行以下命令重启主机,移除安装介质,系统将从本地硬盘正常启动,密码重置生效:
bash
reboot
6 其他应急维护模式详解
6.1 紧急外壳(Emergency Shell)
6.1.1 启动方法
- GRUB 菜单按
e进入编辑界面; - 在
linux16/linuxefi行末尾添加参数systemd.unit=emergency.target; - 按
Ctrl + x启动,进入后需输入root密码。
6.1.2 特点与适用场景
-
系统仅挂载根文件系统为只读模式,不启动任何服务、网络、LVM/RAID 或其他文件系统;
-
适用于根文件系统损坏、init 进程故障、系统服务批量崩溃等极端场景;
-
修复步骤:
bash# 重挂载根分区为读写 mount -o remount,rw / # 执行修复操作(如 fsck 修复文件系统) fsck /dev/sda2 # 退出紧急外壳,进入正常模式 systemctl default
6.2 救援目标(Rescue Target,systemd 系统)
6.2.1 启动方法
- GRUB 菜单按
e进入编辑界面; - 在
linux16/linuxefi行末尾添加参数systemd.unit=rescue.target; - 按
Ctrl + x启动,进入后需输入root密码。
6.2.2 特点与适用场景
- 系统挂载本地所有文件系统,启动基本系统服务,但不启动网络、图形界面等非必要服务;
- 介于单用户模式与正常系统之间,适用于系统服务配置错误、软件包损坏、用户权限问题等;
- 退出执行
systemctl default或reboot。
6.3 Live 系统(Live CD/USB)
6.3.1 启动方法
- 制作 Linux Live 镜像(如 CentOS Live、Ubuntu Live、SystemRescueCD)到 U 盘/光盘;
- 设置 BIOS/UEFI 从 U 盘/光盘引导,选择「Live 系统」启动。
6.3.2 特点与适用场景
- 完全独立于本地系统的运行环境,所有程序运行在内存中,不修改本地磁盘;
- 适用于本地系统无法引导、文件系统严重损坏、数据救援、系统重装前备份等场景;
6.3.3 Live 系统数据救援与系统修复完整流程
-
准备工作
- 下载合适的 Live 镜像(推荐 SystemRescueCD,集成磁盘与文件系统工具);
- 使用
dd或 Etcher 工具将镜像写入 U 盘(容量 ≥4GB); - 准备外接存储设备(用于备份数据)。
bash# dd 命令制作 Live U 盘(Linux 环境) dd if=systemrescuecd-x86-xxx.iso of=/dev/sdb bs=4M status=progress -
启动 Live 系统
- 插入 Live U 盘,设置 BIOS/UEFI 第一启动项为 U 盘;
- 进入 Live 系统引导菜单,选择默认选项启动,进入命令行界面。
-
磁盘与分区识别
bash# 查看磁盘列表,确认本地系统磁盘(如 /dev/sda) fdisk -l # 查看文件系统状态 blkid -
数据救援操作
-
挂载本地系统分区与外接存储
bash# 创建挂载点 mkdir -p /mnt/local /mnt/external # 挂载本地系统分区(ext4 格式示例) mount -o ro /dev/sda2 /mnt/local # 挂载外接存储(NTFS 格式需安装 ntfs-3g) mount /dev/sdc1 /mnt/external -
执行数据备份
bash# 打包备份 /home 目录至外接存储 tar -czvf /mnt/external/home_backup.tar.gz /mnt/local/home # 直接复制文件 cp -r /mnt/local/etc /mnt/external/etc_backup -
修复文件系统(先卸载分区)
bashumount /mnt/local # 执行文件系统检查与修复(ext4 格式) fsck.ext4 -y /dev/sda2
-
-
系统修复操作
-
挂载本地系统并切换根环境
bashmount /dev/sda2 /mnt/local # 挂载必要的系统伪文件系统 mount -t proc proc /mnt/local/proc mount -t sysfs sys /mnt/local/sys mount -o bind /dev /mnt/local/dev # 切换根环境 chroot /mnt/local -
执行修复任务(示例)
bash# 重置 root 密码 passwd root # 修复 GRUB 引导 grub2-install /dev/sda grub2-mkconfig -o /boot/grub2/grub.cfg # 修复 SELinux 上下文 touch /.autorelabel -
退出并重启
bashexit umount -R /mnt/local reboot
-
6.4 调试模式(Debug Mode)
6.4.1 启动方法
- GRUB 菜单按
e进入编辑界面; - 在
linux16/linuxefi行末尾添加参数init=/bin/bash或systemd.debug-shell; - 按
Ctrl + x启动,进入调试 Shell。
6.4.2 特点与适用场景
- 用于内核启动过程调试、init 进程故障排查、系统引导脚本错误定位等;
systemd.debug-shell会在tty9提供一个调试 Shell,可实时查看系统启动日志与进程状态;- 仅适用于开发或高级运维场景,普通用户需谨慎使用。
6.5 各类应急模式对比表
| 模式 | 根分区挂载 | 服务启动 | 网络支持 | 适用场景 |
|---|---|---|---|---|
| 单用户模式 | 读写 | 无 | 无 | 密码重置、简单配置修复 |
| 救援模式 | 读写(手动挂载) | 迷你系统服务 | 可选 | 单用户模式无法进入时的兜底修复 |
| 紧急外壳 | 只读 | 无 | 无 | 根文件系统损坏、init 进程故障 |
| 救援目标 | 读写 | 基本服务 | 无 | 系统服务配置错误、软件包损坏 |
| Live 系统 | 手动挂载 | 完整服务 | 有 | 本地系统无法引导、数据救援 |
| 调试模式 | 只读/读写 | 无 | 无 | 内核启动调试、引导脚本错误定位 |
6.6 不同 Linux 发行版应急维护模式差异
| 发行版 | 单用户模式启动 | 救援模式入口 | 特有维护模式 | GRUB 配置路径 | 安全机制差异 |
|---|---|---|---|---|---|
| CentOS/RHEL 7/8 | GRUB 编辑添加 init=/bin/sh/rd.break |
安装介质 → Troubleshooting → Rescue | 无 | BIOS: /boot/grub2/grub.cfg UEFI: /boot/efi/EFI/centos/grub.cfg |
SELinux 默认启用,需 touch /.autorelabel |
| Ubuntu/Debian | GRUB 编辑添加 init=/bin/bash |
安装介质 → Rescue a broken system | 无 | BIOS: /boot/grub/grub.cfg UEFI: /boot/efi/EFI/ubuntu/grub.cfg |
AppArmor 默认启用,无 SELinux 重标记步骤 |
| SUSE Linux Enterprise | GRUB 编辑添加 init=/bin/bash |
安装介质 → Rescue System | Maintenance Mode(集成内核回滚工具) | BIOS: /boot/grub2/grub.cfg UEFI: /boot/efi/EFI/sles/grub.cfg |
SELinux 可选,默认禁用 |
| Arch Linux | GRUB 编辑添加 init=/bin/bash |
安装介质 → Arch Linux Rescue | 无 | BIOS: /boot/grub/grub.cfg UEFI: /boot/efi/EFI/arch/grub.cfg |
无强制安全机制,需手动配置 |
差异说明:
- 启动参数逻辑一致,仅配置文件路径与安全机制不同;
- Debian/Ubuntu 系统无需执行 SELinux 重标记,SUSE 与 Arch 系统根据安全机制配置决定;
- 商业发行版(如 SUSE)提供专属维护工具,适配企业级系统运维需求。
7 主流 Linux 发行版应急操作速查清单
7.1 CentOS/RHEL 7/8 应急速查
-
单用户模式启动(BIOS)
GRUB 编辑 linux16 行:ro → rw + 末尾添加 init=/bin/sh
Ctrl + x 启动
bashmount -o remount,rw / # 若未修改 ro→rw 时执行 passwd root touch /.autorelabel exec /sbin/init -
救援模式重置密码
安装介质引导 → Troubleshooting → Rescue
bashchroot /mnt/sysroot passwd root touch /.autorelabel exit && reboot -
GRUB 配置持久化(UEFI)
bashvi /etc/default/grub grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
7.2 Ubuntu/Debian 应急速查
-
单用户模式启动
GRUB 编辑 linux 行,末尾添加 init=/bin/bash
Ctrl + x 启动
bashmount -o remount,rw / passwd root # Ubuntu 需先执行 passwd -u root 解锁账户 reboot -
救援模式入口
安装介质引导 → Rescue a broken system
选择系统分区 → 挂载为可读写 → 进入 Shell
bashpasswd root reboot -
GRUB 配置持久化
bashvi /etc/default/grub update-grub # 自动生成配置文件
7.3 SUSE Linux Enterprise 应急速查
-
单用户模式启动
GRUB 编辑 linux 行,末尾添加 init=/bin/bash
Ctrl + x 启动
bashmount -o remount,rw / passwd root reboot -
特有 Maintenance Mode
安装介质引导 → Maintenance Mode
选择修复选项(内核回滚/软件包修复)
完成后重启
-
GRUB 配置持久化
bashvi /etc/default/grub grub2-mkconfig -o /boot/grub2/grub.cfg
7.4 Arch Linux 应急速查
-
单用户模式启动
GRUB 编辑 linux 行,末尾添加 init=/bin/bash
Ctrl + x 启动
bashmount -o remount,rw / passwd root reboot -
救援模式启动
安装介质引导 → Arch Linux Rescue
bashmount /dev/sda2 /mnt arch-chroot /mnt # Arch 专用切换根环境命令 passwd root reboot -
GRUB 配置持久化
bashvi /etc/default/grub grub-mkconfig -o /boot/grub/grub.cfg
7.5 发行版命令差异说明
- GRUB 配置生成命令 :
- CentOS/RHEL/SUSE:
grub2-mkconfig -o 配置路径 - Ubuntu/Debian/Arch:
update-grub或grub-mkconfig -o 配置路径
- CentOS/RHEL/SUSE:
- 根环境切换命令 :
- 通用:
chroot /挂载点 - Arch 专用:
arch-chroot /挂载点(自动挂载伪文件系统)
- 通用:
- 安全机制操作 :
- SELinux 系统(CentOS/RHEL):必须执行
touch /.autorelabel - AppArmor 系统(Ubuntu/Debian):无需额外操作,修改配置后直接重启
- SELinux 系统(CentOS/RHEL):必须执行
- 账户解锁差异 :
- Ubuntu 默认锁定 root 账户,单用户模式需先执行
passwd -u root解锁
- Ubuntu 默认锁定 root 账户,单用户模式需先执行
8 UEFI/BIOS 固件模式切换与 GRUB 配置持久化
8.1 物理机与虚拟机固件模式切换差异
| 对比维度 | 物理机(x86/x86_64 架构服务器/PC) | 虚拟机(以 VMware ESXi/Workstation 为例) |
|---|---|---|
| 操作入口 | 重启设备,开机自检阶段按厂商指定按键(常见 Del/F2/F10/F12)进入 BIOS/UEFI 设置界面 |
关闭虚拟机电源,在虚拟机硬件设置中找到「固件类型」/「启动模式」选项,无需进入系统固件界面 |
| 切换步骤 | 1. 重启,按对应按键进入固件设置; 2. 找到 Boot Mode/UEFI Boot 选项,切换为 Legacy BIOS 或 UEFI; 3. 保存设置(常见 F10 确认),系统自动重启生效 |
1. 关闭虚拟机,进入虚拟机设置; 2. 选择固件类型,切换为 BIOS 或 UEFI; 3. 保存设置,启动虚拟机即可生效 |
| 生效条件 | 必须重启设备,设置仅在下次启动时生效;部分老主板不支持 UEFI 模式 | 必须关闭虚拟机电源,在线状态无法修改固件类型; 所有主流虚拟机均支持两种模式切换 |
| 分区表限制 | - UEFI 模式必须搭配 GPT 分区表,且需创建 EFI 系统分区(ESP,通常 512 MiB,FAT32 格式); - BIOS 模式兼容 MBR 分区表,不支持 GPT 分区表的引导(部分主板可通过 CSM 兼容) | 虚拟机磁盘分区表无强制限制,但为了和物理机环境一致,建议 UEFI 搭配 GPT,BIOS 搭配 MBR; 虚拟机无需手动创建 EFI 分区,系统安装时自动生成 |
| CSM 兼容模块 | 部分 UEFI 主板提供 CSM(兼容性支持模块),开启后可兼容 BIOS 引导的系统;关闭后仅支持 UEFI 引导 | 虚拟机无需 CSM 模块,固件模式直接决定引导方式,无兼容层依赖 |
| GRUB 配置路径差异 | - UEFI 系统:/boot/efi/EFI/centos/grub.cfg; - BIOS 系统:/boot/grub2/grub.cfg |
与物理机完全一致,固件模式决定 GRUB 配置文件路径,虚拟机环境无额外差异 |
| 操作风险 | 切换后若分区表不匹配(如 UEFI+MBR),系统将无法引导,需通过安装介质修复分区表或重装系统 | 切换后若系统安装时的固件模式与当前不一致,系统无法引导; 可通过切换回原模式或重新安装系统解决,风险低于物理机 |
8.2 GRUB 配置持久化方法
临时修改 GRUB 启动参数仅对单次启动有效,若需长期生效,需执行以下步骤:
-
以
root权限登录系统,编辑 GRUB 配置模板文件bashvi /etc/default/grub -
修改
GRUB_CMDLINE_LINUX变量,添加需要持久化的参数,示例如下bashGRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet" -
重新生成 GRUB 配置文件
-
BIOS 系统执行命令
bashgrub2-mkconfig -o /boot/grub2/grub.cfg -
UEFI 系统执行命令
bashgrub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
-
-
重启系统,配置即可永久生效
8.3 配置验证方法
重启系统后,执行以下命令查看内核启动参数,确认配置是否生效:
bash
cat /proc/cmdline
9 全场景通用注意事项
- 单用户模式、紧急外壳等本地应急模式的操作必须在系统物理机 / 虚拟机本地执行,远程连接无法进入该模式;
touch /.autorelabel为必执行命令,只要系统启用 SELinux(CentOS 默认开启),遗漏该步骤必然导致密码失效;- 重启时的 SELinux 重标记过程会消耗一定时间,请勿强制关机,否则会造成文件系统损坏;
- 救援模式与 Live 系统的价值是「兜底」与「备份」,可在
/mnt/sysroot或手动挂载目录下将重要文件拷贝至外接存储,适合系统无法修复前的数据抢救; - 操作过程中若中途退出虚拟机,会导致 root 新老密码均无法登录,且无法正常进入单用户模式,需按 4.2 节方案修复;
- 固件模式切换仅修改引导方式,不会影响系统中的数据,但会导致系统无法引导,需提前做好备份;
- 若需在 UEFI 模式下安装系统,需确保安装介质支持 UEFI 引导,且磁盘分区表为 GPT;
- 不同发行版的应急逻辑一致,差异集中在配置路径、安全机制与专属命令,操作前需确认发行版类型。
附录:高频应急命令
-
读写重挂载根分区(单用户/紧急外壳模式必备)
bashmount -o remount,rw / -
读写重挂载 sysroot 分区(rd.break 模式必备)
bashmount -o remount,rw /sysroot -
切换救援模式的系统根环境
bashchroot /mnt/sysroot -
刷新 SELinux 上下文(密码重置必执行)
bashtouch /.autorelabel -
标准重启命令
bashexec /sbin/init -
强制重启命令
bashreboot -f -
判断固件模式
bashls /sys/firmware/efi -
BIOS 系统生成 GRUB 配置(CentOS/RHEL/SUSE)
bashgrub2-mkconfig -o /boot/grub2/grub.cfg -
UEFI 系统生成 GRUB 配置(CentOS/RHEL/SUSE)
bashgrub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg -
Ubuntu/Debian 生成 GRUB 配置
bashupdate-grub -
修复文件系统(紧急外壳模式)
bashfsck /dev/sda2 -
进入救援目标
bashsystemctl isolate rescue.target -
进入紧急外壳
bashsystemctl isolate emergency.target -
Live 系统磁盘识别
bashfdisk -lbashblkid -
Live 系统数据备份
bashtar -czvf /mnt/external/backup.tar.gz /mnt/local/path -
Arch 系统切换根环境
basharch-chroot /mnt -
Ubuntu 解锁 root 账户
bashpasswd -u root
- Linux 系统(非应急维护)用户账号管理与密码修改-CSDN博客
https://blog.csdn.net/u013669912/article/details/156774487 - Linux | 进入单用户模式的三种方式_linux进单用户-CSDN博客
https://blog.csdn.net/u013669912/article/details/142502974
ref:
-
解决 centos7 修改 root 密码报错以及无法进入单用户模式_centos7 重置 root 密码后无法登陆 - CSDN 博客
https://blog.csdn.net/qq_56568435/article/details/123684391 -
RedHat&CentOS 救援模式 / 单用户模式 - 知乎
https://zhuanlan.zhihu.com/p/398478111 -
CentOS 7 进入单用户模式修改 root 密码_centos7 单用户修改 root 密码 - CSDN 博客
https://blog.csdn.net/qq_50684838/article/details/122233138 -
CentOS7 单用户模式重置 root 用户密码 - 简书
https://www.jianshu.com/p/337a5f9c0cb2 -
centos 7 重设密码总是失败_centos7 重置密码一直不成功怎么办 - CSDN 博客
https://wwzzhh.blog.csdn.net/article/details/120346524 -
解决 CentOS7.x 管理员用户 root 无法登陆问题_centos7 root 无法登录 - CSDN 博客
https://daxia.blog.csdn.net/article/details/132141925
