乐趣区

关于运维:Linux修改用户过期时间

什么是 chage 命令?

chage 代表更改时效 change age。它更改用户明码到期信息。

chage 命令能够批改两次明码更改之间的天数,以及最初一次更改明码的日期。

零碎应用此信息来确定用户何时应更改明码。

它还容许用户执行其余性能,例如设置帐户到期日期、在到期后将明码设置为有效、显示帐户时效信息、设置明码更改之前的最小和最大天数以及设置到期正告天数。

1)如何在 Linux 上查看特定用户的明码到期日期

如果要查看 Linux 上特定用户的明码到期日期,请应用以下命令。

# chage -l daygeek

Last password change : Feb 13, 2020
Password expires : May 13, 2020
Password inactive : never
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 90
Number of days of warning before password expires : 7

2)如何在 Linux 上查看所有用户的明码到期日期

你能够间接对单个用户应用 chage 命令,不过可能你对多个用户应用时可能有效。

为此,你须要编写一个小的 shell 脚本。上面的 shell 脚本能够列出增加到零碎中的所有用户,包含零碎用户。

#for user in $(cat /etc/passwd |cut -d: -f1); do echo $user; chage -l $user | grep "Password expires"; done | paste -d ""  - - | sed's/Password expires//g'

你将失去相似以下的输入,然而用户名可能不同。

root : never
bin : never
daemon : never
adm : never
lp : never
sync : never
shutdown : never
u1 : Nov 12, 2018
u2 : Jun 17, 2019
u3 : Jun 17, 2019
u4 : Jun 17, 2019
u5 : Jun 17, 2019

3)如何查看 Linux 上除零碎用户外的所有用户的明码有效期

上面的 shell 脚本将显示有到期日期的用户列表。


#for user in $(cat /etc/passwd |cut -d: -f1); do echo $user; chage -l $user | grep "Password expires"; done | paste -d ""  - - | sed's/Password expires//g'| grep -v"never"

你将失去相似以下的输入,然而用户名可能不同。

u1 : Nov 12, 2018
u2 : Jun 17, 2019
u3 : Jun 17, 2019
u4 : Jun 17, 2019
u5 : Jun 17, 2019

更多:
如何用 passwd 命令批改用户过期工夫
如何平安批改 Linux 用户 shell
删除用户时 Linux 会删除哪些文件
如何治理 Linux 用户

退出移动版