作家
登录

Linux下常用系统分析工具总结

作者: 来源: 2017-06-30 15:03:20 阅读 我要评论

(3)-w,如不雅你要将监听所得的数据包数据储存下来,用这个参数就对了。后面接文件名。

(4)-c,监听的数据包数,如不雅没有这个参数, tcpdump 会持续赓续的监听,直到用户输入 [ctrl]-c 为止。

(5)-A,数据包的内容以 ASCII 显示,平日用来捉取 WWW 的网页数据包材料。

(6)-e,应用材料连接层 (OSI 第二层) 的 MAC 数据包数据来显示。

(7)-q,仅列出较为简短的数据包信息,每一行的内容比较精简。

(8)-X,可以列出十六进制 (hex) 以及 ASCII 的数据包内容,对于监听数据包内容很有效。

(9)-r,大年夜后面接的文件将数据包数据读出来。那个「文件」是已经存在的文件,并且这个「文件」是由 -w 所制造出来的。

tcpdump的常见用法:

(1)tcpdump -i eth1 host ***.***.***.***:抓取所有经由 eth1,目标或源地址是***.***.***.***的收集数据。

(2)tcpdump -i eth1 dst host ***.***.***.***:抓取所有经由 eth1,目标地址是***.***.***.***的收集数据。

(3)tcpdump -i eth1 src host ***.***.***.***:抓取所有经由 eth1,源地址是***.***.***.***的收集数据。

(4)tcpdump -i eth1 port 36000:抓取所有经由 eth1,目标端口或源端口是36000的收集数据。

(5)tcpdump -i eth1 src port 36000:抓取所有经由 eth1,源端口是36000的收集数据。

(6)tcpdump -i eth1 dst port 36000:抓取所有经由 eth1,目标端口是36000的收集数据。

(7)tcpdump -i eth1 'src host ***.***.***.*** && src port 36000':抓取所有经由 eth1,目标地址是10.136.12.1且目标端口是36000的收集数据。

(8)在10.136.12.1机械上我们经由过程top知道了ActLogicSvr的过程id为16789。然后经由过程netstat -ap | grep 16789获得ActLogicSvr监听的端口是10014。如下图所示:

 

大年夜抓到的包上我们可以清跋扈的看到tcp连接建立的三次握手到数据传输到tcp连接断开四次挥手的过程(前三个数据包是三次握手的过程,最后四个数据包是四次挥手的过程,中心的为数据传输所产生的收集数据包)。

3 内存

3.1 valgrind

valgrind 是在Linux法度榜样中广泛应用的调试应用法度榜样。它尤其善于发明内存治理的问题,可以检检法度榜样运行时的内存泄漏问题等。我们在应用valgrind时也重要用到它的内存泄漏检测功能,即memcheck功能。它检查所有对内存的读/写操作,并朝长进步所有的malloc/new/free/delete调用。是以memcheck对象可以或许探测到以下问题:

(1)应用未初始化的内存

(2)读/写已经被释放的内存

(3)读/写内存越界

(5)内存泄漏

(6)应用malloc/new/new[]和free/delete/delete[]不匹配。

(7)src和dst的重叠valgrind的可选的参数以及对应的含义如下所示:

(1)-version 显示valgrind内核的版本,每个对象都有各自的版本。

(2)q –quiet 宁地步运行,只打印缺点信。

(3)v –verbose 更具体的信息, 增长缺点数统计。

(4)-trace-children=no|yes 跟踪子线程

(7)-log-fd=<number> 输出LOG到描述符文

(8)-log-file=<file> 将输出的信息写入到filename.PID的文件里,PID是运行法度榜样的进行ID

(9)-log-file-exactly=<file> 输出LOG信息到 file

(10)-log-file-qualifier=<VAR> 取得情况变量的值来做为输出信息的文件名。

LOG信息输出:

(1)-xml=yes 将信息以xml格局输出,只有memcheck可用

netstat -te(显示出所有的tcp连接)履行起来的效不雅如下:

(2)-num-callers=<number> show <number> callers in stack traces [12]

(3)-error-limit=no|yes 如不雅太多缺点,则停止显示新缺点? [yes]

(4)-error-exitcode=<number> 如不雅发明缺点则返回缺点代码 [0=disable]

(5)-db-attach=no|yes 当出现缺点,valgrind会主动启动调试器gdb。[no]

(6)-db-command=<command> 启动调试器的敕令行选项[gdb -nw %f %p]实用于Memcheck对象的相干选项:

(1)--leak-check=no|summary|full 请求对leak给出具体信息? [summary]

(2)--leak-resolution=low|med|high how much bt merging in leak check [low]

(3)--show-reachable=no|yes show reachable blocks in leak check? [no]

示例:valgrind --leak-check=full /usr/local/app/taf/tafnode/data/TenFortune.WeChatProxySvr/bin/WeChatProxySvr --config=/usr/local/app/taf/tafnode/data/TenFortune.WeChatProxySvr/conf/TenFortune.WeChatProxySvr.config.conf -trace-child=yes。履行的结不雅:

4 磁盘

4.1 iotop

iotop敕令是一个用来监毒磁逄I/O应用状况的top类对象。iotop具有与top类似的UI,个中包含PID、用户、I/O、过程等相干信息。Linux下的IO统计对象如iostat,nmon等大年夜多半是只能统计到per设备的读写情况,如不雅你想知道每个过程是若何应用IO的就比较麻烦,应用iotop敕令可以很便利的查看。

iostat敕令选项:

-o:只显示有io操作的过程

-n NUM:显示NUM次,重要用于非交淮示洌式。

-d SEC:距离SEC秒显示一次。

-p PID:监控的过程pid。

-u USER:监控的过程用户。

iotop的履行效不雅:

perf record带-g选项时,perf report的运行效不雅:


  推荐阅读

  李雪:今目标与企业共同成长

【51CTO.com原创稿件】跟着企业对协同办公请求的进步,协同办公的定义也晋升到了智能化办公典范畴。大年夜多企>>>详细阅读


本文标题:Linux下常用系统分析工具总结

地址:http://www.17bianji.com/lsqh/35979.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)