返回

在CentOS 7 救援模式下找回遗忘的 root 密码

见解分享

重置 CentOS 7 救援模式下的 Root 密码:终极指南

简介

忘记 root 密码是任何系统管理员最糟糕的噩梦之一,尤其是在您急需访问服务器时。在 CentOS 7 中,救援模式为您提供了重置密码的救命稻草,让您重返驾驶座。本文将深入探讨在救援模式下重置 root 密码的两种方法,让您轻松恢复对系统的控制。

方法 1:单用户模式(如果 GRUB 允许)

步骤:

  1. 启动进入救援模式:
    • 重新启动服务器,并在 GRUB 菜单出现时按 e 键进入编辑模式。
    • 找到以 "linux16" 开头的行,然后在行末添加 single
    • F10 启动进入救援模式。
  2. 切换到 root 用户:
    • 输入以下命令:
    su -
    
  3. 重置 root 密码:
    • 输入以下命令:
    passwd
    
    • 输入两次新的 root 密码。
  4. 退出救援模式:
    • 输入以下命令:
    exit
    

方法 2:挂载根文件系统

步骤:

  1. 启动进入救援模式:
    • 重新启动服务器,并在 GRUB 菜单出现时按 e 键进入编辑模式。
    • 找到以 "linux16" 开头的行,然后在行末添加 init=/bin/bash
    • F10 启动进入救援模式。
  2. 挂载根文件系统:
    • 输入以下命令:
    mount -o remount,rw /
    
  3. 切换到 root 用户:
    • 输入以下命令:
    chroot /
    
  4. 重置 root 密码:
    • 输入以下命令:
    passwd
    
    • 输入两次新的 root 密码。
  5. 卸载根文件系统:
    • 输入以下命令:
    exit
    
  6. 重启服务器:
    • 输入以下命令:
    reboot
    

避免 GRUB 禁用单用户模式

为避免将来 GRUB 禁用单用户模式,请执行以下步骤:

  1. 编辑 /etc/default/grub 文件。
  2. 确保 GRUB_TERMINAL=console 行没有注释掉。
  3. 保存文件并重新生成 GRUB 配置:
grub2-mkconfig -o /boot/grub2/grub.cfg

常见问题解答

1. 为什么我无法进入单用户模式?

  • GRUB 可能已禁用单用户模式。请尝试使用挂载根文件系统的方法。

2. 我忘记了新密码怎么办?

  • 您需要重新进入救援模式并再次重置密码。

3. 我可以从救援模式访问其他文件吗?

  • 是的,您可以访问整个文件系统,包括 /etc/var 等目录。

4. 如何在不进入救援模式的情况下重置 root 密码?

  • 这是不可能的,除非您有其他 root 帐户。

5. 重置 root 密码后如何防止将来出现问题?

  • 请定期备份您的 /etc/passwd 文件并实现强密码策略。

结论

通过遵循本文中的方法,您将能够轻松地在 CentOS 7 救援模式下重置 root 密码。记住避免将来 GRUB 禁用单用户模式,并始终采取预防措施,避免忘记密码,这样您就可以随时访问您的系统。掌握这些技巧,您将成为 Linux 密码恢复的大师,即使在最紧急的情况下也能保持冷静和掌控。