OpenEuler 忘记 root 密码怎么办?rd.break 失效不要死磕!2 套实测可行方案
你有没有遇到过这种情况?openEuler 服务器 root 密码弄丢了,网上教程一通照着操作,GRUB 加上
rd.break,Ctrl+X 启动,结果直接正常进系统,死活进不去救援 shell! 我之前踩过这个坑,折腾好久才发现 openEuler 做了安全加固,rd.break 钩子经常失效。今天分享两套经过真机实测的本地重置 root 密码方案,注意:只支持物理控制台、虚拟机控制台,SSH 远程完全无法操作!
本文为对外公开精简实战笔记,生产环境操作务必谨慎。
前置重要说明
- 只能本地控制台操作,SSH 远程连接无法完成密码重置。重置 root 之后,可以再修改系统内其他普通用户密码。
- GRUB 界面按
e编辑内核参数,修改仅本次启动生效,不会写入磁盘配置文件,重启就恢复原样,不用担心改坏引导文件。 - 修改内核参数时原有参数
root=、crashkernel=、LVM 相关参数千万不要删除,不然系统直接找不到根分区。 - 新增内核参数前面必须加空格,全部放在同一行,不要回车换行;按
End键快速跳到行末尾,操作效率更高。 - openEuler24.03 版本,编辑 GRUB 需要输入账号密码,默认用户名
root,密码openEuler#12。

方式一:init=/bin/sh 重置 root 密码(优先推荐)
- 重启服务器,在 GRUB 引导菜单,选中正常 openEuler 启动项,按下
e进入内核参数编辑页面。 - 找到以
linux开头的那一行:
- 把参数 ro 修改为 rw
- 跳到这一行的最后面,加一个空格,追加参数:
init=/bin/sh
修改片段示例:

- 按下
Ctrl+X或者F10,使用修改后的配置启动。 - 启动成功后,会落到 shell 提示符
sh‑5.1#,代表已经进入单用户救援环境。

执行重置密码全套命令
1.设置root新密码,输入2遍,注意OpenEuler对密码强度有要求
passwd
2.重中之重!很多人修改完比吗依旧登录失败就是漏掉了这一条命令
touch /.autorelabel
3.不要使用reboot!不要使用reboot -f进行重启,使用如下命令重启
exec /sbin/init

SELinux 重新标记是什么?
执行完exec /sbin/init之后,会看到 SELinux 重新标记的进度页面,这不是报错,属于正常现象。
系统检测到/.autorelabel文件,会全盘修复文件安全上下文。
千万不要断电、强制重启,等待进度走到 100%,系统会自动重启。磁盘越大,等待时间越久。 如果跳过这一步,就算密码设置正确,也会提示密码错误,无法登录 root 账号。
等待标记完成,系统来到登录界面,就可以使用刚刚设置的新 root 密码登录。

方式二:init=/bin/bash 重置 root 密码
整体操作流程和上面init=/bin/sh几乎一模一样,仅仅内核末尾参数不一样。
- GRUB 按
e编辑 linux 内核行 - 将
ro改为rw - 行末尾增加空格,追加参数:
init=/bin/bash
片段示例:

Ctrl+X启动进入救援 shell。
后续执行命令完全一致:
1.passwd
2.touch /.autorelabel
3.exec /sbin/init
为什么不推荐 rd.break 方式?
网上大量教程教 rd.break 重置密码,但是在 openEuler 22.03 实测,经常出现设置完参数,直接进入正常系统,无法进入switch_root救援 shell。
根源是 OpenEuler 做了 dracut、systemd 安全加固,rd.break 钩子很容易失效。 优先使用上面两种init=/bin/sh / init=/bin/bash方案,兼容性更好。
实操避坑总结
- 只可以本地控制台,SSH 远程行不通;虚拟机要打开虚拟机控制台操作。
- ro 一定要改成 rw,只读模式下修改密码会报
Authentication token manipulation error。 touch /.autorelabel不能省略,SELinux 上下文错乱会导致密码正确也登录失败。- 退出救援环境用
exec /sbin/init,禁止直接reboot或者强制断电,有文件系统损坏风险。 - 参数追加前面必须留空格,不要换行,否则内核识别不到新增参数。
你在维护 openEuler 的时候还遇到过哪些启动救援的坑?欢迎评论区一起交流。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐
所有评论(0)