w 命令
查看 Linux 服务器上目前已经登录的用户信息
[root@localhost ~]# w
:: up :, users, load average:0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - : .00s .02s .02s -bash
root pts/ 192.168.0.108 : .00s .09s .06s w
- 第一行和 top 命令的第一行非常类似,主要显示了系统当前时间、开机多久(up)、有多少用户登录(users),以及 1 分钟、5 分钟、15 分钟前的平均负载(load average)。
- 第二行是项目的说明,从第三行开始每行代表一个用户。这些项目具体如下:
- USER:登录的用户名。
- TTY:登录终端。
- FROM:从哪个 IP 地址登录。
- LOGIN@:登录时间。
- IDLE:用户闲置时间。
- JCPU:和该终端连接的所有进程占用的 CPU 运算时间。这个时间里并不包括过去的后台作业时间,但是包括当前正在运行的后台作业所占用的时间。
- PCPU:当前进程所占用的 CPU 运算时间。
- WHAT:当前正在运行的命令。
tty1表示是从本地终端 1 登录的 ,pts/0 表示是从远程终端 1 登录的,登录的来源 IP 是 192.168.0.108。
who命令
who 命令比 w 命令稍微简单,也可以用来查看系统中已经登录的用户。命令如下:
[root@localhost ~]# who
root tty1 -- :
root pts/ -- : (192.168.0.108)
#用户名 登录终端 登录时间(登录来源IP)
last命令
查询当前已经登录和过去登录的用户信息,显示用户名 登录终端 登录IP 登录时间 - 退出时间(在线时间),还能看到系统的重启时间。
[root@localhost ~]# last
root pts/ 192.168.1.105 Sat Dec : still logged in
lizhouwe pts/ : Fri Dec : still logged in
reboot system boot 3.10.-.el7.x Fri Dec : - : (:)
last 命令默认是去读取 /var/log/wtmp 日志文件的,这是一个二进制文件,不能直接用 vi 编辑,只能通过 last 命令调用。
lastlog命令
查看系统中所有用户的最后一次登录时间、登录端口和来源IP
[root@localhost ~]# lastlog
Username Port From Latest
root pts/ 192.168.1.105 Sat Dec :: +
bin **Never logged in**
daemon **Never logged in**
ftp **Never logged in**
sshd **Never logged in**
lizhouwei : Fri Dec :: +
lastlog 命令默认是去读取 /var/log/lastlog 日志文件的,这个文件同样是二进制文件,不能直接用 vi 编辑,需要使用 lastlog 命令调用。