[root@localhost ~]# w 11:01:06 up 3 days, 12:40, 1 user, load average: 0.00, 0.01, 0.05 user tty from login@ idle jcpu pcpu what root pts/1 10.0.2.2 254月20 2.00s 0.32s 0.00s w [root@localhost ~]# who root pts/1 2020-04-25 09:03 (10.0.2.2) [root@localhost ~]# last root pts/1 10.0.2.2 sat apr 25 09:03 still logged in root pts/0 10.0.2.2 sat apr 25 08:52 - 23:11 (4 14:19) root pts/0 10.0.2.2 sat apr 25 08:21 - 08:37 (00:16) root pts/1 10.0.2.2 thu apr 23 23:09 - 08:13 (1 09:03) root pts/1 10.0.2.2 thu apr 23 22:23 - 23:09 (00:45) root pts/0 10.0.2.2 thu apr 23 22:23 - 08:18 (1 09:54) root pts/0 10.0.2.2 thu apr 16 22:34 - 22:00 (6 23:25) reboot system boot 3.10.0-327.4.5.e thu apr 16 22:34 - 11:01 (14 12:27) root pts/0 10.0.2.2 thu apr 16 21:51 - crash (00:43) root pts/0 10.0.2.2 thu apr 16 21:40 - 21:50 (00:10) reboot system boot 3.10.0-327.4.5.e thu apr 16 21:40 - 11:01 (14 13:21) reboot system boot 3.10.0-327.4.5.e thu apr 16 21:38 - 11:01 (14 13:22) reboot system boot 3.10.0-327.4.5.e wed jan 27 20:50 - 19:51 (00:-58) reboot system boot 3.10.0-327.el7.x wed jan 27 20:47 - 19:51 (00:-55) wtmp begins wed jan 27 20:47:08 2016 [root@localhost ~]#
lastlog 查看所有用户最后一次登录信息
who 命令显示关于当前在本地系统上的所有用户的信息。显示以下内容:登录名、tty、登录日期和时间。输入whoami 显示您的登录名、tty、您登录的日期和时间。如果用户是从一个远程机器登录的,那么该机器的主机名也会被显示出来。
who 命令也能显示自从线路活动发生以来经过的时间、命令解释器(shell)的进程标识、登录、注销、重新启动和系统时钟的变化,还能显示由初始化进程生成的其它进程。
常见命令参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | a 处理 /etc/utmp 文件或有全部信息的指定文件。等同于指定 -bdlprttu 标志。 -b 指出最近系统启动的时间和日期。 -d 显示没有被 init 重新生成的所有到期的进程。退出字段用于显示死进程并包含死进程的终止和退出值(由 wait 进程返回的)。(这个标志用于通过察看应用程序返回的错误号来确定一个进程的结束原因。) -l 列出任何登录进程。 -m 仅显示关于当前终端的信息。 who -m 命令等同于 who am i 和 who am i 命令。 -p 列出任何当前活动的和以前已由 init 生成的活动进程。 -q 打印一份在本地系统上的用户和用户数的快速清单。 -r 显示当前进程的运行级别。 -s 仅列出名字、线路和时间字段。这个标志是缺省值;因此, who 和 who -s 命令是等效的。 -t 显示 root 用户上一次用 date 命令对系统时钟做的更改。如果 date 命令自从系统安装以来还没有被运行过, who -t 命令就不产生输出。 -u 或 -i 显示每个当前用户的用户名、 tty 、登录时间、线路活动和进程标识。 -a 显示在 /etc/utmp 文件中的所有记帐项。这些项是通过 acctwtmp 命令生成的。 -h 显示一个头(标题)。 -t 或 -w 显示 tty 的状态并如下显示谁能够对 tty 写入: |
常见命令展示
1 | who |
显示当前用户的ip信息
1 | who –m |
last [-num | -n num] [-f file] [-t yyyymmddhhmmss] [-r] [-adioxfw] [username..] [tty..]
last作用是显示近期用户或终端的登录情况。通过last命令查看该程序的log,管理员可以获知谁曾经或者企图连接系统。
执行last命令时,它会读取/var/log目录下名称为wtmp的文件,并把该文件记录的登录系统或终端的用户名单全部显示出来。默认显示wtmp的记录,btmp能显示的更详细,可以显示远程登录,例如ssh登录。
1 2 3 4 | -num |-n num指定输出记录的条数 -f file 指定记录文件作为查询的log文件 -t yyyymmddhhmmss 显示指定时间之前的登录情况 username 账户名称< br >tty 终端机编号 |
(1).选项
1 2 3 4 5 6 7 8 | -r 不显示登录系统或终端的主机名称或ip -a 将登录系统或终端的主机名过ip地址显示在最后一行 -d 将ip地址转成主机名称 -i 显示特定ip登录情况。 -o 读取有linux-libc5应用编写的旧类型wtmp文件 -x 显示系统关闭、用户登录和退出的历史 -f 显示登录的完整时间 -w 在输出中显示完整的用户名或域名 |
(2).实例
第一列:用户名
第二列:终端位置(pts/0伪终端,意味着从ssh或telnet等工具远程连接的用户,图形界面终端归于此类。tty0直接连接到计算机或本地连接的用户。后面的数字代表连接编号)
第三列:登录ip或内核(如果是:0.0或者什么都没有,意味着用户通过本地终端连接。除了重启活动,内核版本会显示在状态中)
第四列:开始时间
第五列:结束时间(still login in尚未退出,down直到正常关机,crash直到强制关机)
第六列:持续时间
指定显示记录的数量(显示记录中最后登录的数量)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | [root@centos6 桌面]# last -n 10 root pts/0 :0.0 wed apr 25 10:12 still logged in root pts/1 :0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 :0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 :0.0 wed apr 25 10:02 - 10:06 (00:04) root pts/0 :0.0 wed apr 25 09:51 - 09:51 (00:00) root pts/0 :0.0 wed apr 25 09:45 - 09:51 (00:05) root pts/1 :0.0 wed apr 25 09:38 - 09:41 (00:02) root pts/0 :0.0 wed apr 25 09:34 - 09:45 (00:11) root pts/0 :0.0 tue apr 17 10:46 - 10:48 (00:02) root pts/0 :0.0 tue apr 17 10:33 - 10:46 (00:13) wtmp begins tue mar 13 18:31:47 2018 [root@centos6 桌面]# last -10 root pts/0 :0.0 wed apr 25 10:12 still logged in root pts/1 :0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 :0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 :0.0 wed apr 25 10:02 - 10:06 (00:04) root pts/0 :0.0 wed apr 25 09:51 - 09:51 (00:00) root pts/0 :0.0 wed apr 25 09:45 - 09:51 (00:05) root pts/1 :0.0 wed apr 25 09:38 - 09:41 (00:02) root pts/0 :0.0 wed apr 25 09:34 - 09:45 (00:11) root pts/0 :0.0 tue apr 17 10:46 - 10:48 (00:02) root pts/0 :0.0 tue apr 17 10:33 - 10:46 (00:13) wtmp begins tue mar 13 18:31:47 2018 |
指定查询的文件,原本默认的是wtmp
1 2 3 | [root@centos6 桌面]# last -10 -f / var /log/btmp root tty1 :0 mon apr 16 09:07 gone - no logout btmp begins mon apr 16 09:07:03 2018 |
将ip 地址转换为主机地址
1 2 3 4 5 6 7 8 9 10 11 12 | [root@centos6 桌面]# last -10 -d root pts/0 0.0.0.0 wed apr 25 10:12 still logged in root pts/1 0.0.0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 0.0.0.0 wed apr 25 10:06 - 10:10 (00:03) root pts/0 0.0.0.0 wed apr 25 10:02 - 10:06 (00:04) root pts/0 0.0.0.0 wed apr 25 09:51 - 09:51 (00:00) root pts/0 0.0.0.0 wed apr 25 09:45 - 09:51 (00:05) root pts/1 0.0.0.0 wed apr 25 09:38 - 09:41 (00:02) root pts/0 0.0.0.0 wed apr 25 09:34 - 09:45 (00:11) root pts/0 0.0.0.0 tue apr 17 10:46 - 10:48 (00:02) root pts/0 0.0.0.0 tue apr 17 10:33 - 10:46 (00:13) wtmp begins tue mar 13 18:31:47 2018 |
显示指定时间之前的记录
1 2 3 4 5 6 7 8 9 10 11 12 | [root@centos6 桌面]# last -10 -t 20180425000000 //之所以展示出来是为了提醒下-t后面的时间写法 root pts/0 :0.0 tue apr 17 10:46 - 10:48 (00:02) root pts/0 :0.0 tue apr 17 10:33 - 10:46 (00:13) root pts/0 :0.0 tue apr 17 10:26 - 10:26 (00:00) root tty2 tue apr 17 10:23 - 10:23 (00:00) root pts/0 :0.0 tue apr 17 10:22 - 10:22 (00:00) root pts/0 :0.0 tue apr 17 10:22 - 10:22 (00:00) root tty1 :0 tue apr 17 09:49 still logged in reboot system boot 2.6.32-642.el6.x tue apr 17 09:48 - 10:21 (8 00:32) root pts/0 :0.0 mon apr 16 16:13 - 16:20 (00:07) root pts/0 :0.0 mon apr 16 15:39 - 16:13 (00:33) wtmp begins tue mar 13 18:31:47 2018 |
linux w命令用于显示目前登入系统的用户信息。
执行这项指令可得知目前登入系统的用户有哪些人,以及他们正在执行的程序。
单独执行 w 指令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
语法
w [-fhlsuv][用户名称]
参数说明:
- -f 开启或关闭显示用户从何处登入系统。
- -h 不显示各栏位的标题信息列。
- -l 使用详细格式列表,此为预设值。
- -s 使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的cpu时间。
- -u 忽略执行程序的名称,以及该程序耗费cpu时间的信息。
- -v 显示版本信息。