Linux系统之last命令的基本使用

举报
江湖有缘 发表于 2024/09/28 19:02:39 2024/09/28
【摘要】 Linux系统之last命令的基本使用

在这里插入图片描述

一、laste命令介绍

last 命令在 Linux 系统中用于显示最近登录系统的用户列表。它读取 /var/log/wtmp 文件来获取登录信息,并且可以显示用户的登录名、终端、登录IP地址(如果通过网络登录)、登录时间以及登出时间等信息。

二、last命令的使用帮助

2.1 last命令help帮助信息

在命令行终端中,我们使用--help查询last命令的基本帮助信息。

[root@openEuler-test ~]# last --help

Usage:
 last [options] [<username>...] [<tty>...]

Show a listing of last logged in users.

Options:
 -<number>            how many lines to show
 -a, --hostlast       display hostnames in the last column
 -d, --dns            translate the IP number back into a hostname
 -f, --file <file>    use a specific file instead of /var/log/wtmp
 -F, --fulltimes      print full login and logout times and dates
 -i, --ip             display IP numbers in numbers-and-dots notation
 -n, --limit <number> how many lines to show
 -R, --nohostname     don't display the hostname field
 -s, --since <time>   display the lines since the specified time
 -t, --until <time>   display the lines until the specified time
 -p, --present <time> display who were present at the specified time
 -w, --fullnames      display full user and domain names
 -x, --system         display system shutdown entries and run level changes
     --time-format <format>  show timestamps in the specified <format>:
                               notime|short|full|iso

 -h, --help           display this help
 -V, --version        display version

For more details see last(1).

2.2 last命令选项解释

last [选项] [<用户名>...] [<终端>...]
  • 选项
选项 描述
-<number> 显示多少行记录
-a, --hostlast 在最后一列中显示主机名
-d, --dns 将IP地址转换回主机名
-f, --file <文件> 使用指定的文件而不是 /var/log/wtmp
-F, --fulltimes 打印完整的登录和登出时间和日期
-i, --ip 以点分十进制格式显示IP地址
-n, --limit <数量> 显示多少行记录
-R, --nohostname 不显示主机名字段
-s, --since <时间> 显示从指定时间开始的记录
-t, --until <时间> 显示到指定时间为止的记录
-p, --present <时间> 显示在指定时间时在线的用户
-w, --fullnames 显示完整的用户名和域名
-x, --system 显示系统关机条目和运行级别变更
–time-format <格式> 按照指定的 <格式> 显示时间戳:notime
-h, --help 显示此帮助
-V, --version 显示版本号

三、last命令的基本使用

3.1 last直接使用

直接在命令行,使用last命令,会列出所有记录中的用户登录历史。

[root@openEuler-test ~]# last
root     pts/0        192.168.3.241    Sat Sep 28 11:58   still logged in
root     pts/0        192.168.3.241    Fri Sep 27 13:27 - 14:02  (00:34)
reboot   system boot  6.6.0-28.0.0.34. Fri Sep 27 13:26   still running
root     pts/0        192.168.3.241    Fri Sep 27 11:16 - down   (02:09)
root     pts/0        192.168.3.241    Fri Sep 27 08:49 - 09:19  (00:29)
root     pts/0        192.168.3.241    Thu Sep 26 14:06 - 15:29  (01:23)
root     pts/0        192.168.3.241    Thu Sep 26 13:32 - 14:05  (00:32)
root     pts/0        192.168.3.241    Wed Sep 25 18:54 - 01:09  (06:15)
root     pts/1        192.168.3.241    Tue Sep 24 23:06 - 00:14  (01:07)
root     pts/0        192.168.3.241    Tue Sep 24 22:59 - 00:14  (01:15)
root     pts/0        192.168.3.241    Tue Sep 24 22:47 - 22:58  (00:10)
root     pts/0        192.168.3.241    Tue Sep 24 22:41 - 22:45  (00:03)
root     pts/0        192.168.3.241    Tue Sep 24 22:39 - 22:39  (00:00)
root     pts/0        192.168.3.241    Tue Sep 24 11:15 - 13:52  (02:36)
root     pts/0        192.168.3.241    Sun Sep 22 23:52 - 01:01  (01:08)
root     pts/0        192.168.3.241    Sat Sep  7 14:57 - 00:59  (10:02)
reboot   system boot  6.6.0-28.0.0.34. Sun Sep  1 04:40 - 13:26 (26+08:46)
root     pts/0        192.168.3.241    Sun Sep  1 04:33 - down   (00:06)
root     pts/0        192.168.3.241    Thu Aug 29 03:05 - 10:05  (07:00)
root     pts/0        192.168.3.241    Wed Aug 21 07:19 - 20:04  (12:44)
root     pts/0        192.168.3.241    Mon Aug 19 13:09 - 14:43  (01:33)
root     pts/0        192.168.3.241    Wed Aug 14 20:43 - 20:43  (00:00)
root     pts/0        192.168.3.241    Tue Aug 13 19:43 - 04:46  (09:03)
root     pts/0        192.168.3.241    Mon Aug 12 11:12 - 03:19  (16:07)
root     pts/0        192.168.3.241    Sun Aug 11 21:26 - 00:12  (02:46)
root     pts/0        192.168.3.241    Sun Aug 11 10:02 - 10:19  (00:17)
root     pts/0        192.168.3.241    Sat Aug 10 12:02 - 21:42  (09:40)
root     pts/1        192.168.3.241    Thu Aug  8 16:46 - 19:00  (02:14)
root     pts/0        192.168.3.168    Thu Aug  8 16:41 - 18:55  (02:14)
root     tty1                          Thu Aug  8 16:40 - 04:39 (23+11:59)
reboot   system boot  6.6.0-28.0.0.34. Thu Aug  8 16:38 - 04:39 (23+12:01)
reboot   system boot  6.6.0-28.0.0.34. Thu Jun 27 15:54 - 04:39 (65+12:45)

wtmp begins Thu Jun 27 15:54:01 2024

3.2 显示特定用户的登录记录

如果我们只想查看某个用户的登录记录,可以在命令后加上用户名。

[root@openEuler-test ~]# last admin
admin    pts/1        192.168.3.89     Sat Sep 28 15:55 - 15:55  (00:00)

wtmp begins Thu Jun 27 15:54:01 2024

3.3 显示自系统启动以来的所有活动

如果想查看自上一次系统重启以来的所有登录和注销活动,可以使用 -s 和 -t 选项来定义一个时间段,或者简单地使用 reboot 关键字来代替用户名:

[root@openEuler-test ~]# last reboot
reboot   system boot  6.6.0-28.0.0.34. Fri Sep 27 13:26   still running
reboot   system boot  6.6.0-28.0.0.34. Sun Sep  1 04:40 - 13:26 (26+08:46)
reboot   system boot  6.6.0-28.0.0.34. Thu Aug  8 16:38 - 04:39 (23+12:01)
reboot   system boot  6.6.0-28.0.0.34. Thu Jun 27 15:54 - 04:39 (65+12:45)

wtmp begins Thu Jun 27 15:54:01 2024

3.4 显示指定数量的最新记录

通过 -n 选项来限制输出的行数,例如只显示最新的5条记录:

[root@openEuler-test ~]# last -n 5
admin    pts/1        192.168.3.89     Sat Sep 28 15:55 - 15:55  (00:00)
root     pts/0        192.168.3.241    Sat Sep 28 11:58   still logged in
root     pts/0        192.168.3.241    Fri Sep 27 13:27 - 14:02  (00:34)
reboot   system boot  6.6.0-28.0.0.34. Fri Sep 27 13:26   still running
root     pts/0        192.168.3.241    Fri Sep 27 11:16 - down   (02:09)

wtmp begins Thu Jun 27 15:54:01 2024

3.5 查询1小时前还在线用户

可以使用 -p 或 --present 选项。这个选项允许你指定一个时间点,并且 last 会显示在那个时间点仍然登录系统的用户。

[root@openEuler-test ~]# last -p "1 hour ago"
root     pts/0        192.168.3.241    Sat Sep 28 11:58   still logged in
reboot   system boot  6.6.0-28.0.0.34. Fri Sep 27 13:26   still running

wtmp begins Thu Jun 27 15:54:01 2024

四、总结

  • 确保 /var/log/wtmp 文件存在且可读,因为 last 命令依赖于该文件来显示登录信息。
  • 需要有适当的权限(通常是root用户或具有sudo权限的用户)才能查看完整的登录记录。
  • 如果系统非常繁忙,/var/log/wtmp 文件可能会变得很大,可能会影响 last 命令的性能。
  • 使用 -p--present 选项指定时间时,确保提供的时间格式正确无误。
  • 使用 -f 选项指定的日志文件必须存在并且格式正确,否则 last 可能无法正常工作。
  • 使用 -s-t 选项限制时间范围时,确保时间格式与系统日志中的时间戳匹配。
  • 如果系统未启用 wtmp 记录功能,last 命令将不会返回任何结果。
  • 定期检查和维护 /var/log/wtmp 文件,以防止其占用过多磁盘空间。
  • 查询特定用户时,确保用户名拼写正确,否则 last 将不会显示任何结果。
  • 对于远程登录,确保网络配置允许记录IP地址,以便 last 能够显示正确的来源信息。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。