免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1495 | 回复: 0
打印 上一主题 下一主题

[系统管理] (转贴)系统管理工具包:监视用户的使用情况 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-12-04 16:04 |只看该作者 |倒序浏览
这篇文章讲的是如何使用 AIX 的一些基本命令来对系统的当前用户以及一些日志进行管理,内容比较实用。

原文:http://www.ibm.com/developerworks/cn/aix/library/au-satmonitor/index.html



关于本系列
            典型的 UNIX®管理员拥有一套经常用于辅助管理过程的关键实用工具、诀窍和系统。存在各种用于简化不同过程的关键实用工具、命令行链和脚本。其中一些工具来自于操作系统,而大部分的诀窍则来源于长期的经验积累和减轻系统管理员工作压力的要求。本系列文章主要专注于最大限度地利用各种 UNIX环境中可用的工具,包括简化异构环境中的管理任务的方法。
            获取当前用户的信息
            要获取当前使用 UNIX 系统的用户的列表,可以使用很多不同的方式。其中最显而易见、且最直接的方式是使用 who 命令。who 命令可以返回一个列表,该列表中包括当前登录的用户、他们所连接到的终端、他们登录的日期,以及他们登录的主机名的 IP 地址(如果他们是远程用户的话)。
            您可以参见下面清单 1 中给出的示例。
            
清单 1. 使用 who 命令,以返回当前登录用户的列表
               
$ who
mc         pts/2        Sep 12 14:29    (sulaco.mcslp.pri)
mcbrown    pts/3        Sep 12 14:37    (nautilus.mcslp.pri)

            在某些系统中,还可以使用 -q 命令行选项,以提供一种更快捷的格式,如清单 2 中所示。
            
清单 2. 带 -q 选项的 who 命令
               
$ who -q
mc       mcbrown
# users=2

            这个输出与某些系统中提供的、另一个名为 users 的命令的输出很类似,后者仅输出用户的列表,而不对其进行计数(请参见清单 3)。
            
清单 3. users 命令
               
$ users
mc  mcbrown

            通常,您可以通过添加 -a 和 -H 命令行选项来查找更详细的信息。-a 选项包括所有来自 /var/adm/utmpx 文件的最新信息,该文件用于记录登录信息。这个文件还可以记录其他事件,如启动的日期和时间,以及最近的运行级别更改。在本文稍后的内容中,您将进一步地了解该文件中存储的相关信息。-H 选项用于为输出中的各列添加标题信息。您可以参见清单 4 中给出的示例。
            
清单 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)协议,以便在整个网络的范围内共享信息。
            以前一直认为,启用 rwhod 和 rusersd 是对网络资源的浪费,因为这两个守护进程在网络中不断地广播信息,从而占用了带宽。在拥有大量主机的网络中,所生成的信息量可能是非常大的。现在,与网络的传输速度相比,所生成的信息量相对较小。
                            rwhod 和 rusersd 在所有的系统中都是不可用的,但是对于那些提供了相应工具的系统来说,使用这些工具可以很容易地获取您所想要的信息。如果这些工具还没有运行,那么您需要启动 in.rwhod 和 in.rusersd 守护进程。
            一旦这两个守护进程开始运行,您就可以使用各种各样的工具输出所有计算机的相关信息。rwho 工具是 who 工具的远程、支持网络的版本。清单 5 给出了一个示例。
            
清单 5. rwho 工具
               
$ rwho -a
mc       solaris-desktop:console Sep 12 11:29  3:41
mc       solaris-desktop:pts/1   Sep 12 11:32   :06
mc       ultra3:pts/2            Sep 12 14:29
mcbrown  ultra3:pts/3            Sep 12 14:37   :37
M
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP