服务器突然忘记密码?别慌!这篇教程手把手教你重置 root 密码,5 步搞定!
📌前言
工作中有没有遇到过这种情况:
- 服务器 root 密码忘记了
- 同事离职,交接时没留密码
- 测试环境很久没登录,密码想不起来了
别担心!今天这篇教程就来教大家如何通过GRUB 编辑模式快速重置 Linux root 密码,整个过程只需要 5 步,小白也能轻松上手!
⚠️ 重要提示
本文仅适用于以下场景:
- ✅忘记 root 密码,需要紧急恢复
- ✅拥有服务器物理/控制台访问权限
- ✅测试环境或授权的生产环境恢复
禁止用于:
🛠️ 操作步骤(5 步完成)
第 1 步:重启系统
# 如果还能登录,执行重启reboot# 如果无法登录,需要通过物理控制台/远程控制台重启
第 2 步:进入 GRUB 编辑模式
- 系统启动时,在 GRUB 菜单出现时快速按e键
- 找到以linux16或linux开头的行
- 修改两处内容:
- 将ro改为rw
- 在该行末尾添加:init=/bin/bash
修改后:
- 按Ctrl + x或F10启动
第 3 步:进入救援模式
系统会以 root 权限直接进入 bash shell,此时:
- ✅文件系统已以读写方式挂载
- ❌无法远程连接(这是正常的)
- ✅可以直接执行命令
第 4 步:重置密码(3 种方法)
方法 A:使用 passwd 命令(推荐⭐⭐⭐⭐⭐)
passwd root# 输入新密码两次即可
方法 B:直接明文设置密码(推荐⭐⭐⭐⭐⭐)
# 单行命令,直接设置密码echo"YourPassword123!" | passwd --stdin root# 或者使用 chpasswd(更推荐)echo"root:YourPassword123!" | chpasswd
✅优点:最简单,支持脚本化,密码不会出现在命令历史中
方法 C:修改 /etc/passwd 文件(不推荐⭐⭐)
vi /etc/passwd
找到root行,去掉x标记:
原格式 | 修改后 |
root:x:0:0:root:/root:/bin/bash | root::0:0:root:/root:/bin/bash |
注意:现代 Linux 系统密码实际存储在/etc/shadow,建议使用方法 A 或 B。
第 5 步:重启系统
# 强制重启exec /sbin/init# 或reboot -f
系统重启后,使用新密码登录即可!
🔐 SELinux 特殊处理
如果你的系统启用了 SELinux,修改密码后可能无法启动,需要执行重标记:
# 创建重标记文件touch /.autorelabel# 然后重启exec /sbin/init
系统会自动重新标记文件标签,首次启动会稍慢一些。
📊操作流程图
重启系统 ↓GRUB 菜单按 e ↓修改 linux16 行(ro→rw,添加 init=/bin/bash) ↓Ctrl+x 启动 ↓进入救援模式 ↓修改密码(passwd/shadow/passwd) ↓重启系统 ↓✅登录成功
⚠️ 常见问题
Q1:GRUB 有密码怎么办?
A:需要 GRUB 密码才能编辑,如果没有 GRUB 密码,只能重装系统。
Q2:修改后无法启动怎么办?
A:检查是否启用了 SELinux,执行touch /.autorelabel后重启。
Q3:为什么远程无法连接?
A:这是正常的,GRUB 编辑模式会进入单用户救援模式,需要本地登录。
Q4:云服务器能用这个方法吗?
A:大多数云服务商(AWS/阿里云/腾讯云)提供控制台密码重置功能,更简单!
Q5:密码设置失败怎么办?
A:检查密码复杂度要求,建议使用强密码(大小写 + 数字 + 特殊字符)。
🔐密码安全建议
重置密码后,建议设置符合以下要求的强密码:
- ✅至少 8 位字符
- ✅包含大小写字母
- ✅包含数字
- ✅包含特殊字符
密码复杂度检查:
# 查看密码策略cat /etc/login.defscat /etc/pam.d/system-auth
🔄其他重置方法对比
方法 | 难度 | 适用场景 | 推荐度 |
GRUB 编辑 | ⭐⭐ | 物理/控制台访问 | ⭐⭐⭐⭐⭐ |
单用户模式 | ⭐⭐ | 旧版系统 | ⭐⭐⭐⭐ |
Live CD/USB | ⭐⭐⭐ | 无法进入 GRUB | ⭐⭐⭐ |
云控制台 | ⭐ | 云服务器 | ⭐⭐⭐⭐⭐ |
🎯总结
重置 root 密码的核心步骤:
- 重启进入 GRUB 编辑模式
- 修改linux16行(ro→rw,添加init=/bin/bash)
- 启动进入救援模式
- 使用passwd或chpasswd修改密码
- 重启系统
整个过程只需 5 分钟!
💡温馨提示
- 🔐建议将密码记录在密码管理器中(如 1Password、Bitwarden)
- 📋生产环境建议配置 sudo 权限,减少 root 直接登录
- 🔄定期更换密码,提高安全性
- 📞云服务器建议绑定手机/邮箱,方便密码找回
📚推荐阅读
- Linux 基础命令速查
- 服务器安全加固指南
- Linux 用户和权限管理
觉得有用就点个👍吧!
有任何问题欢迎留言讨论!