重置root密码
Linux中root密码忘记了怎么办,重置root密码方法
适用于 Rocky/CentOS/RHEL/Fedora/Anolis
以Rocky 10为例
1. 重启系统
- 重新启动 Linux 系统
- 看到 GRUB 引导菜单时,立即按
e进入编辑模式

2. 修改内核启动参数
进入编辑界面后,找到以 linux 或 linuxefi 开头的那一行(通常是第二行)。
在这行文字的末尾删去多余参数添加以下参数
init=/bin/bash
示例:
# 找到以下内容:
linux ($root)/vmlinuz-6.12.0-55.37.1.el10_0.x86_64 root=/dev/mapper/r1_bogon-root ro crashkernel=20-64G:256M,64G::512M resume=UUID=...
# 删除一部分并在末尾添加
linux ($root)/vmlinuz-6.12.0-55.37.1.el10_0.x86_64 root=/dev/mapper/r1_bogon-root ro init=/bin/bash

3. 启动进入 Root Shell
根据底部提示使用ctrl+x或F10启动,进入root shell

4. 挂载根文件系统为可写
系统会启动并进入一个根 shell,但此时文件系统是只读的。
执行以下命令:
mount -o remount,rw /
5. 修改密码
使用以下命令修改密码:
passwd root
6. 触发 SELinux 重新标记
Rocky Linux 10 默认启用 SELinux,它通过安全上下文(security context)控制文件访问权限。
当使用 init=/bin/bash 绕过正常引导流程时,SELinux 可能无法正确识别文件的安全标签,所以需要让 SELinux下次启动时重新扫描并标记所有文件的上下文。
touch /.autorelabel 就是这个标志文件,它会触发一次完整的 SELinux relabeling 过程。
touch /.autorelable
7. 重启
使用以下命令重启系统:
exec /sbin/init
重启后使用新密码登陆即可
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果