监控系统状态
iostata /sar 都通过sysstat安装来的
iostat -x 磁盘使用
关注%util,若占用率高,表示磁盘io性能不足
iotop 磁盘使用 可以查看具体进程占用的io性能
需要安装yum install -y iotop
free 查看内存使用情况
free -m(以兆为单位)/ -g(以吉为单位) /-h(自动匹配最合适单位)
buffer/cache区别
buffer:缓冲,数据流从cpu到内存到磁盘
cache:缓存,数据流从磁盘到内存到cpu
公式:total=used+free+buff/cache
avaliable (真正剩余的大小)包含free和buffer/cache剩余部分
ps查看系统进程
用法ps aux 、ps -elf (一般与grep一同使用)
查看进程在哪启动的根据pid cd /proc/pid里查看
STAT部分说明
D不能中断的进程
R run状态的进程
S sleep状态的进程
T 暂停的进程
Z 僵尸进程
< 高优先级进程
N 低优先级进程
L 内存中被锁了内存分页
s 主进程
l 多线程进程
+ 前台进程
netstat 查看网络状态
netstat -lnp 查看监听端口
netstat -an 查看系统的网络连接状态
netstat -lntp 只看tcp的,不查看socket
netstat -ln
ss -an和nestat异曲同工
分享一个小技巧:
netstat -an| awk '/^tcp/{++sta[$NF]}END {for (key in sta)print key,"\t",sta[key]}
ss -an和nestat异曲同工(一般配合grep使用,但是不会显示进程名)
抓包工具tcpdump
yum install -y tcpdump
用法:
tcpdump -nn -i ens33 (第一个n表示ip使用点分十进制显示,-i指定网卡)
tcpdump -nn prot 80 (prot指定端口)
tcpdump -nn not port 22 and host 192.168.32.4 (过滤掉选中的端口和ip)
tcpdump -nn -c 100 -w 1.cap (抓取100个报文,存放在1.cap中)
cap文件不能直接cat
使用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的访问日志。