在 CentOS 中重置密码通常需要进入单用户模式(Single User Mode)或者救援模式(Rescue Mode)。以下是如何在 CentOS 7 或 CentOS 8 中重置密码的步骤:

1. 重新启动系统

  • 重启计算机后,在启动时按下键盘上的 ESC 键进入 GRUB 菜单(如果没有看到 GRUB 菜单,可以尝试按 Shift 键)。

2. 进入 GRUB 菜单

  • 在 GRUB 菜单中,用上下箭头选择你当前的操作系统条目,然后按 e 键编辑该条目。

3. 编辑启动项

  • 找到以 linux16linux 开头的那一行,使用箭头键移动光标到这一行的末尾。
  • 在这一行的末尾,输入 rd.break,然后按下 Ctrl + XCtrl + Alt + F2 以启动系统。

4. 进入紧急模式

  • 系统将进入一个名为 emergency 的模式,此时根文件系统挂载为只读。

5. 重新挂载根文件系统为可读写

  • 输入以下命令将根文件系统重新挂载为读写模式:
mount -o remount,rw /sysroot

6. 访问系统环境

  • 切换到系统的根环境:
chroot /sysroot

7. 重置密码

  • 使用 passwd 命令重置 root 用户的密码:
passwd

然后输入新密码。

8. 重新标记所有文件

  • 为了确保系统可以正常启动,运行以下命令:
touch /.autorelabel

9. 退出并重新启动系统

  • 输入以下命令退出 chroot 环境:
exit
exit
  • 系统会重新启动,完成 SELinux 的 relabeling 后,系统将正常启动。

此时,你可以使用新设置的 root 密码登录系统。

注意

  • 如果系统有加密的磁盘或分区,你可能需要在重启时提供相应的密码。
  • 使用此方法重置密码时,请确保只有有权限的人员能够访问你的服务器