CPU查询指令:cat /proc/cpuinfo
内存查询指令:cat /proc/meminfo
硬盘查询指令:fdisk -l (需要root权限)
vmstat使用说明
vmstat可以对操作系统的内存信息、进程状态、CPU活动、磁盘等信息进行监控,不足之处是无法对某个进程进行深入分析vmstat [-a] [-n] [-S unit] [delay [ count]]
•-a:显示活跃和非活跃内存
•-m:显示slabinfo
•-n:只在开始时显示一次各字段名称。
•-s:显示内存相关统计信息及多种系统活动数量。
•delay:刷新时间间隔。如果不指定,只显示一条结果。
•count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
•-d:显示各个磁盘相关统计信息。
•-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
•-V:显示vmstat版本信息。
•-p:显示指定磁盘分区统计信息
•-D:显示磁盘总体信息
sar是非常强大性能分析命令,通过sar命令可以全面的获取系统的CPU、运行队列、磁盘I/O、交换区、内存、cpu中断、网
络等性能数据。
sar 命令行的常用格式:
sar [options] [-A] [-o file] t [n]
在命令行中,n 和t 两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有
的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式
存放在文件中,file 在此处不是关键字,是文件名。options 为命令行选项,sar命令
的选项很多,下面只列出常用选项:
-A:所有报告的总和。
-u:CPU利用率
-v:进程、节点、文件和锁表状态。
-p:像是当前系统中指定CPU使用信息。
-d:硬盘使用报告。
-r:显示系统内存的使用情况。
-n:显示网络运行状态。参数后面可跟DEV、EDEV、SOCK和FULL。DEV显示网络接口信息,EDEV显示网络错误的统计数
据,SOCK显示套接字信息,FULL显示前三参数所以信息。
-q:显示运行队列的大小,它与系统当时的平均负载相同
-B:内存分页情况
-R:显示进程在采样时间内的活动情况。
-g:串口I/O的情况。
-b:缓冲区使用情况。
-a:文件读写情况。
-c:系统调用情况。
-R:进程的活动情况。
-y:终端设备活动情况。
-W:系统交换活动。
iostat是对系统的磁盘I/O操作进行监控,它的输出主要显示磁盘读写操作的统计信息,同时给出CPU的使用情况。同vmsta
一样,iostat不能对某个进程进行深入分析,仅对操作系统的整体情况进行分析。
iostat命令行的常用格式:
iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ device [ ... ] | ALL ] [ -p [ device | ALL ] ] [ interval [ count ] ]
各选项以及参数含义如下:
-c: 仅显示CPU统计信息.与-d选项互斥.
-d :仅显示磁盘统计信息.与-c选项互斥.
-k :以K为单位显示每秒的磁盘请求数,默认单位块.
-p :device | ALL
与-x选项互斥,用于显示块设备及系统分区的统计信息.也可以在-p后指定一个设备名,如:
# iostat -p had
或显示所有设备
# iostat -p ALL
-t :在输出数据时,打印搜集数据的时间.
-V :打印版本号和帮助信息.
-x device 输出指定要统计的磁盘设备名称,默认为所有磁盘设备.
-interval :指两次统计间隔时间
- count :按照interval 指定的时间间隔统计的次数
free命令是监控linux内存使用最常用的命令
参数说明:
-m:以M为单位查看内存使用情况(默认为kb)
-b:以字节为单位查看内存使用情况
-s:可以在指定时间段内不简单监控内存的使用情况
uptime命令是监控系统性能最常用的一个命令,主要是来统计系统当前的运行状态
输出信息依次是:系统现在的时间,系统从上次开机到现在运行了多长时间,系统当前有多少个登录用户,系统在一分钟内
5分钟内、15分钟内的平均负载
注意点:如果load average值长期大于系统CPU的个数则说明CPU很繁忙,负载很高,可能会影响系统性能
Netstat命令用于显示本机网络连接、运行端口、路由表等信息
命令行启动参数:
netstat [选项]
-a (all):显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING
的那些连接,断开连接(CLOSE_WAIT)或者处于联机等待状态的(TIME_WAIT)等
-t (tcp):显示tcp相关选项
-u (udp):仅显示udp相关选项
-n :拒绝显示别名,能显示数字的全部转化成数字。
-l :仅列出有在 Listen (监听) 的服務状态
-p :显示建立相关链接的程序名-r :显示路由信息,路由表,除了显示有效路由外,还显示当前有效的连接
-e :显示扩展信息,例如uid等
-s :按各个协议进行统计
-c :每隔一个固定时间,执行该netstat命令。
-v :显示当前的有效连接,与-n选项类似
-I :显示自动匹配接口的信息
-e :显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的
量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
ps命令就是最基本同时也是非常强大的进程查看命令.使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否
束、进程有没有僵死、哪些进程占用了过多的资源等等.总之大部分信息都是可以通过执行该命令得到的。
ps a: 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A :显示所有程序。
ps c :列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e :此参数的效果和指定"A"参数相同。
ps e :列出程序时,显示每个程序所使用的环境变量。
ps f :用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H:显示树状结构,表示程序间的相互关系。
ps –N:显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s:采用程序信号的格式显示程序状况。
ps S :列出程序时,包括已中断的子程序资料。
ps -t<终端机编号> :指定终端机编号,并列出属于该终端机的程序的状况。
ps u:以用户为主的格式来显示程序状况。
ps x:显示所有程序,不以终端机来区分。
Ps -l:较长较详细的显示该pid信息
最常用的方法是ps -aux,然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。