服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Linux系统中的passwd命令实用技巧小结

Linux系统中的passwd命令实用技巧小结

2019-07-08 13:2451CTO Linux

这篇文章主要介绍了Linux系统中的passwd命令实用技巧小结,是Linux入门学习中的基础知识,需要的朋友可以参考下

先来回顾一下passwd命令的基本用法:
Linux passwd命令用来更改使用者的密码
语法
passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]
必要参数:
-d 删除密码
-f 强制执行
-k 更新只能发送在过期之后
-l 停止账号使用
-S 显示密码信息
-u 启用已被停止的账户
-x 设置密码的有效期
-g 修改群组密码
-i 过期后停止用户账号
选择参数:
--help 显示帮助信息
--version 显示版本信息
实例
修改用户密码
 

复制代码

代码如下:


# passwd w3cschool //设置w3cschool用户的密码
Enter new UNIX password: //输入新密码,输入的密码无回显
Retype new UNIX password: //确认密码
passwd: password updated successfully


显示账号密码信息

复制代码

代码如下:


# passwd -S w3cschool
w3cschool P 05/13/2010 0 99999 7 -1


删除用户密码

复制代码

代码如下:


# passwd -d lx138 
passwd: password expiry information changed.

 

好的,接下来来看一下实际的应用场合:
例1:更改系统用户的密码

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

复制代码

代码如下:


[linuxtechi@linuxworld ~]$ passwd 
Changing password for user linuxtechi. 
Changing password for linuxtechi. 
(current) UNIX password: 
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully. 
[linuxtechi@linuxworld ~]$ 


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

复制代码

代码如下:


[root@linuxworld ~]# passwd 
[root@linuxworld ~]# passwd linuxtechi 


Linux系统中的passwd命令实用技巧小结

 

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

例2:显示密码状态信息

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

复制代码

代码如下:


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


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

 

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

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

复制代码

代码如下:


root@localhost:~# passwd -Sa


Linux系统中的passwd命令实用技巧小结

 

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

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

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

复制代码

代码如下:


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


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

 

例5:设置密码立即过期

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

复制代码

代码如下:


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


现在尝试用 linuxtechi 用户 SSH 连接到主机。
Linux系统中的passwd命令实用技巧小结

 

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

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

复制代码

代码如下:


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


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

复制代码

代码如下:


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


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

 

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

复制代码

代码如下:


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


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

 

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

复制代码

代码如下:


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


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

 

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

复制代码

代码如下:


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

延伸 · 阅读

精彩推荐
  • Linuxssh 登录很慢该如何解决

    ssh 登录很慢该如何解决

    这篇文章主要介绍了ssh 登录很慢该如何解决的相关资料,这里提供了两种方法,DNS反向解析及关闭ssh的gssapi认证的解决办法,需要的朋友可以参考下...

    linuxeye9922021-12-16
  • Linux将 Linux 终端与 Nautilus 文件管理器结合起来

    将 Linux 终端与 Nautilus 文件管理器结合起来

    Nautilus 是 GNOME 桌面环境中的图形化文件浏览器。你可以使用它来访问和管理系统中的文件和文件夹。 尽管并非所有人都喜欢使用终端来管理文件和目录,...

    未知812023-08-08
  • Linuxlinux设置tomcat自启动的方法

    linux设置tomcat自启动的方法

    这篇文章主要介绍了linux设置tomcat自启动的方法,需要的朋友可以参考下...

    Linux教程网8512021-10-10
  • Linuxlinux top命令详解

    linux top命令详解

    这篇文章主要介绍了linux top命令详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    sparkdev5622022-03-01
  • Linuxlinux驱动程序开发详细介绍

    linux驱动程序开发详细介绍

    前提,一般来说内核代码的错误可能会引起一个用户进程的死亡,或者整个系统的瘫痪,更严重的后果,可能导致磁盘损伤~因此建议最好有一台实验机进行...

    Linux教程网5392019-12-17
  • LinuxLinux系统下无法卸载挂载的目录怎么办?

    Linux系统下无法卸载挂载的目录怎么办?

    我们在日常运维中经常性会遇到需要进行磁盘的扩容、卸载、挂载等操作,但是有时候这个系统上跑的应用并没有停止或者有其他的运维同事在操作这个目...

    今日头条10302020-12-30
  • Linux理解 Linux/Unix 登录脚本的技巧

    理解 Linux/Unix 登录脚本的技巧

    有一些常见的情况,例如从Debian的包管理程序到Iaas的管理中,很多任务需要设置环境变量才能正常运行。 有时,程序通常只需要在 登陆时运行一次,例如...

    未知1042023-05-12
  • Linux在Linux系统中创建新的亚马逊AWS访问密钥的方法

    在Linux系统中创建新的亚马逊AWS访问密钥的方法

    如何在Linux系统中创建新的亚马逊AWS访问密钥?我在配置一个需要访问我的亚马逊AWS帐号的应用时被要求提供AWS访问密钥ID和秘密访问密钥,我怎样创建一个...

    Linux教程网6182019-10-30