一:监控io性能

iostat -x 磁盘使用
io性能、free、ps、查看网络状态、linux下抓包
最后一列表示为磁盘占用的时间比
iotop 磁盘使用
io性能、free、ps、查看网络状态、linux下抓包

二:free命令

io性能、free、ps、查看网络状态、linux下抓包
从左到右依次为,总共的大小,使用的大小,剩余大小
available=free+buffers/cached的剩余部分
total=userd+free+buffers/cached

三:ps命令

查看系统进程 ps aux或者ps -elf
io性能、free、ps、查看网络状态、linux下抓包
PID:进程的ID
STAT:表示进程的状态,分为以下几种
D 不能中断的进程(通常为IO)
R 正在运行中的进程
S 已经中断的进程,通常情况下,大部分都是这个状态
T 已经停止或者暂停的进程
W 表示没有足够的内存页分配
X 已经死掉的进程(好像从未出现)
Z 僵尸进程,杀不掉,打不死的垃圾进程,一般不出现
< 高优先级进程
N 低优先级进程
L 在内存中被锁了内存分页
s 主进程
I 多线程进程

  • 代表在前台运行的进程
    通常会跟管道符一起使用,用来查看某个进程或者他的数量
    ps aux|grep -c 进程名
    所得结果减1为进程数量,因为grep本身也是一个进程。

    四:查看网络状态

    用来打印网络连接状况、系统所开放端口,路由表等信息。
    常用命令:netstat -lnp 打印当前系统启动哪些端口
    io性能、free、ps、查看网络状态、linux下抓包
    netstat -an 打印网络连接状况
    io性能、free、ps、查看网络状态、linux下抓包

    小技巧:
    netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}'
    io性能、free、ps、查看网络状态、linux下抓包
    统计所有状态的进程的数量
    重点关注established的数量

    五:linux下抓包

    ● tcpdump
    安装 yum install -y tcpdump
    抓数据包
    tcpdump -nn -i eth0
    io性能、free、ps、查看网络状态、linux下抓包
    第三列和第四列显示为哪一个IP+端口连接在哪个IP+端口,后面的信息是该数据包的相关信息
    -i 后面跟设备名称
    -nn 让第三列和第四列显示成IP和端口的形式,不加则显示为主机名+服务名称
    io性能、free、ps、查看网络状态、linux下抓包
    -c 指定包数量
    -w 写入指定文件,如果不加,则显示为数据流向,不是数据包
    host 指定ip
    port 指定端口
    tcpdump -nn -i eth0 host 192.168.233.130 and port 22 -c 100 -w 1.cap
    查看1.cap可以用 tcpdump -r 1.cap
    也可以下载到windows用wireshark查看。
    ● wireshark
    安装 yum install -y wireshark
    用法 tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
    这类似web访问日志。