您的位置:

Linux 忘记 root 密码解决方案

一、使用单用户模式重置密码

1、在开机启动时,按住shift键,进入grub界面选择系统。

图片

2、按下键盘上的“e”键,进入编辑模式,找到含有“ro quiet splash”字样的那一行,在其最后添加“single”,并按下“ctrl + x”或“F10”启动系统。

图片

3、进入单用户模式后,输入“passwd root”命令,按照提示修改密码即可。

# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

4、修改完成后,重启系统即可进入新密码的系统。

二、使用Live CD/DVD/USB重置密码

1、通过光盘或U盘启动Linux操作系统。

2、在进入系统后,打开终端,使用“fdisk -l”查看系统所在分区。

# fdisk -l
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
...
Device     Boot    Start       End   Sectors   Size Id Type
/dev/sda1  *        2048   1026047   1024000   500M 83 Linux
/dev/sda2        1026048 976771071 975744024 465.3G 5 Linux swap
/dev/sda3      976771072 976773167      2096     1M 83 Linux

3、将系统所在分区挂载到/mnt目录下。

# mount /dev/sda1 /mnt

4、进入/mnt目录,使用“chroot”命令切换根目录。

# chroot /mnt

5、使用“passwd root”命令,按照提示修改密码即可。

# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

6、修改完成后,重新挂载分区并退出系统。

# umount /mnt
# exit

7、重启系统即可进入新密码的系统。

三、使用紧急救援模式重置密码

1、在grub界面选择紧急救援模式,或者进入单用户模式后输入“systemctl rescue”命令。

图片

2、在进入救援模式后,选择“root Shell”选项。

图片

3、使用“passwd root”命令,按照提示修改密码即可。

# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

4、修改完成后,重启系统即可进入新密码的系统。

四、使用密码重置工具

在某些情况下,以上方法可能并不适用,这时候我们可以使用密码重置工具,如chntpw。

1、使用Live CD/DVD/USB启动Linux操作系统。

2、下载chntpw工具。

# wget http://pogostick.net/~pnh/ntpasswd/chntpw-1.00.tar.gz

3、解压缩工具包,并进入其中的chntpw目录。

# tar zxvf chntpw-1.00.tar.gz
# cd chntpw-1.00/

4、使用chntpw工具加载系统中的SAM文件。

# chntpw -l /mnt/Windows/System32/config/SAM

5、使用chntpw工具修改root账户的密码。

# chntpw -u root /mnt/Windows/System32/config/SAM

6、修改完成后,退出工具,重新启动系统即可进入新密码的系统。

五、预防措施

在使用Linux系统时,我们应该做好预防措施,避免忘记或丢失root密码。以下是一些预防措施:

1、定期备份系统文件、配置文件、用户数据等重要数据,以防止意外丢失或损坏。

2、在系统中创建一个非root用户,并授予合适的权限,以便在忘记root密码时可用该用户登录系统,并进行必要的修改操作。

3、在修改密码时,选择相对安全的密码,并将其保存在一个安全的地方。

4、启用PAM模块,开启密码复杂度检查,限制密码长度,并开启强制密码更改等功能,以防止密码被猜测或破解。

5、定期对系统进行安全扫描和漏洞管理,以确保系统可靠安全。