格式:passwd [options] [username]
-S UserName:查询用户密码的密码状态;仅root用户可
-l UserName:锁定指定用户(其实就是在用户密码前添加两叹号!!);仅root用户可用
-u UserNmae:解锁指定用户(其实就是删除用户密码前添加的两叹号!!)
-n N UserName:N为数字;指定密码最小使用天数(密码使用最小多少天才可更改密码);如为0则表示无限制(禁用此功能)
-x N UserName:N为数字;指定密码最大使用天数(密码使用最大多少天需要更改密码);默认为99999永不过期
-w N UserName:N为数字;指定密码过期前警告天数(密码过期前多少天警告用户更改密码);默认过期前7天警告
-i N UserName:N为数字;指定密码过期天数(密码过期后多少天用户被锁定);在此时间段内用户依然可以登录系统并更改密码
–stdin:非交互式修改密码(快速配置密码)#适合于CentOS系列
不指定用户名为设置(修改)当前登录用户密码
[root@localhost ~]# whoami
root
[root@localhost ~]# passwd
Changing password for user root.
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password:
passwd: all authentication tokens updated successfully.
指定设置(修改)用户密码
[root@localhost ~]# passwd user1
Changing password for user user1.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
-S UserName:查询用户密码的密码状态;仅root用户可用
[root@localhost ~]# passwd -S user1
user1 PS -03-04 0 99999 7 -1 (Password set, SHA512 crypt.)
user1 PS -03-04 0 99999 7 -1 (Password set, SHA512 crypt.)
格式:共八列,列与列之间用空格字符分隔
第一列:用户名
第二列:账户状态;PS为正常、LK为锁定
第三列:系统当前时间
第四列:密码最小使用天数(密码使用最小多少天才可更改密码);默认为0则表示无限制(禁用此功能)
第五列:密码最大使用天数(密码使用最大多少天需要更改密码);默认为99999永不过期
第六列:密码过期前警告天数(密码过期前多少天警告用户更改密码);默认过期前7天警告
第七列:密码过期天数(密码过期后多少天用户被锁定);在此时间段内用户依然可以登录系统并更改密码
第八列:密码配置状态及密码加密算法;Password locked表示密码已被锁定(账户密码未设置或账户已被锁定),Password set表示密码已设置,SHA512 crypt表示使用SHA512算法
-l UserName:锁定指定用户(其实就是在用户密码前添加两叹号!!);仅root用户可
[root@localhost ~]# passwd -l user1
Locking password for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 LK -03-04 0 99999 7 -1 (Password locked.)
[root@localhost ~]# grep user1 /etc/shadow
user1:!!$6$jxOh9OqV$57OBYLRy6/hfPtx1USHScB1L4ydHrsWmyt3elMcRfgb0s7FuxQgvYCIFPDecbjj6BmGb.7CkfB2cpDjtlrkdv/:18094:0:99999:7:::
-u UserNmae:解锁指定用户(其实就是删除用户密码前添加的两叹号!!)
[root@localhost ~]# passwd -u user1
Unlocking password for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 PS -03-04 0 99999 7 -1 (Password set, SHA512 crypt.)
[root@localhost ~]# grep user1 /etc/shadow
user1:$6$jxOh9OqV$57OBYLRy6/hfPtx1USHScB1L4ydHrsWmyt3elMcRfgb0s7FuxQgvYCIFPDecbjj6BmGb.7CkfB2cpDjtlrkdv/:18094:0:99999:7:::
-n N UserName:N为数字;指定密码最小使用天数(密码使用最小多少天才可更改密码);如为0则表示无限制(禁用此功能)
[root@localhost ~]# passwd -n 10 user1
Adjusting aging data for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 PS -03-04 10 99999 7 -1 (Password set, SHA512 crypt.)
-x N UserName:N为数字;指定密码最大使用天数(密码使用最大多少天需要更改密码);默认为99999永不过期
[root@localhost ~]# passwd -x 1000 user1
Adjusting aging data for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 PS -03-04 10 1000 7 -1 (Password set, SHA512 crypt.)
-w N UserName:N为数字;指定密码过期前警告天数(密码过期前多少天警告用户更改密码);默认过期前7天警告
[root@localhost ~]# passwd -w 15 user1
Adjusting aging data for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 PS -03-04 10 1000 15 -1 (Password set, SHA512 crypt.)
-i N UserName:N为数字;指定密码过期天数(密码过期后多少天用户被锁定);在此时间段内用户依然可以登录系统并更改密码
[root@localhost ~]# passwd -i 30 user1
Adjusting aging data for user user1.
passwd: Success
[root@localhost ~]# passwd -S user1
user1 PS -03-04 10 1000 15 30 (Password set, SHA512 crypt.)
–stdin:非交互式修改密码(快速配置密码)#适合于CentOS系列
[root@localhost ~]# passwd -S user2
user2 LK -03-04 0 99999 7 -1 (Password locked.)
[root@localhost ~]# echo "123456"|passwd --stdin user2
Changing password for user user2.
passwd: all authentication tokens updated successfully.
[root@localhost ~]# passwd -S user2
user2 PS -03-04 0 99999 7 -1 (Password set, SHA512 crypt.)
Ubuntu系统请配合sudo使用:sudo passwd
IT运维网 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Linux设置(修改)用户密码命令-passwd!