检查任何 Linux 帐户的锁定状态

现在只需一个命令即可查看用户的锁定状态

# passwd -S user1
user1 LK 2014-08-17 0 99999 7 -1 (Password locked.)

如果用户帐户已解锁,输出将类似如下:

# passwd -S user1
user1 PS 2014-08-17 0 99999 7 -1 (Password set, SHA512 crypt.)

情况2 :账户被锁定

在这种情况下,用户帐户可能已被管理员锁定

锁定帐户

# usermod -L user1

查看 /etc/shadow 文件以了解更改

# grep user1 /etc/shadow
user1:!$ciJaoDR9$Qpt9sctRLjbZ4/Agxy9UOvu/XQqNrFo9rpgfZ/xrF/8JphkEvF29ITpef0SVLdJcrpv8Q/.6mRAHee4tZT0r11:16299:0:99999:7:::

如我们所见,在加密的密码前面出现了一个另外的单感叹号(!),这表示用户帐户已被锁定

解锁用户帐户

# usermod -U user1

情况 1:密码被锁定

在这种情况下,使用以下命令锁定任何帐户的密码

锁定密码

# passwd -l user1
Locking password for user user1.
passwd: Success

查看 /etc/shadow 中的状态

# grep user1 /etc/shadow user1:!!$ciJaoDR9$Qpt9sctRLjbZ4/Agxy9UOvu/XQqNrFo9rpgfZ/xrF/8JphkEvF29ITpef0SVLdJcrpv8Q/.6mRAHee4tZT0r11:16299:0:99999:7:::

如我们所见,在加密密码前有两个感叹号(!!),表示密码已被锁定

解锁密码

# passwd -u user1
Unlocking password for user user1.
passwd: Success
如何在 Linux 中检查任何用户帐户的锁定状态

在本教程中,将介绍如何查看 Linux 计算机上的任何用户帐户是否被锁定的命令。

情况3:从未设置密码

这也可能是管理员未分配任何密码导致用户无法登录的情况

所以要再次验证这一点,我们需要检查 /etc/shadow文件

# grep user1 /etc/shadow
user1:!!:16299:0:99999:7:::

如我们所见,有两个感叹号(!!)但没有加密密码,这意味着未设置密码。

如果密码是在没有锁定的情况下设置的,你的 /etc/shadow将如下所示

# grep user1 /etc/shadow
user1:$ciJaoDR9$Qpt9sctRLjbZ4/Agxy9UOvu/XQqNrFo9rpgfZ/xrF/8JphkEvF29ITpef0SVLdJcrpv8Q/.6mRAHee4tZT0r11:16299:0:99999:7:::
日期:2020-06-02 22:18:25 来源:oir作者:oir