管理员必备的20个Linux系统监控工具
- 格式:doc
- 大小:621.00 KB
- 文档页数:15
Linux系统的系统日志管理和分析工具比较在Linux系统中,系统日志是存储和记录系统运行时的重要信息和事件的一种机制。
这些日志可以帮助系统管理员追踪问题、监控系统状态和进行故障排查。
为了更有效地管理和分析系统日志,许多工具被开发出来。
本文将比较并介绍几种常用的Linux系统日志管理和分析工具。
1. Syslog-ngSyslog-ng是一个功能强大的开源系统日志管理工具,它能够收集、过滤和转发系统产生的日志。
Syslog-ng支持灵活的日志过滤规则和插件机制,使得管理员能够根据需要自定义日志处理流程。
此外,Syslog-ng还支持多种日志格式,并能将日志导出到不同的目标,如文件、远程服务器等。
该工具易于使用,并且具有丰富的文档和社区支持。
2. rsyslogrsyslog是一个高性能的系统日志记录工具,它是syslog的一个升级版本。
与Syslog-ng类似,rsyslog支持多种日志格式和目标,还具备强大的日志过滤功能。
rsyslog提供了插件机制,可以集成到其他系统或应用中,实现更复杂的日志处理需求。
此外,rsyslog还支持TCP和UDP协议,使得日志传输更加灵活可靠。
3. logrotatelogrotate是一个用于管理系统日志轮换的工具。
它能够定期检查和压缩系统的日志文件,防止日志过度增长导致存储空间不足。
logrotate 支持灵活的配置选项,可以指定日志保存的时间长度、压缩算法等。
此外,logrotate还能触发其他动作,如发送邮件通知,方便管理员及时了解和处理日志问题。
4. JournalctlJournalctl是systemd提供的一个强大的日志管理工具,用于查看和分析系统的日志消息。
它能够以人类可读的格式输出日志,并支持多种过滤和查询选项,如按时间范围、服务名、日志级别等。
Journalctl 还支持实时监控和跟踪日志,方便管理员实时查看系统运行状态和故障排查。
5. Elasticsearch + Logstash + Kibana (ELK)ELK是一个流行的开源日志分析平台,由Elasticsearch、Logstash 和Kibana三个组件组成。
Linux上的系统监控工具比较NagiosvsZabbix在Linux系统中,系统监控工具起着至关重要的作用,帮助管理员实时监测系统状态和性能指标。
Nagios和Zabbix是两款流行的系统监控工具,它们在功能和使用上有所差异。
本文将对Nagios和Zabbix进行比较,以帮助读者选择适合自己需求的系统监控工具。
一、NagiosNagios是一款开源的系统监控工具,通过监测主机、服务和网络设备等方面来保证系统的可用性。
它具有以下特点:1. 灵活性:Nagios可以监控各种类型的主机、服务和设备,例如服务器、路由器、数据库等。
用户可以根据自己的需求,通过自定义插件来监测不同的指标。
2. 强大的告警功能:Nagios可以设置各种告警规则和通知方式,当系统出现故障或达到预定的阈值时,及时发送告警信息给管理员。
3. 可扩展性:Nagios拥有丰富的第三方插件和扩展,可以方便地与其他系统集成,满足复杂的监控需求。
4. 灵活的配置:Nagios使用文本配置文件进行管理,管理员可以根据需要编辑配置文件,实现对监控对象和监控指标的灵活配置。
二、ZabbixZabbix也是一款开源的系统监控工具,具有以下特点:1. 自动发现功能:Zabbix可以自动发现并监控网络设备、服务器和服务。
这个功能可以大大减轻管理员配置监控对象的工作量。
2. 实时监控和图形化展示:Zabbix提供实时数据监控和图形化展示功能,可以直观地查看系统的各项性能指标和状态。
3. 强大的报表功能:Zabbix可以生成各种类型的报表,帮助管理员分析历史数据、趋势和性能统计等。
4. 可视化配置:Zabbix提供直观的Web界面进行配置和管理,管理员可以通过图形化界面完成监控对象和监控指标的配置。
三、Nagios vs ZabbixNagios和Zabbix在功能和使用上都有各自的优势,下面对它们进行比较:1. 配置和管理:Nagios使用文本配置文件进行管理,需要具备一定的技术能力和配置经验。
linux操作系统监控工具监控你的WEB服务器或者WEB主机运行是否正常与健康是非常重要的。
你要确保用户始终可以打开你的网站并且网速不慢。
服务器监控工具允许你收集和分析有关你的Web服务器的数据。
这里店铺就与大家谈谈Linux操作票撒谎那个面都有一些什么样的系统监控工具。
linux操作系统监控工具一、基于命令行的性能监控工具1.dstat - 多类型资源统计工具该命令整合了vmstat,iostat和ifstat三种命令。
同时增加了新的特性和功能可以让你能及时看到各种的资源使用情况,从而能够使你对比和整合不同的资源使用情况。
通过不同颜色和区块布局的界面帮助你能够更加清晰容易的获取信息。
它也支持将信息数据导出到cvs 格式文件中,从而用其他应用程序打开,或者导入到数据库中。
你可以用该命令来监控cpu,内存和网络状态随着时间的变化。
2.atop - 相比top更好的ASCII码体验这个使用ASCII码显示方式的命令行工具是一个显示所有进程活动的性能监控工具。
它可以展示每日的系统日志以进行长期的进程活动分析,并高亮显示过载的系统使用资源。
它包含了CPU,内存,交换空间,磁盘和网络层的度量指标。
所有这些功能只需在终端运行atop即可。
# atop当然你也可以使用交互界面来显示数据并进行排序。
3.Nmon - 类Unix系统的性能监控Nmon是Nigel's Monitor缩写,它最早开发用来作为AIX的系统监控工具。
如果使用在线模式,可以使用光标键在屏幕上操作实时显示在终端上的监控信息。
使用捕捉模式能够将数据保存为CSV格式,方便进一步的处理和图形化展示。
更多的信息参考我们的nmon性能监控文章。
4.slabtop - 显示内核slab缓存信息这个应用能够显示缓存分配器是如何管理Linux内核中缓存的不同类型的对象。
这个命令类似于top命令,区别是它的重点是实时显示内核slab缓存信息。
它能够显示按照不同排序条件来排序显示缓存列表。
软件系统运维技术使用中的监控工具推荐在软件系统运维的过程中,使用监控工具是必不可少的。
监控工具可以帮助我们实时监测系统的运行状态,发现潜在的问题并及时处理,提高系统的稳定性和性能。
在选择监控工具时,我们需要考虑到其功能全面性、易用性和性价比等因素。
下面是几款被广泛使用且备受好评的监控工具推荐。
1. NagiosNagios是一款开源的网络监控工具,它被广泛应用于监控网络设备、服务器、应用程序等。
Nagios拥有强大的可扩展性,可以通过插件的方式集成各种监控功能。
同时,Nagios提供了直观的用户界面和灵活的配置选项,便于管理和定制化。
另外,Nagios提供了强大的报警功能,可以通过电子邮件、短信等方式及时通知系统管理员。
2. ZabbixZabbix是一款功能强大的网络监控工具,它可以监控各种网络设备、服务器和应用程序。
Zabbix支持多种监控方式,包括SNMP、IPMI、JMX等,并提供了易用的Web界面,方便用户进行配置和管理。
同时,Zabbix还提供了强大的图像展示功能,能够生成各种类型的图表和报表,帮助用户进行系统性能分析和优化。
3. PrometheusPrometheus是一款开源的监控和告警工具,它被广泛应用于云原生环境。
Prometheus以高度可扩展的方式监控各种服务和资源,并提供了灵活的查询语言和图表展示功能。
Prometheus还支持多种告警方式,包括电子邮件、PagerDuty、Slack等,可以及时通知系统管理员。
另外,Prometheus还提供了轻量级的客户端,对系统资源的消耗较低。
4. GrafanaGrafana是一款开源的数据可视化工具,它可以与各种监控工具集成,包括Nagios、Zabbix和Prometheus等。
Grafana提供了直观的用户界面和丰富的图表展示功能,方便用户进行数据分析和监控报表的生成。
同时,Grafana还支持自定义仪表盘和插件,用户可以根据自身需求进行定制。
Linux终端中的进程管理和监控在Linux终端中,进程的管理和监控是系统管理者和开发人员必备的技能之一。
通过合理的进程管理和监控,可以保证系统的稳定性和正常运行。
本文将介绍Linux终端中进程管理和监控的相关知识,并提供一些实用的命令和工具供读者参考。
一、进程管理在Linux系统中,每个正在运行的程序都是一个进程。
进程管理的任务包括启动、停止、监控和调整进程的运行状态等。
下面是一些常用的进程管理命令及其功能:1. ps命令:用于查看当前系统中运行的进程信息。
通过不同的选项,可以显示进程的PID(进程ID)、状态、内存占用等详细信息。
2. kill命令:用于终止指定的进程。
可以通过进程ID(PID)或进程名来指定要终止的进程。
3. top命令:用于实时监控系统中的进程状态。
它可以显示当前运行的进程列表,并实时更新进程的CPU利用率、内存占用等信息。
4. renice命令:用于调整进程的优先级。
可以通过指定进程ID或进程名,设置进程的优先级,以调整系统资源的分配。
二、进程监控除了上述命令外,Linux终端还提供了一些工具用于进程的监控和管理。
下面是一些常用的进程监控工具及其功能:1. System Monitor:一个图形化的工具,用于实时监控系统的状态和进程信息。
它可以以图表的形式显示CPU利用率、内存占用、网络流量等信息,并提供用于杀死进程、调整优先级等功能。
2. htop:一个更加强大的进程监控工具,相比于top命令,htop提供了更多的功能和定制选项。
它可以以交互式的方式显示系统状态和进程信息,并允许用户进行进一步的操作,如终止进程、修改优先级等。
3. systemd:一个集成的系统和服务管理工具。
通过systemd,可以对系统中的进程进行监控和管理,包括启动、停止、重启进程等操作。
它还提供了一些高级功能,如进程的自动重启、进程的依赖管理等。
4. monit:一个轻量级的进程监控工具,可用于监控系统中的进程和服务。
Linux命令行中的进程监控技巧htopatop和nmon命令详解Linux命令行中的进程监控技巧:htop、atop和nmon命令详解在Linux系统中,进程监控是一项重要的任务,它可以帮助我们了解系统的运行状态、资源利用情况以及解决性能瓶颈等问题。
本文将详细介绍三个常用的命令行工具:htop、atop和nmon,它们都可以用于进程监控,但在功能和用法上有些许差异。
一、htop命令htop是一个交互式的进程监控工具,提供了比top命令更加直观和友好的界面。
使用htop,我们可以轻松地查看系统中运行的进程,并实时了解它们的CPU、内存和I/O等资源的使用情况。
下面是htop命令的使用示例及相关说明:1. 安装htop命令:sudo apt-get install htop2. 运行htop命令:htop3. htop界面说明:htop的界面由多个区域组成,包括进程列表、系统摘要、进程树、CPU和内存占用情况等。
通过上下左右箭头键可以在不同区域之间切换,按F1键可以查看帮助文档。
在进程列表中,我们可以看到每个进程的PID、用户、CPU占用率、内存占用率等信息,并可以通过快捷键对进程进行操作,如杀死进程、跟踪进程等。
二、atop命令atop是另一个功能强大的进程监控工具,它可以提供比top和htop 更为详细的系统状态信息,并且支持日志记录功能。
下面是atop命令的使用示例及相关说明:1. 安装atop命令:sudo apt-get install atop2. 运行atop命令:sudo atop3. atop界面说明:atop的界面分为多个区域,包括系统摘要、进程列表、资源占用情况、磁盘IO、网络流量等。
在进程列表中,我们可以看到每个进程的PID、用户、CPU占用率、内存占用率、磁盘IO等信息,并且atop支持按字段排序和过滤功能,方便我们查找和分析进程。
同时,atop可以记录系统状态信息到日志文件中,我们可以使用atop命令读取和分析这些日志。
如何进行系统监控在当今数字化时代,系统监控已经成为企业和组织中非常重要的一项任务。
通过对电脑、网络和服务器等系统的监控,能够实时追踪系统运行情况,及时发现和解决问题,提高系统的安全性和稳定性。
本文将介绍如何进行系统监控,并提供一些实用的监控工具和技巧。
一、选择适合的监控工具选择适合的系统监控工具是进行系统监控的首要任务。
以下是一些常用的监控工具:1. Nagios:Nagios是一款开源的网络监控工具,可以监控网络设备、应用程序和服务等。
它具备灵活性、可扩展性和用户友好界面等特点。
2. Zabbix:Zabbix是一款功能强大的网络监控和告警工具,可以实时监控网络设备、服务器和应用程序等。
它支持多种监控方式,如SNMP、JMX和IPMI,并提供图形化界面进行配置和管理。
3. Prometheus:Prometheus是一款用于收集和存储时序数据的开源系统监控工具。
它具备高效的存储和查询能力,并支持多种监控方式,如HTTP、SNMP和JMX。
二、确定需要监控的指标在进行系统监控之前,需要确定需要监控的指标。
以下是一些常用的系统监控指标:1. CPU利用率:监控CPU的使用情况,及时发现CPU负载过高的情况。
2. 内存利用率:监控系统内存的使用情况,防止因内存不足导致系统崩溃或运行缓慢。
3. 磁盘空间利用率:监控磁盘空间的使用情况,防止因磁盘空间不足导致数据丢失或系统异常。
4. 网络流量:监控网络流量的使用情况,及时发现网络拥堵或攻击等问题。
5. 进程状态:监控系统中运行的进程状态,及时发现进程崩溃或异常退出的情况。
三、设置警报机制系统监控的目的是及时发现问题并采取相应的措施,因此设置警报机制非常重要。
以下是一些常用的警报机制:1. 邮件通知:通过电子邮件发送通知,及时告知管理员系统出现的问题。
2. 短信通知:通过短信发送通知,能够更加即时地告知管理员系统的异常情况。
3. 声音报警:通过设置警报声音,当系统出现问题时发出警报,引起管理员的重视。
Linux下系统如何监控服务器硬件、操作系统、应⽤服务和业务1.Linux监控概述Linux服务器要保证系统的⾼可⽤性,需要实时了解到服务器的硬件、操作系统、应⽤服务等的运⾏状况,各项性能指标是否正常,需要使⽤各种LINUX命令。
做到⾃动化运维就需要,将上述各项监控指标在同⼀个软件中展显出来,图形化监控,消息报警机制,⽇志检看,资产管理等等2.Linux监控的对象2.1 硬件监控(1)服务器:如电源,风扇,磁盘,CPU等,可以使⽤IPMI监控,在LINUX下安装IPMITOOL不同的服务器⼚商都在服务器上配有远程控制卡BMC: 如DELL(iDRAC) ,IBM (IMM) ,HP(ILO)LINUX下只需安装:#yum install -y OpenIPMI ipmitool 这⼆个⼯具就可以IPMI命令可以在服务器本地运⾏,也可以通过⽹络远程调⽤,IPMI在服务器上可以配置单独的IP地址和访问密码(2)⽹络设备:交换机,防⽕墙,路由器等,使⽤SNMP进⾏监控在被监控的设备上开启SNMP代理,到时可以通过⼯具进⾏获取数据,如ZABBIX1.LINUX上安装#yum list |grep snmp#yum install -y net-snmp net-snmp-utils安装好后要配置snmpd.conf⽂件rocommunity snmptest 172.16.20.89 #172.16.20.89表⽰仅这IP地址才可以来访问snmp信息#systemctl start snmpd 启动SNMP ,netstat -nulp ,netstat -ntlp 查看snmp启来的端⼝udp=161 ,TCP=199通过SNMP命令可以获取监控信息:#snmpget -v2c -c snmptest 172.16.20.89 1.3.6.1.2.1.1.3.0 #1.3.6.1.2.1.1.3.0为OID2.交换机上开启snmp-server community public ro(3)定期机房巡检,查看设备运⾏情况2.2 操作系统监控安装sysstat⼯具,包括了iostat、vmstat、sar、mpstat、nfsiostat、pidstat (yum install -y sysstat #rpm -ql sysstat)(1)CPU (CPU调度上下⽂切换,运⾏队列负载,CPU使⽤率)确定服务类型:IO密集型(如:数据库),CPU密集型(如:WEB)1.cpu利⽤率内核态: 30%和⽤户态:70%2.cpu运⾏队列:1~3线程 1CPU=4核队列不超过12个3.上下⽂切换:尽量少,结合cpu利⽤率4.#top命令(显⽰CPU和内存信息,M按内存使⽤率排序,P按CPU使⽤率排序,Q退出)CPU百分⽐各项指标: us:⽤户态 sy:内核态 ni:进程间优先级更换 id:空闲 wa:IO等待 hi:硬中断 si:软件中 st:虚拟5.CPU监控的各种命令:top ,vmstat , mpstat, uptime ,ps cpu进程情况,pstree 以树形结构显⽰进程之间的关系(2)内存1. free -m :显⽰内存信息2.vmstat :来监控虚拟内存 #vmstat 1 10 每隔1秒共10次获取监控信息(3)磁盘1.iostat:命令⽤来显⽰存储⼦系统的详细信息,通常⽤它来监控磁盘 I/O 的情况。
Linux系统监控脚本使用Shell脚本实现对Linux系统的实时监控一、监控脚本介绍Linux系统监控脚本是一种使用Shell脚本编写的工具,能够实时监控Linux系统的各项指标并生成监控报告。
通过监控脚本,系统管理员可以及时了解系统运行状态,识别并解决潜在的问题,确保系统的正常运行和稳定性。
二、脚本编写1. 脚本环境设置在开始编写监控脚本之前,先在脚本的开头设置环境变量,包括脚本解释器、脚本名称和脚本存放路径等。
例如:```#!/bin/bashSCRIPT_NAME="Linux监控脚本"SCRIPT_PATH="/usr/local/scripts"```2. 监控项定义根据需要监控的指标,定义相关的变量并赋初始值。
例如,我们可以定义变量来监控CPU、内存和磁盘的使用情况:CPU_USAGE=0MEMORY_USAGE=0DISK_USAGE=0```3. 监控函数编写编写监控函数来获取系统的各项指标数值,并将其赋给相应的变量。
例如,我们可以编写获取CPU使用率的函数:```get_cpu_usage() {CPU_USAGE=$(top -b -n 1 | grep '%Cpu(s)' | awk '{print $2}')}```类似地,我们可以编写获取内存和磁盘使用情况的函数,并将其整合到脚本中。
4. 监控脚本主体在监控脚本的主体部分,通过循环调用各个监控函数,实时获取系统的指标数值,并输出监控报告。
例如,我们可以编写一个监控函数,将各项指标输出到文件中:monitor() {while true; doget_cpu_usageget_memory_usageget_disk_usageecho "$(date): CPU使用率: ${CPU_USAGE}% 内存使用率: ${MEMORY_USAGE}% 磁盘使用率: ${DISK_USAGE}%" >> ${SCRIPT_PATH}/monitor.logsleep 60done}```5. 脚本执行与定时任务将监控脚本保存为可执行文件,并将其加入系统的定时任务中,以实现定期执行监控脚本。
如何在Linux终端中进行系统监控和报警Linux终端是系统管理员和开发人员的重要工具,它不仅提供了快速和高效的操作方式,还允许用户通过系统监控和报警来实时追踪系统的运行状态。
在本文中,将介绍如何在Linux终端中进行系统监控和报警的方法。
1. 使用top命令进行系统监控top命令是Linux系统中最常用的系统监控命令之一,它可以实时显示系统的运行状态、进程等相关信息。
在终端中输入top命令后,会显示类似下面的信息:top - 09:15:27 up 30 days, 15:06, 2 users, load average: 0.08, 0.04, 0.01 Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 stMiB Mem : 15867.6 total, 5566.1 free, 4757.6 used, 5544.0buff/cacheMiB Swap: 1024.0 total, 1024.0 free, 0.0 used. 10662.0 avail MemPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND433 root 20 0 323052 109816 2876 S 0.0 0.7 0:00.16 Xorg 434 root 20 0 88544 54208 8272 S 0.0 0.3 0:00.69 lightdm ...在top命令的输出中,可以看到系统的运行时间、负载均衡、进程状态、CPU和内存使用情况等。
通过定期执行top命令,可以实时监控系统的性能指标,并及时做出相应的调整。
2. 使用sar命令进行系统性能监控sar命令是System Activity Reporter的缩写,它可以收集并报告系统的运行状态、性能指标等。
需要监控Linux服务器系统性能吗?尝试下面这些系统内置或附件的工具吧。
大多数Linux发行版本都装备了大量的监控工具。
这些工具提供了能用作取得相关信息和系统活动的量度指标。
你能使用这些工具发现造成性能问题可能原因。
此次讨论到的工具只是分析和调试服务器下面问题时最基本工具中的一部分。
51CTO编辑推荐:Linux监控工具大全1.找出瓶颈2.硬盘(存储)瓶颈3.CPU及内存瓶颈4.网络瓶颈#1: top - 进程活动top提供一个当前运行系统实时动态的视图,也就是正在运行进程。
在默认情况下,显示系统中CPU使用率最高的任务,并每5秒钟刷新一次。
图01.Linux top命令常用热键热键用途t 显示摘要信息开关.m 显示内存信息开关.A 分类显示系统不同资源的使用大户。
有助于快速识别系统中资源消耗多的任务。
f 添加删除所要显示栏位.o 调整所要显示栏位的顺序.r 调整一个正在运行的进程Nice值.k 结束一个正在运行的进程.z 彩色/黑白显示开关#2:vmstat -系统活动、硬件及系统信息使用vmstat命令可以得到关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息。
# vmstat 3输出样例:procs -----------memory---------- ---swap-- -----io---- --system-------cpu------r b swpd free buff cache si so bi bo in cs us sy id wa st0 0 0 2540988 522188 5130400 0 0 2 32 4 2 4 1 96 0 01 0 0 2540988 522188 5130400 0 0 0 720 1199 665 1 0 99 0 00 0 0 2540956 522188 5130400 0 0 0 0 1151 1569 4 1 95 0 00 0 0 2540956 522188 5130500 0 0 0 6 1117 439 1 0 99 0 00 0 0 2540940 522188 5130512 0 0 0 536 1189 932 1 0 98 0 00 0 0 2538444 522188 5130588 0 0 0 0 1187 1417 4 1 96 0 00 0 0 2490060 522188 5130640 0 0 0 18 1253 1123 5 1 94 0 0显示内存使用详细信息# vmstat -m显示内存活动/不活动的信息# vmstat -a#3: w - 显示谁已登录,他们正在做什么?w命令显示系统当前用户及其运行进程的信息。
# w username# w vivek输出样例:17:58:47 up 5 days, 20:28, 2 users, load average: 0.36, 0.26, 0.24 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHATroot pts/0 10.1.3.145 14:55 5.00s 0.04s 0.02s vim/etc/resolv.confroot pts/1 10.1.3.145 17:43 0.00s 0.03s 0.00s w#4:uptime - 告诉系统已经运行了多久?uptime命令过去只显示系统运行多久。
现在,可以显示系统运行多久、当前有多少的用户登录、在过去的1,5,15分钟里平均负载时多少。
# uptime输入样例:18:02:41 up 41 days, 23:42, 1 user, load average: 0.00, 0.00, 0.001可以被认为是最优的负载值。
负载是会随着系统不同改变得。
单CPU系统1-3和SMP 系统6-10都是可能接受的。
#5:ps - 显示进程ps命令显示当前运行进程的快照。
使用-A或-e显示所有进程。
# ps -A输出样例:PID TTY TIME CMD1 ? 00:00:02 init2 ? 00:00:02 migration/03 ? 00:00:01 ksoftirqd/04 ? 00:00:00 watchdog/05 ? 00:00:00 migration/16 ? 00:00:15 ksoftirqd/1.........4881 ? 00:53:28 java4885 tty1 00:00:00 mingetty4886 tty2 00:00:00 mingetty4887 tty3 00:00:00 mingetty4888 tty4 00:00:00 mingetty4891 tty5 00:00:00 mingetty4892 tty6 00:00:00 mingetty4893 ttyS1 00:00:00 agetty12853 ? 00:00:00 cifsoplockd12854 ? 00:00:00 cifsdnotifyd14231 ? 00:10:34 lighttpd14232 ? 00:00:00 php-cgi54981 pts/0 00:00:00 vim55465 ? 00:00:00 php-cgi55546 ? 00:00:00 bind9-snmp-stat55704 pts/1 00:00:00 psps与top非常相似,但ps提供更多的信息。
输出长格式# ps -Al输出附加全格式(显示进程在执行时传入的参数)# ps -AlF显示进程结构# ps -AlFH在进程后显示线程# ps -AlLm打印服务器上所有进程# ps ax# ps axu打印进程树# ps -ejH# ps axjf# pstree打印安全信息# ps -eo euser,ruser,suser,fuser,f,comm,label# ps axZ# ps -eM查看使用Vivek用户名运行的进程# ps -U vivek -u vivek u设置自定义输出格式# ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm # ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm # ps -eopid,tt,user,fname,tmout,f,wchan只显示Lighttpd的进程ID# ps -C lighttpd -o pid=或者# pgrep lighttpd或者# pgrep -u vivek php-cgi显示PID为55977的进程名称# ps -p 55977 -o comm=找出消耗内存最多的前10名进程# ps -auxf | sort -nr -k 4 | head -10找出使用CPU最多的前10名进程# ps -auxf | sort -nr -k 3 | head -10#6:free - 内存使用情况free命令显示系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。
# free输出样例:total used free shared buffers cachedMem: 12302896 9739664 2563232 0 523124 5154740-/+ buffers/cache: 4061800 8241096Swap: 1052248 0 1052248#7:iostat - CPU平均负载,硬盘活动iostat命令可报告中央处理器(CPU)的统计信息,各种设备、分区及网络文件系统输入/输出的统计信息。
# iostat输出样例:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009avg-cpu: %user %nice %system %iowait %steal %idle3.50 0.09 0.51 0.03 0.00 95.86Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtnsda 22.04 31.88 512.03 16193351 260102868sda1 0.00 0.00 0.00 2166 180sda2 22.04 31.87 512.03 16189010 260102688sda3 0.00 0.00 0.00 1615 0#8:sar - 搜集和报告系统活动sar命令用来搜集、报告和储存系统活动信息。
查看网路计数器,输入:# sar -n DEV | more显示最近24小时网络计数器# sar -n DEV -f /var/log/sa/sa24 | more你亦可以用sar显示实时情况# sar 4 5输出样例:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/200906:45:12 PM CPU %user %nice %system %iowait %steal %idle06:45:16 PM all 2.00 0.00 0.22 0.00 0.00 97.7806:45:20 PM all 2.07 0.00 0.38 0.03 0.00 97.5206:45:24 PM all 0.94 0.00 0.28 0.00 0.00 98.7806:45:28 PM all 1.56 0.00 0.22 0.00 0.00 98.2206:45:32 PM all 3.53 0.00 0.25 0.03 0.00 96.19Average: all 2.02 0.00 0.27 0.01 0.00 97.70#9:mpstat - 多处理器使用率mpstat命令可以显示所有可用处理器的使用情况,处理器编号从0开始。
mpstat -P ALL 显示每个处理器的平均使用率。
# mpstat -P ALL输出样例:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/200906:48:11 PMCPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s06:48:11 PMall 3.50 0.09 0.34 0.03 0.01 0.17 0.00 95.86 1218.0406:48:11PM 0 3.44 0.08 0.31 0.02 0.00 0.12 0.00 96.04 1000 .3106:48:11PM 1 3.10 0.08 0.32 0.09 0.02 0.11 0.00 96.28 34 .9306:48:11PM 2 4.16 0.11 0.36 0.02 0.00 0.11 0.00 95.25 0 .0006:48:11PM 3 3.77 0.11 0.38 0.03 0.01 0.24 0.00 95.46 44 .8006:48:11PM 4 2.96 0.07 0.29 0.04 0.02 0.10 0.00 96.52 25 .9106:48:11PM 5 3.26 0.08 0.28 0.03 0.01 0.10 0.00 96.23 14 .9806:48:11PM 6 4.00 0.10 0.34 0.01 0.00 0.13 0.00 95.42 3 .7506:48:11PM 7 3.30 0.11 0.39 0.03 0.01 0.46 0.00 95.69 76 .89#10: pmap - 进程的内存使用pmap命令可以显示进程的内存映射,使用这个命令可以找出造成内存瓶颈的原因。