Linux 救援模式下 进入单用户模式操作指南

一、使用场景

忘记 root 密码,需要重置
系统启动异常,无法进入多用户环境
需要修复文件系统错误(fsck)
需要以 root 身份执行紧急维护操作

二、进入单用户模式方法

物理机和宿主机子机关机方法: 

物理机:
  一般通过网页登陆带外管理器点击电源开关控制服务器的开关,若没配置带外控制系统点击物理服务器开关或拔插电源(不建议此操作)
宿主机管理子机:
  强制关闭虚拟机:virsh destroy <子机UUID或名称>;
  启动虚拟机:使用 --console 参数启动,启动后会显示加载页面,GRUB 菜单出现时立即按方向键阻止自动启动;virsh start --console <子机UUID或名称>

三、GRUB 菜单出现,选中启动项按 e 进入编辑模式

使用方向键选中第一个启动项(通常高亮显示),然后按键盘 e 键进入 GRUB 编辑界面。

四、修改linux16 开头的内核参数行

将该行中的 ro 改为 rw,删除 rhgb quiet,并在行末追加 init=/bin/bash console=tty0:
# 原始行(示例):
linux16 /vmlinuz-3.10.0-... root=/dev/mapper/centos-root ro rhgb quiet LANG=zh_CN.UTF-8

# 修改后:ro 改 rw,删除 rhgb quiet,行末追加 init=/bin/bash console=tty0
linux16 /vmlinuz-3.10.0-... root=/dev/mapper/centos-root rw LANG=zh_CN.UTF-8 init=/bin/bash console=tty0

五、保存修改值

按 Ctrl+X 或 F10 系统启动后直接进入 bash shell(提示符为 bash-4.2#),根文件系统已挂载为读写模式,无需额外 chroot。

六、执行修复操作

直接重置 root 密码或进行其他修复:
# 重置 root 密码
passwd root

# 若系统启用了 SELinux,需执行(否则重启后 SELinux 上下文错误会导致登录失败)
touch /.autorelabel

# 完成后重启(init=/bin/bash 模式下 reboot 可能无效,使用以下方式)
exec /sbin/init
# 或强制重启
sync; echo b > /proc/sysrq-trigger

 

posted @ 2026-08-09 15:22  zhuguoqing  阅读(25)  评论(0)    收藏  举报