linux下passwd命令设置修改用户密码的方法
1、passwd简单说明;
我们已经学会如何添加用户了,所以我们还要学习设置或修改用户的密码;passwd命令的用法也很多,我们只选如下的几个参数加以说明;想了解更多,请参考manpasswd或passwd--help;
passwd[OPTION...]
passwd作为普通用户和超级权限用户都可以运行,但作为普通用户只能更改自己的用户密码,但前提是没有被root用户锁定;如果root用户运行passwd,可以设置或修改任何用户的密码;
passwd命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;
[root@localhost~]#passwd 注:没有加任何用户,我是用root用户来执行的passwd表示修改root用户的密码;下面也有提示;
Changingpasswordforuserroot.
NewUNIXpassword:注:请输入新密码;
RetypenewUNIXpassword:注:验证新密码;
passwd:allauthenticationtokensupdatedsuccessfully.注:修改root密码成功;
如果是普通用户执行passwd只能修改自己的密码;
如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建;
[root@localhost~]#passwdbeinan注:更改或创建beinan用户的密码;
Changingpasswordforuserbeinan.
NewUNIXpassword:注:请输入新密码;
RetypenewUNIXpassword:注:再输入一次;
passwd:allauthenticationtokensupdatedsuccessfully.注:成功;
普通用户如果想更改自己的密码,直接运行passwd即可;比如当前操作的用户是beinan;
[beinan@localhost~]$passwd
Changingpasswordforuserbeinan.注:更改beinan用户的密码;
(current)UNIXpassword:注:请输入当前密码;
NewUNIXpassword:注:请输入新密码;
RetypenewUNIXpassword:注:确认新密码;
passwd:allauthenticationtokensupdatedsuccessfully.注:更改成功;
2、passwd几个比较重要的参数;
[root@localhostbeinan]#passwd--help
Usage:passwd[OPTION...]<accountName>
-k,--keep-tokens keepnon-expiredauthenticationtokens
注:保留即将过期的用户在期满后能仍能使用;
-d,--delete deletethepasswordforthenamedaccount(rootonly)
注:删除用户密码,仅能以root权限操作;
-l,--lock lockthenamedaccount(rootonly)
注:锁住用户无权更改其密码,仅能通过root权限操作;
-u,--unlock unlockthenamedaccount(rootonly)
注:解除锁定;
-f,--force forceoperation
注:强制操作;仅root权限才能操作;
-x,--maximum=DAYS maximumpasswordlifetime(rootonly)
注:两次密码修正的最大天数,后面接数字;仅能root权限操作;
-n,--minimum=DAYS minimumpasswordlifetime(rootonly)
注:两次密码修改的最小天数,后面接数字,仅能root权限操作;
-w,--warning=DAYS numberofdayswarningusersreceivesbefore
注:在距多少天提醒用户修改密码;仅能root权限操作;
passwordexpiration(rootonly)
-i,--inactive=DAYS numberofdaysafterpasswordexpirationwhenan
注:在密码过期后多少天,用户被禁掉,仅能以root操作;
accountbecomesdisabled(rootonly)
-S,--status reportpasswordstatusonthenamedaccount(root 注:查询用户的密码状态,仅能root用户操作;
only)
--stdin readnewtokensfromstdin(rootonly)
比如我们让某个用户不能修改密码,可以用-l参数来锁定:
[root@localhost~]#passwd-lbeinan注:锁定用户beinan不能更改密码;
Lockingpasswordforuserbeinan.
passwd:Success 注:锁定成功;
[beinan@localhost~]#subeinan注:通过su切换到beinan用户;
[beinan@localhost~]$passwd注:beinan来更改密码;
Changingpasswordforuserbeinan.
Changingpasswordforbeinan
(current)UNIXpassword:注:输入beinan的当前密码;
passwd:Authenticationtokenmanipulationerror注:失败,不能更改密码;
再来一例:
[root@localhost~]#passwd-dbeinan注:清除beinan用户密码;
Removingpasswordforuserbeinan.
passwd:Success 注:清除成功;
[root@localhost~]#passwd-Sbeinan注:查询beinan用户密码状态;
Emptypassword. 注:空密码,也就是没有密码;
注意:当我们清除一个用户的密码时,登录时就无需密码;这一点要加以注意;
3、chage修改用户密码有效期限的命令;
chage用语法格式:
chage[-l][-m最小天数][-M最大天数][-W警告][-I失效日][-E过期日][-d最后日]用户
前面已经说的好多了,这个只是一笔带过吧,知道有这个命令就行,自己实践实践再说,大体和psswd有些参数的用法差不多;
密码时效命令-----chage
格式为:chage[<选项>]<用户名>
下面列出了chage命令的选项说明:
-mdays:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-Mdays:指定口令有效的最多天数。当该选项指定的天数加上-d选项指定的天数小于当前的日期时,用户在使用该帐号前就必须改变口令。
-ddays:指定从1970年1月1日起,口令被改变的天数。
-Idays:指定口令过期后,帐号被锁前不活跃的天数。如果值为0,帐号在口令过期后就不会被锁。
-Edate:指定帐号被锁的日期。日期格式YYYY-MM-DD。若不用日期,也可以使用自1970年1月1日后经过的天数。
-Wdays:指定口令过期前要警告用户的天数。
-l:列出指定用户当前的口令时效信息,以确定帐号何时过期。
例如下面的命令要求用户user1两天内不能更改口令,并且口令最长的存活期为30天,并且口令过期前5天通知用户
chage-m2-M30-W5user1
可以使用如下命令查看用户user1当前的口令时效信息:chage-luser1
提示:
1)可以使用chage<用户名>进入交互模式修改用户的口令时效。
2)修改口令实质上就是修改影子口令文件/etc/shadow中与口令时效相关的字段值。
以上这篇linux下passwd命令设置修改用户密码的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。