Linux系统环境查看已经登录用户信息及管理

    Linux属于多用户系统,root账户可以去查看现在登录的用户信息及其操作:

 

1.查看某一时刻用户的行为 w

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

 

参数介绍:

第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆哟内用户总数及系统平均负载信息。对于上述势力中的几个显示数据意义为

2:13PM 表示执行W的时间是在下午2点31分。

11DAYS,21: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.00USER TTY FROM LOGIN@ IDLE JCPU PCPU WHATHello tty6 11:12am 34.00s 0.06s 0.06s bash

默认情况下,系统会显示上述所有的信息,如果只关心某一方面,可以只使用相关的选项。

2.使用系统提供的who命令,该命令可以查看当前登陆到系统的用户及其他信息

[ROOT@LOCAL ROOT]#whoroot tty1 – 09:21amreorge tty2 – 09:40amhello tty6 – 11:12am

marry pts/1 :0 02:40pm

可以看出上述信息与W命令非常相似。如果想让列表更详细一些,可以加上选项-HIT等,就可以得到该用户是否愿意接受其他用户信息(-T)还可以显示空闲时间(-I)及标题栏(-H)。如果某各用户愿意接受信息,会在MESG栏中显示一个“+”,这是还可以使用命令MESG给用户发从信息。

 

3.命令last

查看登陆用户历史

系统管理员若想知道系统中用户登陆的历史行为,还可以察看用户曾经登陆到系统。使用last命令可以查询曾经登陆用户的信息:

 

ROOT TTY1 09:21AM MON FRI 10 11:15 STILL LOGGED IN GEORGE TYY2 09:40AM MON FRI 11 11:18 -DOWNHELLO TTY6 11:12AM MON FRI 12 9:47 -DOWNMARRY 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 georgegeorge tty2 – 09:40am mon fri 11 11.18 -down………….Wtem begins fri dec 5 12:53;55 2003

 执行last命令其实是显示/var/log/目录下的wtmp文件内容。Wtmp文件是以二进制格式进行存储的,如果直接使用文本编辑器查看,查看的会是一堆乱码。

4、命令finger

linux中finger命令用来查询一台主机上的登录账号的信息,通常会显示用户名、主目录、停滞时间、登录时间、登录Shell等信息,使用权限为所有用户。

格式

finger [选项] [使用者] [用户@主机]

主要参数

-s:显示用户注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。

-l:除了用-s选项显示的信息外,还显示用户主目录、登录Shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。

-p:除了不显示.plan文件和.project文件以外,与-l选项相同。

 

应用实例

 

如果要查询远程机上的用户信息,需要在用户名后面接“@主机名”,采用[用户名@主机名]的格式,不过要查询的网络主机需要运行finger守护进程的支持。

在计算机上使用finger:

[root@linuxhonker.com ~]# Finger

Login Name Tty Idle Login Time Office Office Phone

root root tty1 2 Dec 18 13

root root pts/0 1 Dec 18 13

root root *pts/1 Dec 18 13

下列指令可以查询本机管理员的资料:

finger root

其结果如下:

Login: root Name: root

Directory: /root Shell: /bin/bash

Never logged in.

No mail.

No Plan.

 

 

5、Linux踢出已登录用户的方法

pkill -t pts/0 (pts/0为w指令看到的用户终端号)