导语:
用Linux系统最怕什么?突然忘记root密码,急得抓狂!别慌!这篇攻略手把手教你无需U盘、无需重装系统,3步重置密码!适用CentOS、Ubuntu等主流系统,看完赶紧收藏,关键时刻能救急!
一、适用场景
忘记root密码且无其他管理员账户
系统可正常启动至登录界面(物理/虚拟机均可)
重要前提:能接触到服务器或主机的键盘(云服务器需控制台权限)
二、超详细教程
原理:通过进入单用户模式(救援模式),直接以最高权限修改密码!
步骤1:重启系统,进入GRUB菜单
- 开机时狂按 Esc、Shift 或 Enter 键(不同电脑按键不同,通常屏幕会有提示)。
- 成功进入GRUB菜单(显示系统内核选项的界面)。
步骤2:编辑内核启动参数(关键!)
- CentOS/RedHat:
- 用方向键选中默认启动项,按 e 进入编辑模式。
- 找到以 linux16 或 linux 开头的行,将光标移至行尾。
- 添加 rd.break 或 init=/bin/bash(不同系统二选一,若无效换另一个)。
- Ubuntu/Debian:
- 选择Advanced options → 选择带(recovery mode)的内核,按 e 编辑。
- 找到 linux 行,将 ro recovery nomodeset 改为 rw init=/bin/bash。
注意:若系统加密或使用UEFI安全启动,此方法可能失效,需另寻方案。
步骤3:进入单用户模式,重置密码
- 按 Ctrl+X 或 F10 启动系统,进入命令行界面。
- 依次执行以下命令(直接复制粘贴,注意空格):
mount -o remount,rw / # 挂载文件系统为可读写
passwd root # 输入新密码(不会显示输入内容)
touch /.autorelabel # SELinux系统需执行此步(如CentOS)
exec /sbin/init # 正常重启系统
- 重启后即可用新密码登录!
三、重置后必做事项
- 备份密码:将密码存入加密文档或密码管理器。
- 检查权限:确保无其他用户利用此方法恶意提权。
- 启用SSH密钥登录(云服务器强烈推荐):降低密码泄露风险。
四、常见问题解答
Q:虚拟机无法进入GRUB菜单?
A:编辑虚拟机设置,勾选“启动时进入BIOS”选项(VMware/VirtualBox均支持)。
Q:修改密码后系统无法启动?
A:可能是SELinux未正确重置标签,重启时耐心等待系统自动修复。
五、预防忘密码的终极方案
- 定期记录密码:使用KeePass等工具管理。
- 配置sudo权限:日常使用普通用户+sudo,减少root依赖。
- 制作系统救援盘:未雨绸缪,应对极端情况。
结语:
Linux系统看似复杂,但掌握核心技巧就能轻松化解危机!转发给需要的小伙伴,关键时刻一起“救命”!
关注我,获取更多Linux运维黑科技→ 点击主页查看【Linux磁盘爆满清理指南】