管理员必备的Linux系统监控工具(下面仅是一部分)
top :
实时动态地显示系统当前运行的进程,5秒钟刷新一次。
vmstat :
显示进程、内存、内存分布、堵塞IO、traps、CPU活动信息。
vmstat 2 (每2秒输出一条结果)
vmstat -a 2 (显示活跃和非活跃内存)
w :
显示系统当前登录的用户及其运行的进程。
uptime :
显示系统已运行多久。
ps :
显示当前运行的进程。-A或-e显示所有进程。(如常用的:#ps aux)
free :
显示内存使用情况,包括空闲和已用的物理内存、swap内存,还可查看buffer被内核使用的情况。
dmesg :
显示内核信息。使用dmesg可以有效诊断机器硬件故障或者添加硬件出现的问题。同时可确定服务器安装了哪些硬件。(/bin/dmesg)
iostat :
iostat命令可报告中央处理器(CPU)的统计信息,各种设备、分区及网络文件系统输入/输出的统计信息。
sar :
搜集、报告、存储系统活动信息。
mpstat :
显示多处理器的使用情况。-P ALL 分别显示各个处理器的平均使用率。
pmap :
用来查看进程的内存使用情况。显示某个进程的内存映射,使用这个命令可以找出造成内存瓶颈的原因。如:pmap -d 24628(进程ID)
netstat :
显示网络链接、路由表信息、接口统计信息、伪装连接和多播成员,主要用来测试网络连接的状态。
ss :
显示网络套接字信息。
netstat是遍历/proc下面每个PID目录,ss直接读/proc/net下面的统计信息。使用ss 消耗资源以及消耗的时间都比netstat少很多
nc :
nc 可以用来检测某些服务,可以自动启动一个port来倾听其他用户的连线。
iptraf :
网络流量实时监控工具。
iptraf是一个可交互式的IP网络监控工具。它可以生成多种网络统计信息包括:TCP 信息、UDP数量、ICMP和OSPF信息、以太网负载信息、节点状态、IP校验错误等。
tcpdump :
tcpdump 是一个简单网络流量转储工具,然而要使用好需要对TCP/IP协议非常熟悉。
例:(1)tcpdump -i eth0 -nn (2) tcpdump -i eth0 -nn port 21 (3)tcpdump -i eth0 -nn 'port 21 and src host 210.38.241.114'
strace :
跟踪程式执行时的系统调用和所接收的信号。这对于调试Web服务器和其他服务器非常有用。了解怎样追踪进程和他功能。
/proc :
这是一个文件系统,目录下文件提供了很多不同硬件设备和内核的详细信息。
nagios :
Nagios 是一款非常流行的系统及网络监控软件。你可以轻松监控所有的主机、网络设备及服务。它能在发生故障和重新恢复后发送警讯。
cacti :
Cacti是一套完成的网络图形化解决方案,基于RRDTool的资料存储和图形化功能。Cacti提供一个快速的轮询器、进阶的图形化模板、多种数据采集方法和用户管理功能。这些功能都拥有非常友好易用的界面,确保可以部署在一个包含数百台设备的复杂网络中。它提供关于网络、CPU、内存、已登录用户、Apache、DNS等信息。
KDE System Guard :
KSysguard 是在KDE 桌面下一个网络化的系统监控工具。这个工具可以通过SSH会话运行。它提供很多功能,例如可以监控本机和远程主机的客户端/服务器架构,前端图形界面使用所谓传感器得到信息并展现出来。传感器返回的可以是一个简单的数值或是一组表格的信息。针对不同的信息类型,提供一个或多个显示。这些显示被组织多个工作表中,可以工作表可以独体储存和加载。所以,KSysguard不只是一个简单的任务管理器,还是一个可以控制多台服务器的强大工具。
Gnome System Monitor :
System Monitor可以显示系统基本信息、监控系统进程、系统资源及文件系统使用率。你也可以使用System Monitor监控和修改系统行为。尽管没有KDE System Guard功能强大,但其提供的基本信息对于入门用户还是非常有用的。