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. //空密码,也就是没有密码;
  查看有户状态:  passwd -s username

用户状态标志:
PS:表示用户密码已设置。
NL:表示用户帐号是不可登录帐号。
LK:表示用户已被锁定。
NP:表示用户没有密码,登录时不需要密码认证。

linux命令学习之:passwd的更多相关文章

  1. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  2. linux命令学习之:chmod

    chmod命令用来变更文件或目录的权限.在Linux系统家族里,文件或目录权限的控制分别以读取R.写入W.执行X3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文件与目录 ...

  3. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  4. linux 命令学习(持续完善中...)

    linux 命令学习(持续完善中...) 主要是记录一些开发过程中用到的linux命令,慢慢补充 一.用户 1.添加用户: useradd 用户名 2.设置密码:passwd 用户名 ,然后按照提示输 ...

  5. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  6. Linux命令学习总结之rmdir命令的相关资料可以参考下

    这篇文章主要介绍了Linux命令学习总结之rmdir命令的相关资料,需要的朋友可以参考下(http://www.nanke0834.com) 命令简介: rmdir命令用用来删除空目录,如果目录非空, ...

  7. Linux命令学习笔记1

    1.Linux命令学习 2.Mkdir /data       -创建文件夹 在/下创建文件夹 data 3.Cd               -目录切换 列如cd / 4.Touch /data/1 ...

  8. 20155229付钰涵-虚拟机安装及LINUX命令学习

    安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...

  9. 安装虚拟机&Linux命令学习

    安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...

  10. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

随机推荐

  1. li直接1px 像素的原因

    1.由于空白节点(多由于Enter造成),li不换行就可以解决问题. Internet Explorer会忽略节点之间生成的空白节点,其它浏览器不会忽略(可以通过检测节点类型,过滤子节点) 2.完美解 ...

  2. NIPS 2016上22篇论文的实现汇集

    http://blog.csdn.net/jiandanjinxin/article/details/54087592 日前,LightOn CEO 兼联合创始人 Igor Carron 在其博客上放 ...

  3. 如何使用JDBC删除一条记录

    //根据学生id删除操作    public void deleteOne(int id) {        Statement stmt=null;     //  发送SQL语句,返回执行结果   ...

  4. linux文件和目录的删除、新建、移动等操作

    在Linux下进行切换目录   cd 在Linux下查看当前目录下的内容   ls.  ll.  ls -al 如何显示当前命令所在的目录路径   pwd 在Linux下创建目录   mkdir 在L ...

  5. 10. Lambda表达式.md

    为了简化匿名内部类的代码,具体定义: 例如将9.内部类中的匿名内部类例子: 原来代码: //Main.java public class Main { public static void main( ...

  6. C++ 关于 CMFCPropertyGridCtrl 的使用方法 之二 (原创)

    接上一节所讲,这一节咱们重点讲一下CMFCPropertyGridCtrl 所支持的数据表格的建立过程 在上一节中,咱们已经了解到了 CMFCPropertyGridCtrl  是要用到实例函数:Ad ...

  7. python中的全局变量和局部变量(转)

    python中,对于变量作用域的规定有些不一样. 在诸如C/C++.java等编程语言中,默认在函数的内部是能够直接訪问在函数外定义的全局变量的,可是这一点在python中就会有问题.以下是一个样例. ...

  8. TensorFlow 辨异 —— tf.add(a, b) 与 a+b(tf.assign 与 =)、tf.nn.bias_add 与 tf.add(转)

    1. tf.add(a, b) 与 a+b 在神经网络前向传播的过程中,经常可见如下两种形式的代码: tf.add(tf.matmul(x, w), b) tf.matmul(x, w) + b 简而 ...

  9. PowerDesigner导入sql脚本生成物理模型

    https://www.cnblogs.com/zsswpb/p/5771623.html

  10. Java中构造函数传参数在基本数据类型和引用类型之间的区别

    Java中构造函数传参数在基本数据类型和引用类型的区别 如果构造函数中穿的参数为基本数据类型,如果在函数中没有返回值,在调用的时候不会发生改变:而如果是引用类型,改变的是存储的位置,所有不管有没有返回 ...