linux是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务。系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作。
查看用户的操作
系统管理员若想知道某一时刻用户的行为,只需要输入命令w即可,在shell终端中输入如下命令:
tux@tux-desktop:~$ w
21:13:14 up 7:08, 2 users, load average: 0.22, 0.32, 0.20
user tty from login@ idle jcpu pcpu what
tux tty7 :0 14:05 ? 37:55 0.33s x-session-manag
tux pts/1 :0.0 21:13 0.00s 0.13s 0.00s w
可以看到执行w命令及显示结果。
命令信息含义
上述显示的信息分别表示如下:
第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆哟内用户总数及系统平均负载信息。对于上述势力中的几个显示数据意义为:
21:13:14 表示执行w的时间是在晚上9点13分。
7:08 表示系统运行7小时8分。
2 users 表示当前系统登陆用户总数为2。
load average与后面的数字一起表示系统在过去1,5,10分钟内的负载程度,数值越小,系统负载越轻。
从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。
user:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。
tty:用户登陆所用的终端。
from:显示用户在何处登陆系统。
login@:是login at的意思,表示登陆进入系统的时间。
idle:用户空闲时间,从用户上一次任务结束后,开会记时。
jcpu:一终端代号来区分,表示在摸段时间内,所有与该终端相关的进程任务所耗费的cpu时间。
pcpu:指what域的任务执行后耗费的cpu时间。
what:表示当前执行的任务。
查看某用户
当登陆系统用户很多的时候,可以在w后面加上某个用户名,则会查看该用户执行任务的情况。
tux@tux-desktop:~$ w tux
21:19:01 up 7:14, 2 users, load average: 0.25, 0.21, 0.18
user tty from login@ idle jcpu pcpu what
tux tty7 :0 14:05 ? 38:05 0.33s x-session-manag
tux pts/1 :0.0 21:13 0.00s 0.13s 0.00s w tux
默认情况下,系统会显示上述所有的信息,如果只关心某一方面,可以只使用相关的选项。
2.查看用户登录历史
- last
oracle pts/0 192.168.1.116 mon jul 1 15:18 still logged in
oracle pts/0 192.168.1.116 tue jun 25 17:39 - 18:04 (00:25)
oracle pts/0 192.168.1.116 tue jun 25 17:13 - 17:14 (00:00)
oracle pts/1 192.168.1.116 tue jun 25 15:05 - 15:07 (00:01)
oracle pts/0 192.168.1.116 tue jun 25 11:20 - 15:12 (03:51)
3.踢出用户
pkill -kill -t pts/0 #pts/0为w指令看到的用户终端号