问题描述

新装一台 Ubuntu 20.04 系统,改了 root 密码,想用 root 用户登录系统。确定自己已经使用了正确的 root 密码,系统还是提示 Sorry,无法登录。

无法登录

排查过程

使用普通用户登录系统,查 root 用户是否被锁定。

cat /etc/shadow | grep root

如果出现 root:!!$6$CG (注意!!)则说明 root 用户被锁定,不能登陆。若被锁定,则可使用passwd -u root 解除用户锁定。

本环境没有 root 用户并没有被锁定,继续排查。

su 到 root,安装 ssh 服务,开启 root 的远程连接。

SSH 远程登录系统,看一下 journalctl 日志。journalctl -f

本地使用 root 用户登录,看日志是否报错。

发现报错:requirement “user != root” not met by user “root”

原来是 PAM 拦截了 root 用户的登录。

解除 PAM 限制,cd /etc/pam.d/ 修改gdm-password文件,具体要改哪个文件,看报错。

vi gdm-password

image-20210908141115719

很明显,看到了限制 root 登录的语句。注释之,重新使用 root 登录,问题解决。

扩展阅读