「lastlog(8)」-

报告所有用户或者指定用户的最近登录情况

命令语法格式

lastlog [options]

命令描述

命令lastlog格式化并打印上次登录日志(/var/log/lastlog)文件的内容。

将打印登录名、端口、上次登录时间。无选项时,将会打印所有的条目,并按用户在/etc/passwd中的排序进行打印。如果用户从未登录过,则将显示“**Never logged in**”消息,而不是端口和时间。

仅显示当前系统中存在的用户的条目。可能存在以前删除的用户的条目。

命令支持的选项及含义

命令lastlog支持如下的选项:

-R, –root CHROOT_DIR
在CHROOT_DIR目录中应用更改,并使用CHROOT_DIR目录中的配置文件。

-b, –before DAYS
打印DAYS天之前的最近登录记录。

-u, –user LOGIN|RANGE
打印指定用户的最近登录记录。参数可以是用户名、用户ID、用户ID的范围。

用户ID的范围可以使用最小值和最大值(UID_MIN-UID_MAX)、最大值(-UID_MAX)、最小值(UID_MIN-)指定此RANGE用户。如下示例:

# lastlog -u 12-

# lastlog -u -0

# lastlog -u 100-400

第一条命令将打印用户ID大于等于12的记录;第二条命令将只打印属于root的记录,因为小于等于0的只有root;第三条命令将打印用户ID介于100到400之间的记录。

-S, –set
将一个用户的最近登录记录设置为当前时间。该只能与-u(–user)选项一起使用。

-t, –time DAYS
打印最近DAYS天内的最近登录记录。

-C, –clear
清除一个用户的最近登录记录。该选项可以与-u(–user)选项一起使用。

-h, –help
显示帮助信息并退出。

注意事项

文件lastlog是一个数据库,其中包含每个用户上次登录的信息。你不应该对其进行轮转。它是一个稀疏文件,因此它在磁盘上的大小通常远小于“ls -l”所示的大小(可以如果你有一个高UID的passwd用户,则表示一个非常大的文件。你可以使用“ls -s”显示其实际大小。

不连续的UID编号中的大间隙将会导致命令lastlog运行更长时间,而没有任何数据输出到屏幕。即,如果在lastlog数据库中没有UID介于170和800之间的用户条目,则lastlog在处理UID为171-799的条目时将显示为挂起。

相关文件

/var/log/lastlog
保存之前用户登录记录的数据库。

参考文献

  • man 8 lastlog, Version shadow-utils 4.4

更新日志

  • 07/16/2018 创建文章