新闻资讯

忘记 Linux 密码解决方法

2025-03-16

在 Linux 系统的使用过程中,忘记密码并非罕见。好在通过一些特定的操作,我们能够重新设置密码,恢复对系统的访问。以下为你介绍几种常见的解决 Linux 密码的方法。

基于 GRUB 菜单修改密码(适用于大多数 Linux 发行版):

1、 重启 Linux 系统,在开机启动过程中,当出现 GRUB 菜单时(如果没有显示 GRUB 菜单,可能需要在开机时按下 Shift 键或其他特定按键来显示),使用键盘的上下箭头键选中要进入的 Linux 系统内核选项(一般是默认的那一项)。
2、 按下 “e” 键进入编辑模式。在编辑界面中,找到以 “linux” 或 “linux16” 开头的那一行(不同发行版可能略有不同)。
3、 在这一行的末尾添加 “init=/bin/bash” 或 “single”(对于一些较新的系统,“single” 可能不适用)。添加完成后,按下 Ctrl + X 组合键或者 F10 键来启动系统。此时系统会以单用户模式进入,且不会要求输入密码。
4、 进入单用户模式后,会出现一个命令行提示符。此时,系统文件系统是以只读方式挂载的。为了能够修改密码,需要重新以读写方式挂载文件系统。输入命令 “mount -o remount,rw /”,回车后文件系统将变为可读写状态。
5、 接下来就可以修改密码了。假设要修改的用户名为 “user1”,输入命令 “passwd user1”,然后按照提示输入新密码,并再次确认新密码。密码修改成功后,输入命令 “exec /sbin/init” 来重新启动系统,启动完成后,就可以使用新密码登录该用户了。

使用救援模式修改密码(部分 Linux 发行版适用):

1、 准备一个 Linux 系统的安装介质(如 U 盘),将其插入忘记密码的电脑。根据电脑的启动设置,从 U 盘启动进入 Linux 安装界面。
2、 在安装界面中,选择 “救援模式” 或类似的选项(不同发行版的表述可能不同)。进入救援模式后,系统会尝试自动检测并挂载原 Linux 系统的根分区。
3、 如果系统成功挂载了根分区,会提示进入一个 Shell 环境。在这个 Shell 环境中,切换到原系统的根目录下。例如,如果原系统的根分区被挂载到 “/mnt/sysimage”,则输入命令 “chroot /mnt/sysimage”。
4、 进入原系统根目录后,就可以使用 “passwd” 命令来修改密码了。同样,假设要修改 “user1” 用户的密码,输入 “passwd user1”,按照提示设置新密码。设置完成后,退出 chroot 环境,输入 “exit”。然后按照系统提示,取出安装介质并重启电脑,使用新密码登录即可。

利用恢复控制台修改密码(特定 Linux 发行版支持):

1、对于一些特定的 Linux 发行版,如 Red Hat Enterprise Linux 及其衍生版本,在系统安装时可能会创建一个恢复控制台。如果有恢复控制台,可以在开机时选择进入恢复控制台选项。
2、进入恢复控制台后,会要求输入 root 密码(如果忘记 root 密码,可以尝试使用前面提到的单用户模式方法来重置 root 密码)。成功登录恢复控制台后,使用 “passwd” 命令来修改用户密码。例如,要修改 “user1” 用户的密码,输入 “passwd user1”,并按照提示设置新密码。修改完成后,退出恢复控制台,重启系统,使用新密码登录。
需要注意的是,在进行密码修改操作时,要确保操作的准确性,尤其是涉及到文件系统挂载、命令输入等步骤。如果不确定操作步骤,建议参考相应 Linux 发行版的官方文档或在专业人士的指导下进行。


拓展阅读:

1、 Linux 文件系统权限管理:Linux 通过文件所有者、所属组和其他用户三个维度来管理文件系统权限,分别对应读(r)、写(w)、执行(x)权限。例如,“rwxr - xr - x” 表示文件所有者有读、写、执行权限,所属组和其他用户只有读和执行权限。可使用 “chmod” 命令修改文件或目录的权限,保障数据安全与合理访问。
2、 Linux 用户组管理:用户组可方便对具有相同权限需求的用户进行集中管理。使用 “groupadd” 命令创建新用户组,“groupdel” 命令删除用户组。将用户添加到用户组用 “usermod - G” 命令,如 “usermod - G developers user1” 将 user1 添加到 developers 用户组,便于统一分配权限。
3、 Linux 启动流程解析:Linux 启动首先进行 BIOS/UEFI 硬件自检,然后加载引导程序(如 GRUB),GRUB 读取配置文件选择内核启动,内核初始化硬件并挂载根文件系统,接着启动 init 进程,init 进程根据运行级别启动相应服务,最终进入用户登录界面。了解启动流程有助于排查系统启动故障和进行密码重置等操作。

新闻资讯
热门专题
最新专题
友情链接