这里是普通文章模块栏目内容页
Linux查看和剔除当前登录用户

如何在linux下查看当前登录的用户,并且踢掉你认为应该踢掉的用户?

看了网络中的一些例子.在这里总结一下.主要用到的命令有,w,who,ps,kill,pkill

查看当前登录用户:

node8:/home # who
root     :0           2009-11-04 16:26
root     pts/0        2009-11-05 13:52 (:0.0)
linfengfeiye pts/1        2009-11-07 06:32 (118.113.209.13)

第一列是用户名,

第二列是连接的终端,tty表示显示器,pts表示远程连接,

第三列是登陆时间,

查看登录用户行为:

node8:/ # w
 07:46:35 up 2 days, 15:35,  6 users,  load average: 0.03, 0.07, 0.02
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     :0        Wed16   ?xdm?  35:59   0.26s /opt/gnome/bin/gnome-session
root     pts/0     Thu13   21:12m  0.07s  0.49s gnome-terminal --working-direct
linfengf pts/1     06:32    0.00s  0.49s  0.00s sshd: linfengfeiye [priv] 

users 表示当前系统登陆用户总数为6。

LOAD AVERAGE 与后面的数字一起表示系统在过去1,5,10分钟内的负载程度,数值越小,系统负载越轻。

 

从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。

USER:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。

TTY:用户登陆所用的终端。

FROM:显示用户在何处登陆系统。

LOGIN@:是LOGIN AT的意思,表示登陆进入系统的时间。

IDLE:用户空闲时间,从用户上一次任务结束后,开始记时。

JCPU:一终端代号来区分,表示在某段时间内,所有与该终端相关的进程任务所耗费的CPU时间。

PCPU:指WHAT域的任务执行后耗费的CPU时间。

WHAT:表示当前执行的任务

 

当登陆系统用户很多的时候,可以在W后面加上某个用户名,则会查看该用户执行任务的情况

查看linfengfeiye用户执行任务情况

node8:/ # w linfengfeiye
 07:40:45 up 2 days, 15:29,  6 users,  load average: 0.07, 0.08, 0.02
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
linfengf pts/1     06:32    0.00s  0.48s  0.00s sshd: linfengfeiye [priv] 

查看登陆用户历史

node8:/ # last
linfengf pts/1        118.113.209.13   Sat Nov  7 06:32   still logged in   
root     pts/1        118.113.209.13   Sat Nov  7 06:12 - 06:32  (00:20)    
root     pts/4        118.113.209.13   Sat Nov  7 05:15 - 06:11  (00:55)    
root     pts/2        118.113.209.13   Sat Nov  7 04:21 - 06:41  (02:20)    
sc  pts/5        222.211.247.164  Fri Nov  6 22:16 - 22:36  (00:20)    
root     pts/2        222.211.247.164  Fri Nov  6 21:53 - 22:36  (00:42)    
root     pts/4        222.211.247.164  Fri Nov  6 19:59 - 23:08  (03:08)    
sc  pts/8        222.211.247.164  Fri Nov  6 19:57 - 22:16  (02:18)    
root     pts/7        222.211.247.164  Fri Nov  6 19:42 - 22:36  (02:53)    
root     pts/6        222.212.68.214   Fri Nov  6 19:39 - 21:40  (02:00)    
sc  pts/5        222.212.68.214   Fri Nov  6 19:36 - 21:39  (02:03)  

 

查看sc用户登录历史

node8:/ # last sc
sc  pts/5        222.211.247.164  Fri Nov  6 22:16 - 22:36  (00:20)    
sc  pts/8        222.211.247.164  Fri Nov  6 19:57 - 22:16  (02:18)     
sc  pts/6        118.113.236.146  Fri Nov  6 16:39 - 16:43  (00:03)    
sc pts/4         10.3.2.40        Fri Nov  6 11:30 - 13:42  (02:12)   

 想踢除linfengfeiye这个用户和他的所有开启的程序
pkill -u linfengfeiye

注意:这个命令实际上很危险,要相当小心的执行 原因参考  谨慎使用pkill 这个命令

安全的做法是先查看终端号,然后查看该终端执行的所有进程,根据进程号来停止服务

安全剔除用户

ps -ef| grep pts/0

得到用户登录相应的进程号pid后执行.

kill -9 pid