我以前工作的地方使用的操作系统是 Solaris,我发现除了用于查找有关 UNIX 用户 ID 和组名信息的标准实用函数(如 getpwuid、getgrent 等)之外,还有一种方法可以获取任何给定用户 ID 在相关用户离开公司后被停用的日期。我编写了一个类似于“ls”的应用程序,它在控制台窗口中列出当前目录的内容,显示每个文件的名称、大小、创建日期和其他字段,并在两列中显示拥有该文件的用户 ID 以及该用户 ID 被分配到的人员的外部全名。如果文件所有者已经离开公司,常规 ls 命令在文件列表中为该行显示的是数字 uid,而不是字母数字用户 ID。我使用 getpwuid 函数获取与显示的 uid 对应的用户 ID,并使用 getpw* 函数返回的 gcos 值作为用户名,不知怎的,我还能够找到由于用户离开公司而停用用户 ID 的日期,我会在文件列表实用程序中将其显示在该文件旁边。我现在也有类似的需求,需要获取给定用户登录 ID 上次停用的日期,如果可用,还要获取它首次激活的最早日期。但是,我不记得在 Solaris 环境中如何做到这一点,也无法弄清楚如何在新环境中做到这一点。我的新环境如下:
操作系统:RHEL CPE OS 名称:cpe:/o:redhat:enterprise_linux:7.7:GA:server 内核:Linux 3.10.0-1160.15.2.el7.x86_64 架构:x86-64
有人知道怎么做吗?
提前致谢。