十个Linux系统下的passwd实用命令示例

系统 Linux 系统运维
正如passwd命令的名称所示,其用于改变系统用户的密码。如果passwd命令由非root用户执行,那么它会询问当前用户的密码,然后设置调用该命令的用户的新密码。当此命令由超级用户root执行的话,就可以重新设置任何用户的密码,包括不知道当前密码的用户。

  正如 passwd 命令的名称所示,其用于改变系统用户的密码。如果 passwd 命令由非 root 用户执行,那么它会询问当前用户的密码,然后设置调用该命令的用户的新密码。当此命令由超级用户 root 执行的话,就可以重新设置任何用户的密码,包括不知道当前密码的用户。  

[[154094]]

  在这篇文章中,我们将用实例来介绍 passwd 命令。

  语法:  

  1. # passwd {options} {user_name} 

  可以在 passwd 命令使用不同的选项,列表如下:

  例1:更改系统用户的密码

  当你使用非 root 用户登录时,比如我使用 ‘linuxtechi’ 登录的情况下,运行 passwd 命令它会重置当前登录用户的密码。

  1. [linuxtechi@linuxworld ~]$ passwd  
  2. Changing password for user linuxtechi.  
  3. Changing password for linuxtechi.  
  4. (current) UNIX password 
  5. New password 
  6. Retype new password 
  7. passwd: all authentication tokens updated successfully.  
  8. [linuxtechi@linuxworld ~]$ 

  当你作为 root 用户登录后并运行 passwd 命令时,它默认情况下会重新设置 root 的密码,如果你在 passwd 命令后指定了用户名,它会重置该用户的密码。 

  1. [root@linuxworld ~]# passwd 
  2. [root@linuxworld ~]# passwd linuxtechi 

  

  注意:系统用户的密码以加密的形式保存在 /etc/shadow 文件中。

  例2:显示密码状态信息

  要显示用户密码的状态信息,请在 passwd 命令后使用 -S 选项。  

  1. [root@linuxworld ~]# passwd -S linuxtechi 
  2. linuxtechi PS 2015-09-20 0 99999 7 -1 (Password set, SHA512 crypt.) 
  3. [root@linuxworld ~]# 

  在上面的输出中,***个字段显示的用户名,第二个字段显示密码状态(PS = 密码设置,LK = 密码锁定,NP = 无密码),第三个字段显示了上次修改密码的时间,后面四个字段分别显示了密码能更改的最小期限和***期限,警告期限和没有使用该口令的时长。

  例3:显示所有账号的密码状态信息

  为了显示所有用户密码的状态信息需要使用 “-aS”选项在passwd 命令中,示例如下所示:  

  1. root@localhost:~# passwd -Sa 

  

  (LCTT译注:不同发行版/passwd 的行为不同。CentOS6.6 没有测试成功,但 Ubuntu 可以。)

#p#

  例4:使用 -d 选项删除用户的密码

  用我做例子,删除 ‘linuxtechi‘ 用户的密码。  

  1. [root@linuxworld ~]# passwd -d linuxtechi 
  2. Removing password for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# 
  5. [root@linuxworld ~]# passwd -S linuxtechi 
  6. linuxtechi NP 2015-09-20 0 99999 7 -1 (Empty password.) 
  7. [root@linuxworld ~]# 

  “-d” 选项将清空用户密码,并禁用用户登录。

  例5:设置密码立即过期

  在 passwd 命令中使用 '-e' 选项会立即使用户的密码过期,这将强制用户在下次登录时更改密码。  

  1. [root@linuxworld ~]# passwd -e linuxtechi 
  2. Expiring password for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# passwd -S linuxtechi 
  5. linuxtechi PS 1970-01-01 0 99999 7 -1 (Password set, SHA512 crypt.) 
  6. [root@linuxworld ~]# 

  现在尝试用 linuxtechi 用户 SSH 连接到主机。

  例6:锁定系统用户的密码

  在 passwd 命令中使用 ‘-l‘ 选项能锁定用户的密码,它会在密码的起始位置加上“!”。当他/她的密码被锁定时,用户将不能更改它的密码。  

  1. [root@linuxworld ~]# passwd -l linuxtechi 
  2. Locking password for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# passwd -S linuxtechi 
  5. linuxtechi LK 2015-09-20 0 99999 7 -1 (Password locked.) 
  6. [root@linuxworld ~]# 

  例7:使用 -u 选项解锁用户密码  

  1. [root@linuxworld ~]# passwd -u linuxtechi 
  2. Unlocking password for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# 

  例8:使用 -i 选项设置非活动时间

  在 passwd 命令中使用 -i 选项用于设置系统用户的非活动时间。当用户(我使用的是linuxtechi用户)密码过期后,用户再经过 ‘n‘ 天后(在我的情况下是10天)没有更改其密码,用户将不能登录。  

  1. [root@linuxworld ~]# passwd -i 10 linuxtechi 
  2. Adjusting aging data for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# 
  5. [root@linuxworld ~]# passwd -S linuxtechi 
  6. linuxtechi PS 2015-09-20 0 99999 7 10 (Password set, SHA512 crypt.) 
  7. [root@linuxworld ~]# 

  例9:使用 -n 选项设置密码更改的最短时间

  在下面的例子中,linuxtechi用户必须在90天内更改密码。0表示用户可以在任何时候更改它的密码。  

  1. [root@linuxworld ~]# passwd -n 90 linuxtechi 
  2. Adjusting aging data for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# passwd -S linuxtechi 
  5. linuxtechi PS 2015-09-20 90 99999 7 10 (Password set, SHA512 crypt.) 
  6. [root@linuxworld ~]# 

  例10:使用 -w 选项设置密码过期前的警告期限

  ‘-w’ 选项在 passwd 命令中用于设置用户的警告期限。这意味着,n天之后,他/她的密码将过期。  

  1. [root@linuxworld ~]# passwd -w 12 linuxtechi 
  2. Adjusting aging data for user linuxtechi. 
  3. passwd: Success 
  4. [root@linuxworld ~]# passwd -S linuxtechi 
  5. linuxtechi PS 2015-09-20 90 99999 12 10 (Password set, SHA512 crypt.) 
  6. [root@linuxworld ~]# 

  via:http://www.linuxtechi.com/10-passwd-command-examples-in-linux/

  作者:Pradeep Kumar 译者:strugglingyouth 校对:wxy

  本文由 LCTT 原创编译,Linux中国 荣誉推出

责任编辑:火凤凰 来源: Linux中国
相关推荐

2017-12-12 14:50:33

数据库MySQL命令

2015-09-23 09:22:01

系统硬件命令

2018-08-06 08:51:32

Linux命令cut

2011-06-01 09:59:52

2013-05-23 15:10:34

Netcat

2013-10-08 15:51:03

Linux find命

2023-11-06 18:02:28

Linux实用命令

2019-09-26 14:20:27

JavaScript代码编程语言

2020-09-28 15:14:31

Linux常用命令实用命令

2024-04-09 00:00:00

Java代码片段

2024-05-23 11:53:24

Python代码异常处理

2018-01-02 10:36:29

Linux命令Cheat

2022-04-20 10:43:24

Linux命令

2016-09-27 13:12:14

tar命令示例 Unix

2013-11-25 13:04:59

Linux命令Shell脚本

2013-12-23 15:25:15

命令Linux命令

2024-10-17 16:13:23

Shell开发运维

2024-05-28 08:00:00

Python操作系统命令

2023-07-24 07:11:43

2023-06-14 15:51:48

JavaScript
点赞
收藏

51CTO技术栈公众号