转载

Linux 性能监控:那些令人激赏的命令行工具

引言

对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作。在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并运行是多么的不容易。

基于此原因,我们已编写了最常使用的命令行工具列表,这些工具将有助于每个 Linux/Unix 系统管理员的工作。

这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因。

这个命令行工具列表提供了足够的工具,您可以挑选适用于您的监控场景的工具。

编者注:考虑到有些命令行工具已广为人知,这里特意摘录几个不太常见的。

1. lsof - 列出打开的文件

在许多Linux或者类Unix系统里都有lsof命令,它常用于以列表的形式显示所有打开的文件和进程。打开的文件包括磁盘文件、网络套接字、管道、设备和进程。

使用这条命令的主要情形之一就是在 无法挂载磁盘和显示正在使用或者打开某个文件的错误信息的时候。

使用这条命令,你可以很容易地看到正在使用哪个文件。这条命令最常用的格式如下:

Linux 性能监控:那些令人激赏的命令行工具

2. htop – Linux进程监控

Htop 是一个非常高级的交互式的实时linux进程监控工具。

它和top命令十分相似,但是它具有更丰富的特性,例如用户可以友好地管理进程,快捷键,垂直和水平方式显示进程等等。

Htop是一个第三方工具,它不包含在linux系统中,你需要使用YUM包管理工具去安装它。

# htop

Linux 性能监控:那些令人激赏的命令行工具

Htop 命令示例截图

3. iotop - 监控Linux磁盘I/O

Iotop命令同样也非常类似于 top 命令和 Htop 程序,不过它具有监控并显示实时 磁盘I/O和进程 的统计功能。

在查找具体进程和大量使用磁盘读写进程的时候,这个工具就非常有用。

# iotop

Linux 性能监控:那些令人激赏的命令行工具

Iotop命令举例的截图

4. IPTraf - 实时局域网IP监控

IPTraf是一个在 Linux 控制台运行的、开放源代码的实时网络(局域网)监控应用。

它采集了大量信息,比如通过网络的IP流量监控,包括TCP标记、ICMP详细信息、TCP/UDP流量分离、TCP连接包和字节数。同时还采集有关接口状态的常见信息和详细信息:TCP、UDP、IP、ICMP、非IP,IP校验和错误,接口活动等。

Linux 性能监控:那些令人激赏的命令行工具

IP流量监控

有关IPTraf工具用法以及其他更多信息,请访问: IPTraf网络监控工具

5. psacct - 监视用户活动

psacct或者 acct 工具用于监视系统里每个用户的活动状况。

这两个服务进程运行在后台,它们对系统上运行的每个用户的所有活动进行近距离监视,同时还监视这些活动所使用的资源情况。

系统管理员可以使用这两个工具跟踪每个用户的活动,比如用户正在做什么,他们提交了那些命令,他们使用了多少资源,他们在系统上持续了多长时间等等。

有关这些命令的安装和用法举例信息,请参阅文章: 使用psacct或者acct监视用户活动。

6. monit - Linux进程和服务监控工具

Monit是一个免费的开源软件,也是一个基于网络的进程监控工具。它能自动监控和管理系统进程,程序,文件,文件夹,权限,总和验证码和文件系统。

这个软件能监控像Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH这样的服务。你可以通过命令行或者这个软件提供的网络借口来查看系统状态。

Linux 性能监控:那些令人激赏的命令行工具

Monit Linux系统监控

7. netHogs - 监视每个进程使用的网络带宽

NetHogs是一个开放源源代码的很小程序(与Linux下的top命令很相似),它密切监视着系统上每个进程的网络活动。同时还追踪着每个程序或者应用所使用的实时网络带宽。

Linux 性能监控:那些令人激赏的命令行工具

NetHogs:Linux下的带宽监视

8. iftop - 监视网络带宽

iftop是另一个在控制台运行的开放源代码系统监控应用,它显示了系统上通过网络接口的应用网络带宽使用(源主机或者目的主机)的列表,这个列表定期更新。

iftop用于监视网络的使用情况,而’top’用于监视CPU的使用情况。iftop是’top’工具系列中的一员,它用于监视所选接口,并显示两个主机间当前网络带宽的使用情况。

Linux 性能监控:那些令人激赏的命令行工具

ftop-监视网络带宽。

9. monitorix - 系统和网络监控

Monitorix是一个免费的轻量级应用工具,它的设计初衷是运行和监控Linux/Unix服务器系统和资源等。

它有一个HTTP 网络服务器,这个服务器有规律的收集系统和网络的信息并以图形化的形式展示出来。

它监控系统的平均负载和使用,内存分配、磁盘健康状况、系统服务、网络端口、邮件统计(Sendmail,Postfix,Dovecot等),MySQL统计,等等。它就是用来监控系统的总体性能,帮助发现失误、瓶颈和异常活动的。

Linux 性能监控:那些令人激赏的命令行工具

10. arpwatch – 以太网活动监视器

Arpwatch被设计用来监控Linux上的以太网地址解析 (MAC和IP地址的变化)。

它在一段时间内持续监控以太网活动并输出IP和MAC地址配对变动的日志。

它还可以向管理员发送邮件通知,对地址配对的增改发出警告。这对于检测网络上的ARP攻击很有用。

11. suricata – 网络安全监控

Suricata是一个开源的高性能网络安全、入侵检测和反监测工具,可以运行Linux、FreeBSD和Windows上。非营利组织OISF (Open Information Security Foundation)开发并拥有其版权。

12. vnStat PHP – 网络流量监控

VnStat PHP是流行网络工具”vnstat”的基于web的前端呈现。

VnStat PHP将网络使用情况呈现在漂亮的图形界面中。它可以显示以小时、日、月计的上传和下载流量并输出总结报告。

12款精彩命令行工具,您用过几款、推荐那些款?欢迎评论留言

转载出处:http://www.oschina.net/translate/command-line-tools-to-monitor-linux-performance

原文出处: 18 Command Line Tools to Monitor Linux Performance

文/Ravi Saive

参与翻译(7人):几点人, realZ, LitStone, Dinfer, FGQ, yxrykds, 66号公路

推荐:韩晓光@新华网

原文  http://www.yunweipai.com/archives/7411.html
正文到此结束
Loading...