11.28 监控io性能 free ps 命令 查看网络状态 linux下抓包

10.6 监控io性能

iostat -xlinux

yum install -y iotopios

iotopweb


10.7 free命令windows

查看内存使用情况缓存

只须要敲一个 free 而后回车就能够当前系统的总内存大小以及使用内存的状况。从上例中可看到当前系统内存总大小为326616(单位是k)已经使用137332, 剩余189284. 其实真正剩余并非这个189284, 而是第二行的297100, 真正使用的也是第二行的29516, 这是由于系统初始化时,就已经分配出很大一部份内存给缓存,这部分缓存用来随时提供给程序使用,若是程序不用,那这部份内存就空闲。因此,查看内存使用多少,剩余多少请看第二行的数据。另外咱们还能够加-m 或者-g选项分别以M或G为单位打印内存使用情况:服务器

free -h网络

10.8 ps命令

做为系统管理员,必定要知道所管理的系统都有那些进程在运行,在windows下只要打开任务管理器便可查看。在linux下呢?其实top命令就能够,可是不容易看,固然还有专门显示系统进程的命令:多线程

   

 

ps  -elf 也能够查看,显示的信息基本上是同样的。ps命令还有更多的用法。socket

PID :进程的id,这个id颇有用,在linux中内核管理进程就得靠pid来识别和管理某一个程,好比我想终止某一个进程,则用 ‘kill  进程的pid 有时并不能杀掉,则须要加一个-9选项了 kill  -9  进程pidtcp

STAT :表示进程的状态,进程状态分为如下几种(不要求记住,但要了解)

D 不能中断的进程(一般为IO)

R 正在运行中的进程

S 已经中断的进程,一般状况下,系统中大部分进程都是这个状态

T 已经中止或者暂停的进程,若是咱们正在运行一个命令,好比说 sleep 10 若是咱们按一下ctrl -z 让他暂停,那么咱们用ps查看就会显示T这个状态

W 这个好像是说,从内核2.6xx 之后,表示为没有足够的内存页分配

X 已经死掉的进程(这个好像历来不会出现)

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

< 高优先级进程

N 低优先级进程

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

s 主进程

l 多线程进程

+ 表明在前台运行的进程

这个ps命令是在工做中用的很是多的命令之一。关于ps命令的使用,常同管道符一块儿使用,用来查看某个进程或者它的数量。


10.9 查看网络状态

netstat 查看网络状态
 netstat -lnp 查看监听端口
 netstat -an 查看系统的网络链接情况
 netstat -lntp 只看出tcp的,不包含socket
 ss -an 和nestat殊途同归
 分享一个小技巧:
 netstat -an | awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}'

netstat命令用来打印网络链接情况、系统所开放端口、路由表等信息。最经常使用的关于netstat的命令就是这个 netstat -lnp (打印当前系统启动哪些端口)以及 netstat  -an (打印网络链接情况)这两个命令很是有用,请必定要记住。

netstat -an

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


10.10 linux下抓包

 用法:tcpdump -nn

 tcpdump -nn -i ens33
 tcpdump -nn -i port 80
 tcpdump -nn not port 22 and host 192.168.0.100
 tcpdump -nn -c 100 -w 1.cap    //指定个数 保存路径

tcpdump -r 1.cap    //读

 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"

//能够查看指定端口 80端口web服务访问状况   相似于web的访问日志

  • tcpdump工具

有时候,也许会有这样的需求,想看一下某个网卡上都有哪些数据包,尤为是初步断定服务器上有流量攻击。这时,使用抓包工具来抓一下数据包,就能够知道有哪些IP在攻击了。

先安装:yum install -y tcpdump

[root@localhost ~]# tcpdump -nn -i ens33

上例中第三列和第四列显示的信息为哪个IP+port在链接哪个IP+port,后面的信息是该数据包的相关信息。这里须要关注的只是第三列以及第四列。-i 选项后面跟设备名称,若是想抓eth1网卡的包,后面则要跟eth1.至于-nn选项的做用是让第三列和第四列显示成IP+端口号的形式,若是不加-nn则显示的是主机名+服务名称。

  • wireshark工具

CentOS下安装Wireshark至关简单.两条命令就够了.这里.主要是记录写使用方面的东西

安装:
一、yum install wireshark。注意这样并没有法使用wireshark命令和图形界面。但提供了抓包基本功能。
二、yum install wireshark-gnome。这样就能够方便的使用了。

【简易使用】#tshark; 监控全部数据,实时变化。

实际工做中抓出来的包要怎样进行分析 : 主要是看源ip,源port,目标ip,目标port,还有协议之类的。再深刻的就得借助图形化的抓包工具去分析了。

相关文章
相关标签/搜索