1.在多用户操作系统中系统管理员为了系统管理的需要和系统安全,通常需要了解当前是什么用户登录系统、有多少用户登录系统、这些用户在做什么。普通用户之间如果要进行通信交流时,也需要知道对方是否已经登录上系统了。Linux操作系统提供的查看用户的命令有who和w命令,查找并显示指定用户信息的有finger命令。
2.首先,来介绍一下who命令,我们可以先使用man命令来看下who这个命令的详细说明和一些用法参数选项等等。
输入man who命令后,如下图所示:
从上图可以看到who命令的详细介绍,可以用方向键移动,使用q命令可以退出man手册!
(1).下面开始介绍这个who命令,指的是查询目前登录系统的用户信息,执行这个命令可以显示目前在系统中登录的所有用户名单、各用户使用的终端、登录时间和登录状态等信息。
我们直接在终端输入who命令后,如下图所示:
可看到当前登录系统的用户信息。
(2).其中who这个命令也可以带命令选项,使用man指令可以查看命令选项,如who -a,相当于who -all命令:
(3).输入who -b命令的话,可以查看最后一次系统引导(即启动系统)的时间信息:
注:还有其它参数,大家可以自己尝试一下,多实践。
3.接下来,介绍w命令,还是使用man命令来看下w命令的详细说明及其用法,输入命令man w后,如下图所示:
(1).此命令用于查询登录用户的详细情况。w命令不仅可以显示有哪些用户登录到系统,还可以显示用户正在执行的程序、现在的系统时间、系统已经启动多久、目前共有多少用户、在过去1分钟、5分钟、10分钟内系统的平均负载程度。
其命令用法就是上图使用man命令的SYNOPSIS那里,我们直接在终端输入命令w后,如下图所示:
其中第一个行为信息头,即头部信息,第一行中,05:58:50为系统当前时间,up 1:14为系统自启动以来的时间,2 users为当前登录的用户数,load average:0.00,0.02,0.00指的是系统平均负载信息,三个数字表示过去1分钟、5分钟、10分钟的平均负载,其中数字越接近零,表示系统负载越低。
第二行中各域的含义:
USER:目前登录的用户名称。
TTY:登录终端名称。
FROM:登录地点。若从虚拟控制台登录,则为空。
LOGIN@:登录时间。
IDLE:空闲时间。
JCPU:和该终端连接的所有进程占用的时间。
PCPU:当前进程所占用的时间。
WHAT:用户正在执行的命令。
(2).我们也可以带一些参数,显示该用户的相关信息,我们输入命令w -h后,如下图所示:
终端将不会打印header头部,即头部说明,如上面直接输入w命令的05:58:50、up 1:14、2 users、USER、TTY、FROM等前两行相关的头部信息。
(3).我们输入w -s命令的话,又会是怎样的呢,如下图所示:
系统将在终端以简洁格式显示出登录的用户的详细信息,但不打印登录时间、JCPU时间和PCPU时间。
注:大家可以根据man命令所显示的命令选项进行操作。
4.下面,介绍finger命令,此命令用于查找并显示用户信息,它会查找并显示指定账号用户的相关信息,包括本地与远程登录的用户,输入的账号名称不区分大小写。
首先,还是使用man命令看下,输入命令man finger命令后,如下图所示:
(1).我们输入命令finger后,如下图所示:
它显示本地主机现在所有登录用户的信息,包括账号名称,真实姓名,登录的终端,闲置的时间,登录时间,用户地址和电话,其中要查找并显示远程登录用户的信息,远程主机名称前要加上@符号。
(2).我们可以输入命令finger -l,以长格式(完整格式)显示当前用户的详细信息,如下图所示:
注:大家可以根据man命令所显示的命令选项进行操作。