20个监控Linux性能的命令行工具

这真是对每个 系统网络管理员监控和每天调试 Linux的系统性能问题非常艰难的工作。 作为一个 Linux管理员 5年 IT行业之后,我才知道那是多么难以进行监督,并保持系统正常运行。 出于这个原因,我们已经编制了 前20名的名单经常使用的命令行监控工具,可能是为每一位 的Linux / Unix系统管理员有用。 这些命令是 Linux的所有口味下可用,并且可以是有用的监测和发现性能问题的实际原因。此处显示的命令列表非常适合您挑选适合您的监控场景的命令。

Linux命令行监视

 

顶部 - Linux进程监视

Linux的 top命令是被经常使用的许多系统管理员监控Linux性能性能监视程序,它在许多 的Linux / Unix可以像操作系统。 top命令用于将所有正在运行的和活动的实时进程按顺序排列并定期更新。 它显示 CPU使用率内存使用率交换内存缓存大小缓冲区大小过程PID, 用户命令 S等等。 这也显示出高 内存和运行processess的 CPU利用率。 top命令对系统管理员来说非常有用,以便在需要时监视和采取正确的操作。让我们看看top命令在行动。
# top

顶部命令示例

顶级命令的更多示例解读: 在Linux中12个top命令的例子

2. VmStat - 虚拟内存统计

用于显示 虚拟内存 ,kernerl线程磁盘系统进程 ,I / O模块中断 ,CPU活动以及更多的统计数据的Linux vmstat命令。 默认情况下vmstat命令是不是Linux系统下提供你需要 的sysstat,其中包括一个vmstat的程序安装一个名为包。命令格式的常见用法是。
# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
1  0      0 810420  97380  70628    0    0   115     4   89   79  1  6 90  3  0
欲了解更多vmstat中的例子如下: 在Linux 6的vmstat命令实例

3. Lsof - 列出打开的文件

LSOF在许多 Linux / Unix的使用一样,用于显示所有打开的文件和进程的列表系统命令。 包括打开的文件是 磁盘文件网络套接字管道设备流程 。使用此命令的主要原因之一是当磁盘无法卸载,并显示正在使用或打开文件的错误。使用此命令,您可以轻松识别正在使用的文件。此命令的最常见格式为。
# lsof
COMMAND     PID      USER   FD      TYPE     DEVICE     SIZE       NODE NAME
init          1      root  cwd       DIR      104,2     4096          2 /
init          1      root  rtd       DIR      104,2     4096          2 /
init          1      root  txt       REG      104,2    38652   17710339 /sbin/init
init          1      root  mem       REG      104,2   129900     196453 /lib/ld-2.5.so
init          1      root  mem       REG      104,2  1693812     196454 /lib/libc-2.5.so
init          1      root  mem       REG      104,2    20668     196479 /lib/libdl-2.5.so
init          1      root  mem       REG      104,2   245376     196419 /lib/libsepol.so.1
init          1      root  mem       REG      104,2    93508     196431 /lib/libselinux.so.1
init          1      root   10u     FIFO       0,17                 953 /dev/initctl
更多lsof的命令用法和示例: 在Linux中10 lsof的命令实例

4. Tcpdump - 网络分析器

tcpdump的是,用于接收或通过网络在特定接口上传送捕获或过滤器 的TCP / IP数据包的最广泛使用的命令行 网络数据包分析器分组嗅探程序之一。它还提供了将捕获的包保存在文件中供以后分析的选项。 tcpdump几乎可以在所有主要的Linux发行版中使用。
# tcpdump -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
22:08:59.617628 IP youcl.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 9648
22:09:07.653466 IP youcl.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 9648
22:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > youcl.com.ssh: . ack 116 win 64347
欲了解更多tcpdump的使用情况看: 在Linux中12 tcpdump的命令实例

5. Netstat - 网络统计

netstat的是监控 进出网络的数据包的统计信息以及接口统计数据的命令行工具。它是每个系统管理员监视网络性能和排除网络相关问题的非常有用的工具。
# netstat -a | more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 *:mysql                     *:*                         LISTEN
tcp        0      0 *:sunrpc                    *:*                         LISTEN
tcp        0      0 *:realm-rusd                *:*                         LISTEN
tcp        0      0 *:ftp                       *:*                         LISTEN
tcp        0      0 localhost.localdomain:ipp   *:*                         LISTEN
tcp        0      0 localhost.localdomain:smtp  *:*                         LISTEN
tcp        0      0 localhost.localdomain:smtp  localhost.localdomain:42709 TIME_WAIT
tcp        0      0 localhost.localdomain:smtp  localhost.localdomain:42710 TIME_WAIT
tcp        0      0 *:http                      *:*                         LISTEN
tcp        0      0 *:ssh                       *:*                         LISTEN
tcp        0      0 *:https                     *:*                         LISTEN
更多的Netstat的例子: 在Linux中20 netstat命令的例子

6. Htop - Linux进程监视

HTOP是一个更先进的互动和实时Linux进程监视工具。 这是非常相似到Linux top命令 ,但它也有一些丰富的功能,如 用户友好的界面来管理过程中快捷键过程的纵向和横向视图等等。 HTOP是一个第三方工具,并且不包括在Linux系统中,您需要使用 yum包管理工具来安装它。有关安装的更多信息,请阅读下面的文章。
# htop
Htop Command Example

Htop命令示例屏幕截图

对于HTOP安装阅读: 在Linux上安装HTOP(Linux进程监测)

7. Iotop - 监视Linux磁盘I / O

Iotop也更类似于 顶部命令HTOP方案 ,但它具有计费功能来监控和显示实时 磁盘I / O过程 。此工具对于查找进程的确切进程和高使用磁盘读/写非常有用。
# iotop
Iotop Command Example

Iotop命令示例屏幕截图

对于Ioptop安装和使用阅读: 在Linux上安装Iotop

8. Iostat - 输入/输出统计

IOStat是简单的工具,将收集和显示系统 输入输出存储设备的统计信息。 此工具经常用于跟踪存储设备的性能问题,包括 设备本地磁盘远程磁盘NFS。
# iostat
Linux 2.6.18-238.9.1.el5 (youcl.com)         09/13/2012
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
2.60    3.65    1.04    4.29    0.00   88.42
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0       17.79       545.80       256.52  855159769  401914750
cciss/c0d0p1      0.00         0.00         0.00       5459       3518
cciss/c0d0p2     16.45       533.97       245.18  836631746  384153384
cciss/c0d0p3      0.63         5.58         3.97    8737650    6215544
cciss/c0d0p4      0.00         0.00         0.00          8          0
cciss/c0d0p5      0.63         3.79         5.03    5936778    7882528
cciss/c0d0p6      0.08         2.46         2.34    3847771    3659776
欲了解更多iostat的用法和实例访问: 在Linux中6 iostat命令的例子

9. IPTraf - 实时IP LAN监控

IPTraf是监视工具用于 Linux的基于控制台的开源实时网络 (IP LAN)。它收集各种信息,例如通过网络的IP流量监控器,包括TCP标志信息,ICMP详细信息,TCP / UDP流量故障,TCP连接包和计数。它还收集TCP,UDP,IP,ICMP,非IP,IP校验和错误,接口活动等一般和停止的接口统计信息。

IP流量监视器

欲了解更多信息和IPTraf工具的使用情况,请访问: IPTraf网络监控工具

10. Psacct或Acct - 监视用户活动

psacct或acct工具对于监视系统上的每个用户活动非常有用。这两个守护程序在后台运行,并密切关注系统上每个用户的总体活动以及他们正在使用的资源。 这些工具对系统管理员非常有用,可以跟踪每个用户的活动,如他们正在做什么,他们发出了什么命令,他们使用了多少资源,他们在系统上活动多长时间。 对于安装和命令的用法示例阅读文章 监控用户活动与psacct或ACCT

11. Monit - Linux进程和服务监控

monit的是一个免费的开源和基于网络的过程监督的实用工具,自动监控和管理系统进程,程序,文件,目录,权限,校验和文件系统。 它监视像Apache,MySQL,Mail,FTP,ProFTP,Nginx,SSH等服务。可以从命令行或使用自己的Web界面查看系统状态。

Monit Linux进程监视

阅读更多与Linux的monit的过程监控

12. NetHogs - 监视每个进程网络带宽

NetHogs是一个开源的漂亮小程序(类似于到Linux top命令 ),保持在你的系统上的每个进程的网络活动标签。它还保持对每个程序或应用使用的实时网络业务带宽的跟踪。

NetHogs Linux带宽监控

阅读更多监控Linux网络带宽使用NetHogs

13. iftop - 网络带宽监控

iftop是另一种基于终端的免费的开源系统监控工具,显示网络带宽利用率(源主机和目标主机)的频繁更新列表通过系统上的网络接口。 iftop被认为是网络使用,是什么' '确实为CPU使用率。 iftop是一个' '家庭工具,监测选择的接口和显示两个主机之间的电流带宽使用率。

iftop - 网络带宽监控

阅读更多iftop -监视网络带宽利用率

14. Monitorix - 系统和网络监视

Monitorix是一个免费的轻量级的工具,旨在运行和监控系统和网络资源,尽可能多的 的Linux / Unix服务器。 它有一个内置在该定期收集系统和网络信息,并在图表中显示它们 的HTTP web服务器。 它监控 系统平均负载和使用情况内存分配磁盘驱动器健康状况系统服务网络端口邮件统计 (Sendmail的PostfixDovecot),MySQL的统计等等。它旨在监视整个系统的性能,并帮助检测故障,瓶颈,异常活动等。

Monitorix监控

阅读更多Monitorix Linux的系统和网络监控工具

15. Arpwatch - 以太网活动监视器

Arpwatch是一种被设计来监视一个Linux的网络上 的以太网的网络通信的地址解析 (MACIP地址的改变)的方案。 它持续不断观看以太网流量,并生成一个日志的 IPMAC地址对更改与网络上的时间戳一起。 它还具有在配对添加或更改时向管理员发送电子邮件警报的功能。 它是在网络上检测 ARP欺骗非常有用的。 阅读更多Arpwatch监视以太网活动

16. Suricata - 网络安全监控

Suricata是一个高性能的开源 网络安全入侵检测防御监测系统Linux,FreeBSDWindows。它是由非营利基金会 OISF( 开放信息安全基金会 )设计和拥有。 阅读更多Suricata -网络入侵检测与防御系统

17. VnStat PHP - 监控网络带宽

VnStat PHP名为 “vnstat”最流行的网络工具,一个基于Web前端应用 。VnStat PHP监视很好的图形模式下的网络流量使用情况。 它显示在 每小时每天每月全面的总结报告共 INOUT的网络流量使用情况。 阅读更多VnStat PHP -监测网络带宽

18. Nagios - 网络/服务器监控

Nagios是领先的开源强大的监控系统,使网络/系统管理员能够在影响主要业务流程之前识别和解决服务器相关的问题。使用Nagios系统,管理员可以在单个窗口上监视远程Linux,Windows,交换机,路由器和打印机。它显示关键警告,并指示您的网络/服务器中出现问题,这间接帮助您在修复过程发生之前开始。 阅读更多安装Nagios的监控系统来监视远程Linux / Windows主机

19. Nmon:监视Linux性能

Nmon(代表Nigel的性能监视器)工具,用于监视所有Linux资源,如CPU,内存,磁盘使用情况,网络,顶级进程,NFS,内核等。此工具有两种模式:在线模式和捕获模式。 在线模式,用于实时监控和捕获模式,用于将输出存储为CSV格式供以后处理。

Nmon监控

阅读更多: 安装NMON(性能监控)工具在Linux中

20. Collectl:一体化性能监控工具

Collectl是一个又一个强大,功能丰富的基于命令行实用工具,可用于收集有关Linux的系统资源,如CPU使用率,内存,网络,索引节点,流程,NFS,TCP,socket及更多信息。

收集监视

阅读更多: 安装Collectl(ALL-IN-One的性能监控)工具在Linux中 我们想知道你用什么样的 监测方案监测你的Linux服务器的性能 ?如果我们错过了您希望我们包含在此列表中的任何重要工具,请通过评论通知我们,请不要忘记分享它。 另请阅读13个Linux的性能监视工具-第2部分
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏