当前位置:首页 > 系统教程 > 正文

CentOS7忘记密码怎么办?手把手教你重置root密码(超详细教程)

CentOS7忘记密码怎么办?手把手教你重置root密码(超详细教程)

在使用CentOS7服务器的过程中,忘记root密码是常见但令人头疼的问题。别担心,本文将提供一套CentOS7忘记密码的完整解决方案,即使是小白也能轻松完成CentOS7密码重置。我们将通过单用户模式修改密码的方式,借助grub引导修复技巧,一步步带你恢复系统访问权限。

准备工作

在开始之前,请确保你能物理访问或通过远程管理卡(如IPMI)连接到服务器,因为重启和进入引导菜单需要直接操作。如果是虚拟机,直接在控制台操作即可。

第一步:重启系统并进入GRUB菜单

首先,重启你的CentOS7系统。在启动过程中,当出现GRUB引导菜单时(通常是一个黑底白字的界面,列出系统内核版本),迅速按下键盘上的 e 键(编辑模式)。如果菜单一闪而过,可以在启动时持续按 EscShift 强制显示菜单。

CentOS7忘记密码怎么办?手把手教你重置root密码(超详细教程) CentOS7忘记密码  CentOS7密码重置 单用户模式修改密码 grub引导修复 第1张

第二步:修改启动参数进入单用户模式

在按下 e 后,你会看到一系列启动配置。使用方向键找到以 linux16linux 开头的那一行(通常包含 vmlinuzroot= 等参数)。

  1. 将光标移动到此行末尾。
  2. 删除从 ro 开始到行尾的内容(ro 表示只读挂载根文件系统),然后输入 rw init=/sysroot/bin/sh。这样做的目的是让根文件系统以读写模式挂载,并直接启动到一个shell环境。
  3. 修改完成后,按 Ctrl + xF10 使用新配置启动。

第三步:挂载根文件系统并切换环境

系统启动后会直接进入一个临时的shell。此时根文件系统被挂载在 /sysroot 目录下,我们需要切换到真正的系统环境:

      chroot /sysroot    

执行后,你就进入了原来的CentOS7系统环境。

第四步:重置root密码

现在可以使用 passwd 命令修改root密码:

      passwd root    

根据提示输入两次新密码(输入时不会显示任何字符,这是正常现象)。完成后会提示“passwd: all authentication tokens updated successfully.”。

第五步:处理SELinux(可选但推荐)

如果你的系统启用了SELinux,直接重启可能会导致SELinux上下文错误,从而无法正常登录。为避免此问题,需要在重置密码后创建一个强制重新标记文件:

      touch /.autorelabel    

这样重启后系统会自动修复所有文件的安全上下文。

第六步:退出并重启

依次执行以下命令退出chroot环境并重启:

      exitreboot    

如果 reboot 命令无效,可以手动按机箱重启键或强制重置虚拟机。

验证密码

系统重启后,使用新密码登录root账户,如果能成功进入,说明CentOS7密码重置已顺利完成。

总结

通过以上步骤,我们利用单用户模式修改密码的方法解决了CentOS7忘记密码的难题。关键在于grub引导修复时正确修改启动参数。整个过程无需光盘或U盘,简单快捷。希望本教程能帮助到遇到同样问题的你!