修改密码的命令passwd用法示例【每日一个知识点第194期-Linux】

passwd命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。

语法

passwd(选项)(参数)

选项

-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。

参数

用户名:需要设置密码的用户名。

知识扩展

与用户、组账户信息相关的文件

存放用户信息:

/etc/passwd
/etc/shadow

存放组信息:

/etc/group
/etc/gshadow

用户信息文件分析(每项用:隔开)

例如:jack:X:503:504:::/home/jack/:/bin/bash
jack  //用户名
X  //口令、密码
503  //用户id(0代表root、普通新建用户从500开始)
504  //所在组
:  //描述
/home/jack/  //用户主目录
/bin/bash  //用户缺省Shell

组信息文件分析

例如:jack:$!$:???:13801:0:99999:7:*:*:
jack  //组名
$!$  //被加密的口令
13801  //创建日期与今天相隔的天数
0  //口令最短位数
99999  //用户口令
7  //到7天时提醒
*  //禁用天数
*  //过期天数

实例

如果是普通用户执行passwd只能修改自己的密码。如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建。

[root@localhost ~]# passwd Linuxde    //更改或创建Linuxde用户的密码;
Changing password for user Linuxde.
New UNIX password:          //请输入新密码;
Retype new UNIX password:   //再输入一次;
passwd: all authentication tokens updated successfully. //成功;

普通用户如果想更改自己的密码,直接运行passwd即可,比如当前操作的用户是Linuxde。

[Linuxde@localhost ~]$ passwd
Changing password for user Linuxde. //更改Linuxde用户的密码;
(current) UNIX password:   //请输入当前密码;
New UNIX password:         //请输入新密码;
Retype new UNIX password:  //确认新密码;
passwd: all authentication tokens updated successfully. //更改成功;

比如我们让某个用户不能修改密码,可以用-l选项来锁定:

[root@localhost ~]# passwd -l Linuxde    //锁定用户Linuxde不能更改密码;
Locking password for user Linuxde.
passwd: Success           //锁定成功;

[Linuxde@localhost ~]# su Linuxde   //通过su切换到Linuxde用户;
[Linuxde@localhost ~]$ passwd      //Linuxde来更改密码;
Changing password for user Linuxde.
Changing password for Linuxde
(current) UNIX password:          //输入Linuxde的当前密码;
passwd: Authentication token manipulation error     //失败,不能更改密码;

再来一例:

[root@localhost ~]# passwd -d Linuxde  //清除Linuxde用户密码;
Removing password for user Linuxde.
passwd: Success                         //清除成功;

[root@localhost ~]# passwd -S Linuxde    //查询Linuxde用户密码状态;
Empty password.                         //空密码,也就是没有密码;

注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。


《Linux学习每日一个知识点》栏目是马哥教育Linux云计算年薪20万+的学员社群特别发起,分享Linux工具、Linux语法、Linux项目等知识点,帮助大家快速的了解Linux学习,快速步入Linux高薪的快车道。

http://www.magedu.com/74163.html

 

相关新闻

历经多年发展,已成为国内好评如潮的Linux云计算运维、SRE、Devops、网络安全、云原生、Go、Python开发专业人才培训机构!