HCRM博客

如何重置 CentOS 7 忘记的密码?

一、操作步骤

1、重启系统:需要重启你的CentOS 7系统,在系统启动过程中,当看到内核选择界面时,按下e键进入编辑模式。

2、修改启动参数:在编辑模式下,找到以linux16linuxefi开头的行(具体取决于你的系统配置),这些行控制内核加载选项,使用方向键移动到该行的末尾,按End键将光标移到行尾,添加或修改以下参数:

如何重置 CentOS 7 忘记的密码?-图1
(图片来源网络,侵权删除)

将默认的启动参数修改为ro(只读模式),并禁用SELinux的强制执行,以及启动到紧急模式,修改后的行可能如下所示:

  • rb.break enforcing=0

enforcing=0参数用于禁用SELinux的强制执行,而rb.break则指示系统引导到单用户/救援模式。

3、引导系统:修改完成后,按Ctrl+X组合键重新引导系统,这将以单用户模式或救援模式启动CentOS 7。

4、挂载根文件系统:系统以单用户模式启动后,执行以下命令重新挂载根文件系统为可读写状态:

  • mount o remount,rw /sysroot

这一步是必要的,因为我们需要修改根文件系统中的密码文件。

5、切换到真实根目录:切换到系统的real root目录:

如何重置 CentOS 7 忘记的密码?-图2
(图片来源网络,侵权删除)
  • chroot /sysroot

这允许我们对实际的根文件系统进行更改。

6、修改密码:使用passwd命令修改root用户的密码,系统将提示你输入新密码并确认:

  • passwd root

请确保设置一个强密码,包含大小写字母、数字和特殊字符的组合。

7、更新SELinux上下文:由于我们修改了密码,可能会导致SELinux上下文错误,为了解决这个问题,执行以下命令以确保下次启动时进行正确的标记:

  • touch /.autorelabel

这将在系统重启时触发SELinux文件系统的重新标记。

8、重启系统:退出chroot环境并重启系统:

如何重置 CentOS 7 忘记的密码?-图3
(图片来源网络,侵权删除)
  • exit
  • reboot

系统重启后,你应该能够使用新设置的root密码登录。

二、FAQs

Q1:如果在修改启动参数时没有看到enforcing=0这样的参数怎么办?

A1:如果你的系统没有明确设置SELinux的模式为enforcing,那么你可能不需要手动添加enforcing=0参数,为了确保SELinux不会影响密码修改过程,建议添加该参数作为预防措施。

Q2:如果修改完密码后重启系统仍然无法用新密码登录怎么办?

A2:这种情况可能是因为系统信息没有完全更新或者SELinux策略没有正确应用,尝试再次执行步骤6中的touch /.autorelabel命令,然后重启系统,如果问题依旧存在,可能需要检查SELinux的配置文件和日志以获取更多信息。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/22826.html

分享:
扫描分享到社交APP
上一篇
下一篇