第一种方法是:通过进入单用户模式修改 root
密码
步骤如下:
1)启动系统到 GRUB
页面时,选择某个内核,并迅速按下 e
键编辑启动选项;
2)找到以 linux
开头的行,将 ro
修改为 rw init=/bin/bash
,然后按 ctrl+x
启动该内核;
3)进入单用户模式:系统将以 root
用户身份启动到一个简单的 shell
环境;
4)重置密码:在该 shell
环境中,可以使用 passwd root
来重置 root
密码;
5)重启系统:修改密码完成后,重新启动系统,使用新密码登录。
第二种方法是:通过修改 /etc/shadow
文件来移除 root
密码
1)挂载硬盘:将忘记密码的系统所在的硬盘从原来的机器上拆下来,并挂载到一台正常工作的机器上:sudo mount /dev/sda2 /mnt
,这里的 sda2
需要根据实际情况确定;
2)备份重要文件:在那台机器上备份上述硬盘中的重要文件:cp /mnt/etc/shadow /mnt/etc/shadow.bak
,cp /mnt/etc/passwd /mnt/etc/passwd.bak
;
3)移除 root
密码:用 vim
打开 /mnt/etc/shadow
文件,找到类似如下的行:
root:$6$RjMxS2HG$XXXXXXXXXXXXXXXXXXXXXXXX:18739:0:99999:7:::
,
这里的 $6$RjMxS2HG$XXXXXXXXXXXXXXXXXXXXXXXX
是加密后的密码。要移除密码,可以将这部分替换成任何不包含有效加密格式的字符,如:
root::18739:0:99999:7:::
;
4)无密码登录:卸载上述硬盘,并装回到原来的机器,启动系统,使用 root
登录,此时密码为空,可以进入系统;
5)重置密码:进入上述系统后,通过 passwd root
来重置 root
密码。