在日常运维或学习中,忘记Linux系统的root密码是常有的事。别急着重装系统,今天教你如何通过GRUB引导菜单,快速重置密码,轻松找回系统控制权。
适用场景
- 忘记root密码,无法登录系统。
- 需要对系统进行紧急维护。
- 适用于大多数主流Linux发行版(如CentOS、RHEL、Ubuntu等)。
操作步骤
1. 重启系统,进入GRUB菜单
在系统启动时,当看到GRUB引导界面(通常显示内核版本列表),按下任意键(如Esc、Shift或F12)暂停自动启动。
2. 编辑启动项
选择要启动的内核版本(通常是第一项),然后按下e键进入编辑模式。此时你会看到启动参数列表。
3. 修改启动参数
找到以linux、linux16或linuxefi开头的行(不同发行版可能略有差异),在该行末尾添加以下参数之一:
场景一:CentOS / RHEL / Fedora(推荐)
这是最常见的企业级服务器系统。
- 原始代码示例:
找到类似下面这行(注意结尾通常是rhgb quiet):
linux16 /vmlinuz-3.10.0-1160.el7.x86_64 ... ro crashkernel=auto rhgb quiet
- 修改方法:
将光标移动到行尾,将ro改为rw,并在后面加上init=/bin/bash。
- 修改后的代码示例:
linux16 /vmlinuz-3.10.0-1160.el7.x86_64 ... rw crashkernel=auto rhgb quiet init=/bin/bash
场景二:Ubuntu / Debian(通用)
这是开发者和云服务器常用的系统。
- 原始代码示例:
找到类似下面这行(注意结尾通常是ro recovery nomodeset):
linux /boot/vmlinuz-5.4.0-42-generic root=UUID=xxxx-xxxx ro recovery nomodeset
- 修改方法:
将ro recovery nomodeset整段删掉,改为rw single init=/bin/bash。
- 修改后的代码示例:
linux /boot/vmlinuz-5.4.0-42-generic root=UUID=xxx
4. 启动修改后的配置
按下Ctrl + x或b键,系统将根据修改后的参数启动。
5. 重置密码
系统启动后,你会直接进入命令行界面(已拥有root权限)。输入以下命令重置密码:
passwd root
按提示输入新密码并确认。
6. 重启系统
密码修改成功后,输入以下命令重启系统:
exec /sbin/init
或直接按下Ctrl + Alt + Del重启。
注意事项
- 操作前请确保你有物理或虚拟机的控制台访问权限。
- 修改启动参数时需谨慎,避免误删其他参数。
- 重置密码后,建议立即更新系统安全策略,避免再次遗忘。
总结
通过GRUB引导菜单重置Linux密码,是一种高效且通用的应急方案。掌握这一技巧,不仅能解决燃眉之急,还能加深对Linux启动流程的理解。下次遇到密码问题,不妨试试这招!
希望这篇文案能帮助到你!如果需要进一步调整或补充,请关注我,将你的需求随时告诉我。