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

七周第二次课 2017.11.28 监控io性能、free命令、ps命令、查看网络状态、linux下抓包

2017-11-29 00:48 931 查看
10.6 监控io性能

iostat查看磁盘情况(需要安装sysstat包)

可以直接运行该命令,或者后面加一个1,就是动态显示。



(使用sar -b可以达到同样的效果,所以我们介绍一下下面的用法)





我们着重看的是红框一列,该列表示磁盘有多少时间占用cpu时间比,等待io时间占比,等待磁盘读写时间占总时间的比例。

如果这一列的数字很大,50或者60,并且wkb/s列也很大那就说明磁盘io比较大比较忙,但是如果wkb/s列并不大,那么就说明磁盘出故障了。

硬盘慢就会影响系统的性能。


查看具体进程读写磁盘情况,和top命令很像(需要安装iotop)

我们主要看io一列



10.7 free命令

free查看内存使用情况



第一行说明、第二行是内存使用情况、第三行是交换分区。

第一列是总大小(默认单位是kb,可以使用-m指定单位为兆,或者使用-h使用适当的单位)、第二列是已使用的,第三列是剩余的、第四列是共享的、第五列、第六列。

系统会把内存预留一点给buff/cache(buff是缓冲、cache是缓存)



free查看内存使用情况主要看的就是avaliable。



10.8 ps命令

ps查看进程

ps aux (静态的列出所有进程)



第一列向后分别是 运行用户、pid、cpu占用、内存占用、虚拟内存、物理内存、tty、stat(进程的状态)、什么时候启动的、运行了多久了、命令。

我们要关注STAT(进程的状态)。

STAT(进程的状态)有:

D不能中断。

R(run)正在跑的进程(在一个时间段内使用cpu)。

S(sleep)进程运算完可能会暂停一下,过会会激活

T暂停的进程(ctrl+z暂停的进程)

+前台进程

Z僵尸进程

<高优先级的进程(cpu优先处理)

N低优先级

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

s主进程

L多线程进程

ps aux用法:查看某个进程有没有在运行



ps -elf和ps aux一样。

杀死进程使用kill加pid

10.9 查看网络状态

netstat查看网络状态(tcplp通信状态)


查看监听端口(用户和服务器通信需要端口)



STREAM内部通信




只查看tcp以及tcp6的端口


只查看tcp以及tcp6以及udp端口


查看tcpip状态




状态:客户端和服务端两个机器相互通信之后它们的链接还没有断开,处于一种等待的状态,等待下次这两台机器再次连接传输数据。

查看各个状态的个数命令:



我们主要关注如上白底一行,这个数字如果很大说明你的系统很忙,(并发连接数,在这个时间内有多少个客户端在和服务端通信)一般一千以内。


和netstat相似,不过不显示进程名


查看LISTEN一列

10.10 linux下抓包

tcpdump抓包工具(如果没有需要安装tcpdump包)




指定网卡名字

n表示ip用数字的形式表示出来,如果不加会显示主机名。



不加:



第一列往后分别是时间、ip、源ip、端口、到哪个ip去、端口、包的信息。



我们主要关注白底部分。看数据的流向。

有时候也要看length(长度),如下图




指定端口


排除写法,排除22端口


排除22端口并指定ip


指定抓的包个数


结果存到指定文件里去,(这个文件cat不了,使用file可查看大概信息)


可以查看到数据流

tshark抓包工具类似于tcpdump(需要安装wireshark包)

查看指定网卡80端口的wap访问的情况:





可以看到有什么ip访问我的网站,访问网站的什么链接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐