解决 Ubuntu 20.04 ROOT 用户无法本地登录的问题
问题描述
新装一台 Ubuntu 20.04 系统,改了 root 密码,想用 root 用户登录系统。确定自己已经使用了正确的 root 密码,系统还是提示 Sorry,无法登录。
[图片: 无法登录]
https://static.txisfine.cn/upload/image-20210908135826444.png/pkwatermark
排查过程
使用普通用户登录系统,查 root 用户是否被锁定。
cat /etc/shadow | grep root
如果出现 root:!!$6$CG (注意!!)则说明 root 用户被锁定,不能登陆。若被锁定,则可使用passwd -u root 解除用户锁定。
本环境没有 root 用户并没有被锁定,继续排查。
su 到 root,安装 ssh 服务,开启 root 的远程连接。
SSH 远程登录系统,看一下 journalctl 日志。journalctl -f
本地使用 root 用户登录,看日志是否报错。
[图片: 图片]
https://static.txisfine.cn/upload/image-20210908140335773.png/pkwatermark
发现报错:requirement "user != root" not met by user "root"
原来是 PAM 拦截了 root 用户的登录。
解除 PAM 限制,cd /etc/pam.d/ 修改gdm-password文件,具体要改哪个文件,看报错。
vi gdm-password
[图片: image-20210908141115719]
https://static.txisfine.cn/upload/image-20210908141115719.png/pkwatermark
很明显,看到了限制 root 登录的语句。注释之,重新使用 root 登录,问题解决。