首页/系统/Linux 运维命令速查/场景:忘记 root 密码的恢复
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条进程与作业69 条磁盘与文件系统51 条
用户与权限44 条
日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:忘记 root 密码的恢复

物理机/控制台可进入 GRUB 的场景:单用户模式改密;云主机优先用控制台重置。涉及重启与停机,务必走变更流程。

Linux 运维命令速查系统更新于 2026-10-12
场景root 口令遗失,无法登录
目标重置 root 口令并恢复系统
工具链GRUB → rd.break/init=/bin/bash → passwd → 重启

第 1 步:GRUB 编辑启动项(控制台操作)

第 1 步:GRUB 编辑启动项(控制台操作)
开机在 GRUB 菜单按 e 编辑内核行:
- RHEL/CentOS 8+:行尾加 rd.break
- 通用:行尾加 init=/bin/bash 或 single
按 Ctrl+X 启动

第 2 步:RHEL 系 rd.break 流程

第 2 步:RHEL 系 rd.break 流程
mount -o remount,rw /sysroot
chroot /sysroot
passwd root
touch /.autorelabel      # SELinux 环境必须:否则新密码无法登录
exit
reboot -f

第 3 步:init=/bin/bash 通用流程

第 3 步:init=/bin/bash 通用流程
mount -o remount,rw /
passwd root
exec /sbin/init    # 或 sync; reboot -f
此操作绕过所有认证,等于证明「物理/控制台访问=完全控制」;云主机优先用厂商控制台重置密码,避免误操作整机。

易错点

  • SELinux 机器忘记 touch /.autorelabel:密码改了仍登不进,或需长时间重新打标
  • rd.break 环境里 root 文件系统挂载在 /sysroot,直接 passwd 改的是内存盘里的错误文件

数据来源与参考

  • Red Hat 文档:Resetting the root password
  • man 8 passwd

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌