Linux实现查看用户密码到期时间

 更新时间:2026年07月06日 10:48:13   作者:promise524  
想知道Linux用户密码何时到期?本文教你3种超实用方法,用chage命令直接显示到期日期,用passwd命令推算过期时间,或通过/etc/shadow文件精确计算,立即掌握密码管理技巧,避免账户被锁

在 Linux 系统中,查询用户密码到期时间可以通过以下几种方法来实现。

方法 1:使用chage命令

chage 命令可以查看用户密码的到期时间、上次修改时间、最小和最大密码年龄等信息。

语法

chage -l username

示例

chage -l testusr

输出:

Last password change                                    : Aug 16, 2024
Password expires                                        : Nov 14, 2024
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 7
Maximum number of days between password change          : 90
Number of days of warning before password expires       : 7

如上:用户 testusr 的密码将在 2024年11月14日 过期。

方法 2:使用passwd命令

使用 passwd 命令显示用户密码的过期信息。

语法

passwd -S username

示例

passwd -S testusr

输出:

testusr P 08/16/2024 90 7 7
  • P 表示账户密码已启用(L 表示已锁定)。
  • 08/16/2024 是密码上次修改的日期。
  • 90 表示密码的最大有效天数(即密码将过期的天数)。
  • 7 是在密码到期之前提醒用户的天数。

可以结合上次修改时间和最大天数来推算密码到期日期。

方法 3:查看/etc/shadow文件

用户密码到期信息存储在 /etc/shadow 文件中。可以直接查看这个文件,不过信息是加密和编码的,处理起来略复杂。

示例

grep testusr /etc/shadow

输出:

testusr:$6$Klk7/...:18934:7:90:7:::

解释:

  • 第 4 列(18934)表示上次修改密码的日期,基于自 1970-01-01 以来的天数。
  • 第 5 列表示最小密码修改间隔(天)。
  • 第 6 列表示最大密码有效期(天)。
  • 第 7 列是密码过期前的警告天数。

要查看具体到期时间,可以用日期计算器将第 4 列转换为实际日期。例如,18934 是自 1970-01-01 以来的天数。

date -d "1970-01-01 +18934 days"

输出:

Thu Aug 16 00:00:00 UTC 2023

这样就可以得知密码的上次修改时间。结合最大有效期,计算出到期时间。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux基于TCP实现服务端客户端通信的步骤详解

    Linux基于TCP实现服务端客户端通信的步骤详解

    文章详细介绍了Linux系统中的前台进程和后台进程的概念、创建、切换和操作方法,以及进程关系、守护进程、TCP服务器与客户端通信等方面的内容,需要的朋友可以参考下
    2026-03-03
  • Ubuntu 20.04 CUDA&cuDNN安装方法(图文教程)

    Ubuntu 20.04 CUDA&cuDNN安装方法(图文教程)

    这篇文章主要介绍了Ubuntu 20.04 CUDA&cuDNN安装方法(图文教程),文中通过图文代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • linux控制台下实现2048小游戏

    linux控制台下实现2048小游戏

    2048小游戏已经火了很久了,各种程序版本的都有,今天我们就来给大家分享一个在Linux控制台中实现2048小游戏的代码,希望大家能够喜欢。
    2015-03-03
  • Linux下安装jdk包含卸载OpenJDK介绍

    Linux下安装jdk包含卸载OpenJDK介绍

    大家好,本篇文章主要讲的是Linux下安装jdk包含卸载OpenJDK介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Linux服务器出现崩溃或异常的故障排查和急救指南

    Linux服务器出现崩溃或异常的故障排查和急救指南

    当 Linux 服务器出现崩溃或异常时,及时有效的故障排查是至关重要的,以下是一个综合性的急救指南,帮助你在遇到问题时进行快速的故障排查和修复,需要的朋友可以参考下
    2025-11-11
  • 详解Linux如何将一个文件夹的所有内容授权给某一个用户?

    详解Linux如何将一个文件夹的所有内容授权给某一个用户?

    这篇文章主要介绍了Linux如何将一个文件夹的所有内容授权给某一个用户,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 常用Linux发行版镜像源配置小结

    常用Linux发行版镜像源配置小结

    这篇文章主要介绍了常用Linux发行版镜像源配置小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Ubuntu无网络标识的问题及解决

    Ubuntu无网络标识的问题及解决

    这篇文章主要介绍了Ubuntu无网络标识的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • Linux中SELinux三种模式的启动、关闭与查看方式

    Linux中SELinux三种模式的启动、关闭与查看方式

    这篇文章主要介绍了Linux中SELinux三种模式的启动、关闭与查看方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Ubuntu26.04换阿里云镜像源过程

    Ubuntu26.04换阿里云镜像源过程

    本文介绍了将Ubuntu 26.04镜像源从原始源替换为阿里云源的方法,首先备份原始的源文件,然后编辑并替换为阿里云源的内容,接着更新缓存并验证更新是否生效,文章还提供了一键脚本,直接执行即可
    2026-05-05

最新评论