Linux 常用命令 - last 【显示历史登录用户列表】

简介

last 命令源自英文单词 “last”,意为“最后”。该命令用于显示系统中用户的登录和注销记录,以及系统的重启和关机记录。它通过读取 /var/log/wtmp 文件来获取这些信息,wtmp 文件记录了所有用户的登录和注销活动。

使用方式

last [options] [username...] [tty...]
lastb [options] [username...] [tty...]

常用选项

  • -a, --hostlast:在最后一列显示主机名称。与 --dns 选项配合使用时比较有用。
  • -d, --dns:对于非本地登录,Linux 除了存储远程主机的名称外,还会保存其 IP 地址。使用此选项会将 IP 地址转换为主机名显示。
  • -f, --file file:指定一个特定的文件供 last 命令使用,而非默认的 /var/log/wtmp 文件。此选项可以多次出现,所有指定的文件都会被依次处理。
  • -F, --fulltimes:以完整格式显示登录和退出的日期与时间。
  • -i, --ip:与 --dns 类似,但显示的是主机的 IP 地址而不是主机名。
  • -number; -n, --limit number:指定 last 命令最多显示的记录行数。
  • -p, --present time:显示指定时间点登录的用户。该选项等同于同时使用 --since--until 选项,指定相同的时间。
  • -R, --nohostname:不显示主机名字段。
  • -s, --since time:显示自指定时间以来的登录状态。这对于查找某一时刻哪些用户在线特别有用,通常会与 --until 选项一起使用。
  • -t, --until time:显示指定时间之前的登录状态。
  • --time-format format:定义输出的时间戳格式,可选值有 notimeshortfullisonotime 表示不显示时间戳;short 为默认格式;full--fulltimes 选项一样,显示完整时间;iso 则以 ISO-8601 格式显示时间戳,该格式包含时区信息,适用于在系统外部进行打印记录分析。
  • -w, --fullnames:显示完整的用户名和域名。
  • -x, --system:显示系统关机记录以及运行级别变化记录。

时间格式

下面是 time 参数支持的各种格式。可以使用这些格式来指定特定的日期或时间,便于查询登录状态:

格式说明
YYYYMMDDhhmmss年月日时分秒 形式。
YYYY-MM-DD hh:mm:ss年-月-日 时:分:秒 形式。
YYYY-MM-DD hh:mm年-月-日 时:分 形式,(秒数自动补为 00)。
YYYY-MM-DD年-月-日 形式,(时间自动补为 00:00:00)。
hh:mm:ss时:分:秒 形式,(日期自动设为今天)。
hh:mm时:分 形式,(日期自动设为今天,秒数补为 00)。
now表示当前时间。
yesterday表示昨天(时间自动设为 00:00:00)。
today表示今天(时间自动设为 00:00:00)。
tomorrow表示明天(时间自动设为 00:00:00)。
+5min表示从当前时间起加上 5 分钟。
-5days表示从当前时间起减去 5 天。

参考示例

1. 显示登录记录

last

直接使用 last 可以显示出所有被记录的用户登录信息:

jay@jaylinuxlenovo:~/test$ last
jay      pts/6        :pts/0:S.0       Sun Feb 23 21:58 - 22:38  (00:39)
jay      pts/6        :pts/5:S.0       Sun Feb 23 21:25 - 21:27  (00:01)
jay      pts/1        :pts/0:S.0       Mon Feb 10 10:52 - 10:52  (00:00)
jay      pts/1        127.0.0.1        Sun Feb  9 15:41 - 02:00  (10:19)
jay      tty1                          Sun Feb  9 15:37   still logged in
jay      pts/0        127.0.0.1        Sun Feb  9 15:01 - 15:41  (00:39)
reboot   system boot  5.15.0-131-gener Sun Feb  9 14:44   still running
jay      pts/5        127.0.0.1        Thu Feb  6 17:07 - 17:07  (00:00)
......

2. 显示指定用户的登录记录

last username

使用 last 加用户名可以显示指定用户的登录记录:

jay@jaylinuxlenovo:~/test$ last jay
jay      pts/6        :pts/0:S.0       Sun Feb 23 21:58 - 22:38  (00:39)
jay      pts/6        :pts/5:S.0       Sun Feb 23 21:25 - 21:27  (00:01)
jay      pts/1        :pts/0:S.0       Mon Feb 10 10:52 - 10:52  (00:00)
jay      pts/1        127.0.0.1        Sun Feb  9 15:41 - 02:00  (10:19)
jay      tty1                          Sun Feb  9 15:37   still logged in
jay      pts/0        127.0.0.1        Sun Feb  9 15:01 - 15:41  (00:39)
......

3. 显示最后 5 条登录记录

last -n 5

使用 -n 选项可以指定输出的最多行数:

jay@jaylinuxlenovo:~/test$ last -n 5
jay      pts/6        :pts/0:S.0       Sun Feb 23 21:58 - 22:38  (00:39)
jay      pts/6        :pts/5:S.0       Sun Feb 23 21:25 - 21:27  (00:01)
jay      pts/1        :pts/0:S.0       Mon Feb 10 10:52 - 10:52  (00:00)
jay      pts/1        127.0.0.1        Sun Feb  9 15:41 - 02:00  (10:19)
jay      tty1                          Sun Feb  9 15:37   still logged in

wtmp begins Fri Oct 21 07:47:59 2022

4. 以完整格式显示登录和退出的日期与时间

last -F

使用 -F 选项可以以完整格式显示登录和退出的日期与时间:

jay@jaylinuxlenovo:~/test$ last -F -n 5
jay      pts/6        :pts/0:S.0       Sun Feb 23 21:58:55 2025 - Sun Feb 23 22:38:21 2025  (00:39)
jay      pts/6        :pts/5:S.0       Sun Feb 23 21:25:24 2025 - Sun Feb 23 21:27:17 2025  (00:01)
jay      pts/1        :pts/0:S.0       Mon Feb 10 10:52:27 2025 - Mon Feb 10 10:52:32 2025  (00:00)
jay      pts/1        127.0.0.1        Sun Feb  9 15:41:17 2025 - Mon Feb 10 02:00:21 2025  (10:19)
jay      tty1                          Sun Feb  9 15:37:52 2025   still logged in

wtmp begins Fri Oct 21 07:47:59 2022

注意事项

  • last 命令依赖于 /var/log/wtmp 文件,如果该文件被删除或损坏,last 命令将无法正常工作。
  • last 命令显示的信息可能会受到系统日志轮换策略的影响,较旧的记录可能会被删除。
  • 在某些系统中,last 命令可能需要管理员权限才能查看所有用户的登录记录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WKJay_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值