Linux修改用户密码的命令是
在Unix/Linux系统中,passwd这个指令可以用来变更使用者的密码,对于一般使用者而言(非root),执行passwd之后,会需要输入目前现行的密码,才可以允许密码的变更;而如果是root管理者的话,则可以在不需要现行密码的情况下,变更任何使用者的密码(包含root自己的密码)。
变更使用者密码
一般的使用者执行passwd即可变更自己的密码:
如果是root管理者的话,可以变更任何使用者的密码:
sudo passwd xxx
如果变更root管理者的密码,就跟一般使用者一样直接执行passwd即可。
显示密码状态资讯
若要显示密码的状态资讯,可以加上-S参数:
这个输出包含七个栏位:
帐号名称。
密码状态,状态包含锁定密码(L)、无密码(NP)与可用密码(P)。
上次修改密码的时间。
密码最短使用期限(minimum password age),单位为天。
密码最长使用期限(maximum password age),单位为天。
密码过期前警告期间(password warning period),单位为天。
密码过期后可使用的期间(password inactivity period),单位为天。
如果是root管理者,则可以查看特定使用者的密码资讯:
sudo passwd -S gtwang
root管理者可以使用-aS参数查阅所有使用者的密码状态资讯:
sudo passwd -a
移除使用者的密码
若要移除使用者的密码,可以使用-d参数,并加上使用者的名称:
sudo passwd -d xxxx
移除使用者的密码之后,可以检查一下状态资讯:
sudo passwd -S xxxx
xxxx NP 09/30/2015 0 99999 7 -1
在密码被移除之后,该使用者的帐号也会同时被停用,无法登入。
设定密码为过期状态
有时候因为某些原因(像是重新设定密码之后),我们会希望使用者立刻更改自己的密码,这时候我们可以使用-e参数:
sudo passwd -e xxx
passwd: password expiry information changed.
检查一下状态资讯:
sudo passwd -S xxx
xxx P 01/01/1970 0 99999 7 -1
这时候如果使用者使用SSH 登入的话,系统就会强制变更密码:
使用权限:所有使用者
使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]
说明:用来更改使用者的密码
参数:
-k keep non-expired authentication tokens
-l 关闭账号密码。效果相当于usermod -L,只有root才有权使用此项。
-u 恢复账号密码。效果相当于usermod -U,同样只有root才有权使用。
-g 修改组密码。gpasswd的等效命令。
-f 更改由finger命令访问的用户信息。
-d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用.
-S 显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用.
[username] 指定帐号名称.
最常用最简单的用法: passwd tom,修改tom用户密码。
输入两次密码就可以了!
但是你要修改的不是自己的账号密码,那你必须有root权限!