Linux系统下如何查看已经登录用户
虽然前面介绍了用户管理,但是那部分主要是管理用户的帐号,也就静态的用户列表。而linux是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务。系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作。
查看用户的操作
系统管理员若想知道某一时刻用户的行为,只需要输入命令w 即可,在shell终端中输入如下命令:
[root@localhost root] # w 2:31pm up 11 day ,21:18 4 users, lode average : 0.12, 0.09 , 0.08 user tty from login@ idle jcpu pcpu what root tty1 - 09:21am 3:23 0.13s 0.08s -bash george tty2 - 09:40am 18:00s 0.12s 0.00s telnet hello tty6 - 11:12am 34.00s 0.06s 0.o6s bash marry pts/1 192.0.3.1102:40pm 5.20s 0.09s 0.03s ftp |
可以看到执行w命令及显示结果。
命令信息含义
上述显示的信息分别表示如下:
第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆哟内用户总数及系统平均负载信息。对于上述*中的几个显示数据意义为:
2:13pm 表示执行w的时间是在下午2点31分。
11days,81:18 表示系统运行11天零21小时18分。
4 users 表示当前系统登陆用户总数为4。
load average 与后面的数字一起表示系统在过去1,5,10分钟内的负载程度,数值越小,系统负载越轻。
从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。
user:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。
tty:用户登陆所用的终端。
from:显示用户在何处登陆系统。
login@:是login at的意思,表示登陆进入系统的时间。
idle:用户空闲时间,从用户上一次任务结束后,开会记时。
jcpu:一终端代号来区分,表示在摸段时间内,所有与该终端相关的进程任务所耗费的cpu时间。
pcpu:指what域的任务执行后耗费的cpu时间。
what:表示当前执行的任务。
查看某用户
当登陆系统用户很多的时候,可以在w后面加上某个用户名,则会查看该用户执行任务的情况。
〔root@localost root〕#w heiio2:31pm up 11 days,21:18 4 users, load average : 0.00, 0.00, 0.00 user tty from login@ idle jcpu pcpu what hello tty6 11:12am 34.00s 0.06s 0.06s bash |
默认情况下,系统会显示上述所有的信息,如果只关心某一方面,可以只使用相关的选项。
查看登陆用户
同样,系统管理员若想知道某一时刻登陆的用户,可以使用系统提供的web命令,该命令可以查看当前登陆到系统的用户及其他信息:
[root@local root]#who root tty1 - 09:21am reorge tty2 - 09:40am hello tty6 - 11:12am marry pts/1 :0 02:40pm |
可以看出上述信息与w命令非常相似。如果想让列表更详细一些,可以加上选项-hit等,就可以得到该用户是否愿意接受其他用户信息(-t)还可以显示空闲时间(-i)及标题栏(-h)。如果某各用户愿意接受信息,会在mesg栏中显示一个“+”,这是还可以使用命令mesg给用户发从信息。
查看登陆用户历史
系统管理员若想知道系统中用户登陆的历史行为,还可以察看用户曾经登陆到系统。使用last命令可以查询曾经登陆用户的信息:
root tty1 09:21am mon fri 10 11:15 still logged in george tyy2 09:40am mon fri 11 11:18 -down hello tty6 11:12am mon fri 12 9:47 -down marry pts/1 192.0.3.11 02:40pm fri 17 12:56 -down …… wtmp begins fri dec 5 12:53:55 2003 |
使用last 命令时,列出的文件内容会非常多,根本看不清楚。此时可以使用前面介绍的管理方式来观看,例如/last/ less,则可以查看前后内容。同查看用户情况一样,想查看那某个用户的登陆情况,也可以在last命令后加上用户名,则系统只会显示该用户登陆系统情况。
[root@localhost root]# last george george tty2 - 09:40am mon fri 11 11.18 -down …………. wtem begins fri dec 5 12:53;55 2003 |
执行last命令其实是显示/var/log/目录下的wtmp文件内容。wtmp文件是以二进制格式进行存储的,如
果直接使用文本编辑器查看,查看的会是一堆乱码。
上一篇: 解析curl提交GET,POST,Cookie的简单方法
下一篇: 设计模式-工厂模式