前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【linux命令讲解大全】211.Linux系统命令之passwd的用法详解

【linux命令讲解大全】211.Linux系统命令之passwd的用法详解

作者头像
全栈若城
发布2024-03-02 15:08:20
1870
发布2024-03-02 15:08:20
举报
文章被收录于专栏:若城技术专栏若城技术专栏

passwd

用于让用户可以更改自己的密码

补充说明

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用户的权限来创建。

代码语言:javascript
复制
[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。

代码语言:javascript
复制
[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选项来锁定:

代码语言:javascript
复制
[root@localhost ~]# passwd -l linuxde     # 锁定用户linuxde不能更改密码;
Locking password for user linuxde.
passwd: Success            # 锁定成功;
代码语言:javascript
复制
[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      # 失败,不能更改密码;

再来一例:

代码语言:javascript
复制
[root@localhost ~]# passwd -d linuxde   # 清除linuxde用户密码;
Removing password for user linuxde.
passwd: Success                          # 清除成功;
代码语言:javascript
复制
[root@localhost ~]# passwd -S linuxde     # 查询linuxde用户密码状态;
Empty password.                          # 空密码,也就是没有密码;
注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • passwd
    • 补充说明
      • 语法
        • 选项
          • 参数
            • 知识扩展
              • 实例
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档