nmon
Nmon监测工具
Nmon是一款面向系统管理员的调优和基准测量工具,可以用来显示关于下列方面的性能数据:
- 处理器
- 内存
- 网络
- 磁盘
- 文件系统
- 网络文件系统NFS)
- 消耗资源最多的进程
- 资源
- Power微分区
我非常喜欢这款工具的一个地方是,它完全具有交互性,可以帮助Linux用户或系统管理员最大限度地利用这个必要的命令。
在Linux中安装Nmon监测工具
如果你使用的是基于Debian的Linux发行版,就很容易安装Nmon命令行实用工具,只要从默认软件库中获取它。想安装它,只要打开一个新的终端按CTRL+ALT+T组合键),使用下面这个命令。
- $ sudo apt-get install nmon
你是Fedora用户?想安装在你的机器中,打开新的终端,运行下面这个命令。
- $ sudo yum install nmon
CentOS/RHEL用户只要从http://pkgs.repoforge.org/nmon/下载Nmon即可安装它。另外,你还可以通过启用RPMForge软件库的方法http://www.tecmint.com/install-and-enable-rpmforge-repository-in-rhel-centos-6-5-4/)来安装它。
如何使用Nmon监测Linux性能?
一旦Nmon安装完毕,你通过键入"nmon"命令从终端来启动它,就会看到下列输出。
- # nmon
Nmon预览
大家可以从上述屏幕截图看到,nmon命令行实用工具完全在交互模式下运行,它为用户显示了切换显示统计数字的按键。
按处理器查看CPU
比如说,如果你想收集CPU性能方面的一些统计数字,就应该按你所用系统的键盘上的"c"按键。我按了键盘上的"c"按键后,得到了非常详细的输出,显示了关于CPU使用方面的信息。
按处理器显示的CPU使用信息
下面是你可以结合该实用工具使用的一些按键,以获得机器中其他系统资源方面的信息。
- m =内存
- j =文件系统
- d =磁盘
- n =网络
- V =虚拟内存
- r =资源
- N =NFS
- k =内核
- t =消耗资源最多的进程
- . =只显示忙碌的磁盘/进程
消耗资源最多的进程方面的统计数字
想获得在Linux系统上运行的消耗资源最多的进程方面的统计数字,只要按键盘上的"t"按键,然后等信息出现。
消耗资源最多的进程
熟悉top实用工具的那些人很容易就会明白,并能够解读上述信息。如果你刚接触Linux系统管理,之前也从来没有用过top实用工具,不妨在终端中运行下面这个命令,试着将得到的输出与上述输出进行一番比较。它们是看起来相似,还是说输出一样?
- # top
我在使用按键"t"和Nmon工具时,似乎就像是在运行top进程监测实用工具。
查看网络方面的统计数字
想知道网络方面的一些统计数字?只要按一下键盘上的"n"。
网络统计数字
磁盘输入/输出图形
使用"d"按键,即可获得磁盘方面的信息。
监测磁盘输入/输出
查看内核信息
结合该工具使用的一个非常重要的按键是"k",它可以用来显示关于你系统内核的一些简要信息。
查看Linux内核信息
获取系统信息
对我来说,一个非常有用的按键是"r",它可以用来显示不同资源方面的信息,比如机器架构、操作系统版本、Linux版本和CPU。如果看一下下面这个屏幕截图,你就能大致了解按键"r"的重要性。
系统信息
查看文件系统方面的统计数字
想获得文件系统方面的统计数字,按键盘上的"j"。
文件系统统计数字
你可以从上面屏幕截图中看到,我们获得了文件系统大小、已使用空间、闲置空间、文件系统类型和挂载点等方面的信息。
显示NFS数据
按键"N"有助于收集和显示NFS方面的数据。
NFS数据
到目前为止,使用Nmon实用工具显得非常容易。关于这个实用工具,你还要知道另外的许多方面,其中一个就是这个事实:你可以在数据捕捉模式下使用它。要是你不喜欢数据在屏幕上显示,就可以使用下面这个命令,轻松捕捉一个小巧的样本文件。
- # nmon -f -s13 -c 30
运行上面这个命令后,你会在使用这个工具时所在的目录下得到一个带".nnmon"扩展名的文件。"-f"选项是啥意思?下面简明扼要地解释了上面这个命令中所用的几个选项。
- -f意味着你想将数据保存到文件中,不在屏幕上显示。
- -s13意味着你每隔13秒想要捕捉数据。
- -c 30意味着你想要30个数据点或快照。
结束语
有许多工具具有Nmon实用工具的功能,但是对Linux初学者来说,没有一个像它这么易于使用、界面友好。遗憾的是,这款工具的功能不如collectl等其他工具来得丰富,它也无法为用户提供深入详尽的统计数字。
最后,我可以说,它是一款非常适合Linux系统管理员的实用工具,尤其适合不熟悉命令行选项和命令的系统管理员。