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网络
做为系统管理员,必定要知道所管理的系统都有那些进程在运行,在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命令的使用,常同管道符一块儿使用,用来查看某个进程或者它的数量。
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了。
用法: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的访问日志
有时候,也许会有这样的需求,想看一下某个网卡上都有哪些数据包,尤为是初步断定服务器上有流量攻击。这时,使用抓包工具来抓一下数据包,就能够知道有哪些IP在攻击了。
先安装:yum install -y tcpdump
[root@localhost ~]# tcpdump -nn -i ens33
上例中第三列和第四列显示的信息为哪个IP+port在链接哪个IP+port,后面的信息是该数据包的相关信息。这里须要关注的只是第三列以及第四列。-i 选项后面跟设备名称,若是想抓eth1网卡的包,后面则要跟eth1.至于-nn选项的做用是让第三列和第四列显示成IP+端口号的形式,若是不加-nn则显示的是主机名+服务名称。
CentOS下安装Wireshark至关简单.两条命令就够了.这里.主要是记录写使用方面的东西
安装:
一、yum install wireshark。注意这样并没有法使用wireshark命令和图形界面。但提供了抓包基本功能。
二、yum install wireshark-gnome。这样就能够方便的使用了。
【简易使用】#tshark; 监控全部数据,实时变化。
实际工做中抓出来的包要怎样进行分析 : 主要是看源ip,源port,目标ip,目标port,还有协议之类的。再深刻的就得借助图形化的抓包工具去分析了。