监控io性能/free命令/ps命令/查看网络状况/linux下抓包
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了监控io性能/free命令/ps命令/查看网络状况/linux下抓包相关的知识,希望对你有一定的参考价值。
监控io性能
使用iostat命令查看磁盘使用情况
[[email protected] ~]# iostat -x
这里我们主要关注util这一列,util是个百分比显示的,如果这个值越大则表示你的硬盘越忙,这也会是你系统变慢的原因
使用iotop命令查看那个进程使用磁盘大
首先需要先安装这个命令
[[email protected] ~]# yum install -y iotop
[[email protected] ~]# iotop
free命令
free命令可以查看当前系统的总内存大小以及使用内存的情况。Centos7比Centos6更加简洁了一些,但大体内容一致。
[[email protected] ~]# free
total:内存总大小
used:真正使用的实际内存大小
free:剩余物理内存大小(没有被分配,纯剩余)
shared:共享内存大小,不用关注它
buff/cache:buffer和cache都是一部分内存,内存的作用就是缓解CPU和IO的速度差距的
available:系统可以使用内存有多大
free命令显示的结果中,其实有一个隐藏的公式:total=used+free+buff/cache。available是由free这部分内存和buff/cache还未占用的那部分内存组成。
free同时还可以加一些参数-m和-g(分别是MB和GB的单位显示)打印内存使用状况,甚至也支持-h选项
ps命令
使用ps命令查看系统进程
[[email protected] ~]# ps aux
除了ps aux命令外还有一个ps -elf命令,但是常用一般为ps aux命令
PID:表示进程的id,这个id很有用。在linux中,内核管理进程就得靠pid来识别和管理某一个进程,比如这里想要终止一个进程,则用命令“kill 进程的id”,有的时候这样并不能关闭某些进程,需要加-9选项,但你这样有些强行(暴力),严重的话可能会丢失数据,所以尽量不用。
STAT:进程的状态,状态分为以下几种
D:不能中断的进程(通常为IO)
R:正在运行的进程,包含等待CPU时间片的进程
S:已经中断的进程。通常情况下,系统的大部分进程都是这个状态
T:已经停止或者暂停的进程。
Z:僵尸进程,即杀不掉,打不死的垃圾进程,占用系统一点资源,不过没有关系。如果占用太多,则需要重视
<:高优先级进程
N:底优先级进程
L:在内存中被锁了内存分页
s:主进程
l:多线程进程
+:在前台运行的进程,比如在当前终端执行的ps aux就是前台进程
查看网络状态
netstat:用于打印网络连接状况、系统所开放端口、路由表等信息,一般常用的有;
[[email protected] ~]# netstat -lnp //打印当前系统启动哪些端口
和
[[email protected] ~]# netstat -an //打印网络连接状况
tcp三次握手四次挥手,需要着重了解的内容;
https://wenku.baidu.com/view/91793c1ec281e53a5802ff29.html
分享技巧,查看所有状态的数量(客户端和服务端在通信数量,1000以内都是正常的)
[[email protected] ~]# netstat -an | awk ‘/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}‘
LISTEN 9
ESTABLISHED 1
linux下抓包
tcpdump工具:查看某个网卡上都有哪些数据包,尤其是当你初步判断服务器上有流量攻击时,使用抓包工具来抓取数据包就可以知道有哪些ip在攻击了。
如果还没有tcpdump工具则先进行安装;
[[email protected] ~]# yum install -y tcpdump
[[email protected] ~]# tcpdump -nn -i ens33
常用参数-nn 这里由于使用的虚拟机所以需要指定网卡加了-i参数,命令输完回车,屏幕会不断打印出字符,字符串不停刷新,这些内容就是传输数据的流向过程以及数据包,这里重点关注第三列和第四列,表示从哪个ip+端口连接到哪个ip+端口。Ctrl+C退出程序。
tcpdump还有-c和-w选项,-c指定抓包数量,-w保存抓取结果到指定的路径
[[email protected] ~]# tcpdump -nn -i ens33 -c 10 -w /home/ask/文档/
除此之外还有
[[email protected] ~]# tcpdump -nn -i ens33 port 22 //指定抓取22端口的包
[[email protected] ~]# tcpdump -nn -i ens33 not port 22 //指定抓取除了22端口以外的包
[[email protected] ~]# tcpdump -nn -i ens33 tcp and not port 22 //指定抓取tcp的包,但排除掉22端口的
[[email protected] ~]# tcpdump -nn -i ens33 port 22 and port 24 //指定抓取只有22和24端口的包
wireshark工具
安装tshark抓包工具
[[email protected] ~]# yum install -y wireshark
指定查看80端口的访问情况
[[email protected] ~]# 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"
以上是关于监控io性能/free命令/ps命令/查看网络状况/linux下抓包的主要内容,如果未能解决你的问题,请参考以下文章
监控io性能,free命令,ps网络命令,查看网络状态,Linux下抓包
10.6-10.10 监控io性能 free命令 ps命令 查看网络 linux下抓包
监控io性能,free命令,ps命令,查看网络状态,linux下抓包
监控IO性能| free命令 |ps命令 |查看网络状态 |linux下抓包