您的位置:首页 > 理论基础 > 计算机网络

监控io性能、free、ps、查看网络状态和linux抓包工具

2017-11-28 17:38 981 查看
一、监控io性能

1、iostat -x 磁盘使用



关注最后一列的数值,数值大说明磁盘有异常

2、iotop 磁盘使用

安装:yum install -y iotop



二、free命令

查看内存使用多少,剩余多少请看第二行的数据。另外我们还可以加-m或-h 或者-g选项分别以M或G为单位打印内存使用状况:

常用: free -h



三、ps命令

ps查看系统进程

用法:ps aux 或 ps -elf



PID :进程的id,想终止某一个进程,则用 ‘kill 进程的pid 有时并不能杀掉,则需要加一个-9选项了 kill -9 进程pid

STAT :表示进程的状态

D:不能中断的进程(通常为IO)

R: 正在运行中的进程

S: 已经中断的进程,通常情况下,系统中大部分进程都是这个状态

T: 已经暂停的进程,如果我们正在运行一个命令,比如说 sleep 10 如果我们按一下ctrl -z 让他暂停,那么我们用ps查看就会显示T这个状态

Z: 僵尸进程,杀不掉,打不死的垃圾进程,占系统一小点资源,不过没有关系。如果太多,就有问题了。一般不会出现。

<: 高优先级进程

N: 低优先级进程

L: 在内存中被锁了内存分页

s: 主进程

l: 多线程进程

+: 代表在前台运行的进程

ps命令经常会连同管道符一起使用,用来查看某个进程或者它的数量



四、netstat 查看网络状况

netstat命令用来打印网络连接状况、系统所开放端口、路由表等信息

常用的关于netstat的命令就是这个 netstat -lnp (打印当前系统启动哪些端口)以及 netstat -an (打印网络连接状况)

1、netstat -lnp 打印当前系统启动哪些端口



2、netstat -an 打印网络连接状况



如果你所管理的服务器是一台提供web服务(80端口)的服务器,那么你就可以使用 netstat -an |grep 80 查看当前连接web服务的有哪些IP了。



分享一个小技巧:可以查看所有状态的数字

netstat -an | awk ‘/^tcp/ {++sta[$NF]} END {for(key in sta) print key,”\t”,sta[key]}’



关注:ESTABLISHED, 网站并发连接数,表示同一时刻有多少个客户端连接到服务端进行通信(1000以内可以接受)

五、linux抓包工具tcpdump

有时候想看一下某个网卡上都有哪些数据包,尤其是当你初步判定你的服务器上有流量攻击。这时,使用抓包工具来抓一下数据包,就可以知道有哪些IP在攻击你了

没有tcpdump 这个命令,需要用 yum install -y tcpdump 命令去安装一下

tcpdump -nn -i eno16777736



需要关注:

第三列和第四列显示的信息为哪一个IP+port在连接哪一个IP+port。-i 选项后面跟设备名称,如果你想抓eth1网卡的包,后面则要跟eth1.至于-nn选项的作用是让第三列和第四列显示成IP+端口号的形式,如果不加-nn则显示的是主机名+服务名称。

另外介绍一个实用的工具tshark和命令:

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”

指定网卡,80端口的web访问情况

类似web的访问日志

安装命令:yum install -y wireshark
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐