系统管理工具包: 监视用户的使用情况
2009-11-04 00:00:00 来源:WEB开发网
清单 4. 带 -a 和 -H 选项的 who 命令
$ who -aH
NAME LINE TIME IDLE PID COMMENTS
. system boot Sep 12 11:35
. run-level 3 Sep 12 11:35 3 0 S
zsmon . Sep 12 11:35 3:14 215
LOGIN console Sep 12 11:35 0:20 221
LOGIN console Sep 12 11:35 0:20 510 (:0)
mc + pts/2 Sep 12 14:29 . 569 (sulaco.mcslp.pri)
mcbrown + pts/3 Sep 12 14:37 0:12 675 (nautilus.mcslp.pri)
通过开头的两行,您可以了解最近一次启动系统的时间,以及最近一次运行级别更改的日期和详细情况。这里所显示的计算机正在运行 Solaris,并且它使用 zsmon 守护进程来监视串行端口上的登录。然后,您将拥有两个到控制台的、标记的登录,其中一个是活动用户的登录,而另一个则附加到 X 服务器(:0 表示 X 窗口系统的屏幕参考)。
最后的两行是使用安全 Shell (SSH) 的远程登录。对于所有的活动进程,您都将获取一个进程 ID,这意味着您可以在 ps 列表中通过 ID 来识别原始用户。
LINE 列是用户所连接到的终端;控制台显然是该计算机的主键盘和监视器。pts 行指的是自动创建的、用以处理远程 SSH 连接的伪终端。
当然,了解谁正在使用本地计算机是一件很有趣的工作,但是对于网络中其他的计算机,情况又如何呢?
获取远程用户的信息
有两个后台服务可以提供远程用户的信息,它们分别是 rusers 和 rwho,分别通过两个守护进程 rusersd(通常称为 in.rusersd)和 rwhod(也称为 in.rwhod)来实现。这两个服务都依赖于远程过程调用(Remote Procedure Call,RPC)协议,以便在整个网络的范围内共享信息。
更多精彩
赞助商链接