1、命令简介
passwd:用于更改用户的密码,它通常在 Linux 系统中用于维护用户账户的密码。
2、命令语法
passwd [options] [LOGIN]
3、命令描述
passwd
命令用于更改用户账户的密码。普通用户只能更改自己账户的密码,而超级用户可以更改任何账户的密码。passwd
还可以更改账户或相关密码有效期。
4、命令选项
选项 | 描述 |
-a, --all | 仅与-S一起使用,显示所有用户的状态。 |
-d, --delete | 删除用户的密码(将其设为空)。 这是一种快速禁用帐户密码的方法。 它会将指定帐户设为无密码状态。 |
-e, --expire | 立即过期帐户密码。 实际上,这会强制用户在下次登录时更改密码。 |
-h, --help | 显示帮助消息并退出。 |
-g, --noheadings | 不打印标题行。 |
-i, --inactive INACTIVE | 此选项用于在密码过期多少天后禁用帐户。 在用户帐户的密码过期了多少天后, 用户将无法登录到该帐户。 |
-k, --keep-tokens | 表示仅对已过期的身份验证令牌(密码) 执行密码更改。 用户希望保留其未过期的令牌, 就像以前一样。 |
-l, --lock | 锁定指定帐户的密码。 此选项通过将密码 更改为与任何可能的加密值 都不匹配的值(在密码前面添加'!')来禁用密码。请注意,这不会禁用帐户。 用户仍然可以使用其他身份 验证令牌(例如SSH密钥)登录。 要禁用帐户,管理员应该使用usermod --expiredate 1 (将帐户的到期日期设置为1970年1月2日)。 密码被锁定的用户不允许更改其密码。 |
-n, --mindays MIN_DAYS | 将密码更改之间的最短天数设置为MIN_DAYS。 此字段为零表示用户可以随时更改密码。 |
-q, --quiet | 静默模式。 |
-r, --repository REPOSITORY | 在REPOSITORY存储库中更改密码。 |
-R, --root CHROOT_DIR | 在CHROOT_DIR目录中应用更改, 并使用CHROOT_DIR目录中的配置文件。 |
-S, --status | 显示帐户状态信息。 状态信息包括7个字段。 第一个字段是用户的登录名。 第二个字段指示用户帐户的密码是否被锁定(L),是否没有密码(NP) 或是否有可用的密码(P)。 第三个字段提供了上次更改密码的日期。 接下来的四个字段是密码的最短年龄、 最长年龄、警告期和密码的不活动期。 这些年龄以天为单位表示。 |
-u, --unlock | 解锁指定帐户的密码。 此选项通过将密码更改回以前的值 (在使用-l选项之前的值)来重新启用密码。 |
-w, --warndays WARN_DAYS | 设置在需要更改密码之前提前多少天警告。WARN_DAYS选项是密码到期前用户会被警告其密码即将到期的天数。 |
-x, --maxdays MAX_DAYS | 设置密码保持有效的最大天数。 在MAX_DAYS之后,需要更改密码。 |
5、使用示例
1)更改自己的密码
$ passwd
2)更改名为 username 的用户的密码
$ sudo passwd username
3)检查名为 user1 的用户密码的状态:
$ sudo passwd -S user1
4)检查系统范围内所有用户帐户的密码状态
$ sudo passwd -S -a
5)锁定用户 user1 的密码。用户 user1 将无法登录,直到系统管理员解锁它:
$ sudo passwd -l user1
6)解锁用户 user1 的密码。它将自动重置为被锁定之前的密码,用户 user1 将能够再次登录:
$ sudo passwd -u user1
7)将用户 user1 的密码设置为过期。下次他登录时,将需要设置新密码。
$ sudo passwd -e user1
8)删除用户的密码(将其设为空)
一种快速禁用帐户密码的方法。它会将指定帐户设为无密码状态。
$ sudo passwd -d user1