free
free命令用来显示当前机器内存显示情况
用法:free [option]
常用参数:-h
结果示例:free -m
total used free shared buffers cached
Mem: 2016 1973 42 0 163 1497
-/+ buffers/cache: 312 1703
Swap: 4094 0 4094
第一行表示系统可见内存,总数都是2016M,用了1973M,这个used包括buffer(缓存未写入)和cache(读入数据缓存)的。
第二行表示应用可见内存,这行的free=第一行的free+buffer+cache。
第三行表示虚拟磁盘存储空间使用情况。
du
du命令用来显示目录占用磁盘空间情况。
用法: du [option] $dir
常用参数:-h以人类可读方式展示磁盘空间,--max-depth=1表示只统计一层目录占用磁盘空间。
Mac: du -h -d 1
df
df命令用来展示磁盘剩余空间,使用率
jstat
jstat -gc 垃圾回收统计
jstat -gccapacity 堆内存统计
jstat -gcnew
jstack
jstakc <pid> nid 十六进制的pid
jmap
jmap -heap 打印java堆内存设置以及新生代(eden,from,to),年老代和永久代的堆内存概况。
dmesg | tail
dmesg 输出系统日志。
vmstat <number>
每隔number秒输出系统指标
r: 等待cpu资源进程数
free: 空闲内存(kb)
si, so: swap区的写入和读取数目
us, sy, id, wa: 用户/系统/空闲/io等待时间
mpstat -P ALL 1
每个cpu占用情况
pidstat <pid>
某个进程占用cpu情况
sar
网络设备
top
显示当前cpu mem等情况,可以按照某个指标排序:-o cpu -o mem
netstat
-a或--all:显示所有连线中的Socket;
-A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
-c或--continuous:持续列出网络状态;
-C或--cache:显示路由器配置的快取信息;
-e或--extend:显示网络其他相关信息;
-F或--fib:显示FIB;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-o或--timers:显示计时器;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table;
-s或--statistice:显示网络工作信息统计表;
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;
-x或--unix:此参数的效果和指定"-A unix"参数相同;
--ip或--inet:此参数的效果和指定"-A inet"参数相同。