Linux服务器上监控网络带宽的18个常用命令.docx_第1页
Linux服务器上监控网络带宽的18个常用命令.docx_第2页
Linux服务器上监控网络带宽的18个常用命令.docx_第3页
Linux服务器上监控网络带宽的18个常用命令.docx_第4页
Linux服务器上监控网络带宽的18个常用命令.docx_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux服务器上监控网络带宽的18个常用命令本文介绍了一些可以用来监控网络使用情况的Linux命令行工具。这些工具可以监控通过网络接口传输的数据,并测量目前哪些数据所传输的速度。入站流量和出站流量分开来显示。一些命令可以显示单个进程所使用的带宽。这样一来,用户很容易发现过度使用网络带宽的某个进程。这些工具使用不同的机制来制作流量报告。nload等一些工具可以读取proc/net/dev文件,以获得流量统计信息;而一些工具使用pcap库来捕获所有数据包,然后计算总数据量,从而估计流量负载。下面是按功能划分的命令名称。 监控总体带宽使用nload、bmon、slurm、bwm-ng、cbm、speedometer和netload 监控总体带宽使用(批量式输出)vnstat、ifstat、dstat和collectl 每个套接字连接的带宽使用iftop、iptraf、tcptrack、pktstat、netwatch和trafshow 每个进程的带宽使用nethogs1. nloadnload是一个命令行工具,让用户可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,不支持许多选项。所以,如果你只需要快速查看总带宽使用情况,无需每个进程的详细情况,那么nload用起来很方便。1. $nload安装nload:Fedora和Ubuntu在默认软件库里面就有nload。CentOS用户则需要从Epel软件库获得nload。1. #fedora或centos2. $yuminstallnload-y3. #ubuntu/debian4. $sudoapt-getinstallnload2. iftopiftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。1. $sudoiftop-nn选项可以防止iftop将IP地址解析成主机名,解析本身就会带来额外的网络流量。安装iftop:Ubuntu/Debian/Fedora用户可以从默认软件库获得它。CentOS用户可以从Epel获得它。1. #fedora或centos2. yuminstalliftop-y3. #ubuntu或debian4. $sudoapt-getinstalliftop3. iptrafiptraf是一款交互式、色彩鲜艳的IP局域网监控工具。它可以显示每个连接以及主机之间传输的数据量。下面是屏幕截图。1. $sudoiptraf安装iptraf:1. #Centos(基本软件库)2. $yuminstalliptraf3. #fedora或centos(带epel)4. $yuminstalliptraf-ng-y5. #ubuntu或debian6. $sudoapt-getinstalliptrafiptraf-ng4. nethogsnethogs是一款小巧的net top工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。1. $sudonethogs安装nethogs:Ubuntu、Debian和Fedora用户可以从默认软件库获得。CentOS用户则需要Epel。1. #ubuntu或debian(默认软件库)2. $sudoapt-getinstallnethogs3. #fedora或centos(来自epel)4. $sudoyuminstallnethogs-y5. bmonbmon(带宽监控器)是一款类似nload的工具,它可以显示系统上所有网络接口的流量负载。输出结果还含有图表和剖面,附有数据包层面的详细信息。安装bmon:Ubuntu、Debian和Fedora用户可以从默认软件库来安装。CentOS用户则需要安装repoforge,因为Epel里面没有bmon。1. #ubuntu或debian2. $sudoapt-getinstallbmon3. #fedora或centos(来自repoforge)4. $sudoyuminstallbmonbmon支持许多选项,能够制作HTML格式的报告。欲知更多信息,请参阅参考手册页。6. slurmslurm是另一款网络负载监控器,可以显示设备的统计信息,还能显示ASCII图形。它支持三种不同类型的图形,使用c键、s键和l键即可激活每种图形。slurm功能简单,无法显示关于网络负载的任何更进一步的详细信息。1. $slurm-s-ieth0安装slurm1. #debian或ubuntu2. $sudoapt-getinstallslurm3. #fedora或centos4. $sudoyuminstallslurm-y7. tcptracktcptrack类似iftop,使用pcap库来捕获数据包,并计算各种统计信息,比如每个连接所使用的带宽。它还支持标准的pcap过滤器,这些过滤器可用来监控特定的连接。安装tcptrack:Ubuntu、Debian和Fedora在默认软件库里面就有它。CentOS用户则需要从RepoForge获得它,因为Epel里面没有它。1. #ubuntu,debian2. $sudoapt-getinstalltcptrack3. #fedora,centos(来自repoforge软件库)4. $sudoyuminstalltcptrack8. vnstatvnstat与另外大多数工具有点不一样。它实际上运行后台服务/守护进程,始终不停地记录所传输数据的大小。之外,它可以用来制作显示网络使用历史情况的报告。1. $servicevnstatstatus2. *vnStatdaemonisrunning运行没有任何选项的vnstat,只会显示自守护进程运行以来所传输的数据总量。1. $vnstat2. Databaseupdated:MonMar1715:26:5920143. eth0since06/12/134. rx:135.14GiBtx:35.76GiBtotal:170.90GiB5. monthly6. rx|tx|total|avg.rate7. 8. -+-+-+-9. Feb148.19GiB|2.08GiB|10.27GiB|35.60kbit/s10. Mar144.98GiB|1.52GiB|6.50GiB|37.93kbit/s11. -+-+-+-12. estimated9.28GiB|2.83GiB|12.11GiB|13. daily14. rx|tx|total|avg.rate15. -+-+-+-16. yesterday236.11MiB|98.61MiB|334.72MiB|31.74kbit/s17. today128.55MiB|41.00MiB|169.56MiB|24.97kbit/s18. -+-+-+-19. estimated199MiB|63MiB|262MiB|想实时监控带宽使用情况,请使用-l选项(实时模式)。然后,它会显示入站数据和出站数据所使用的总带宽量,但非常精确地显示,没有关于主机连接或进程的任何内部详细信息。1. $vnstat-l-ieth02. Monitoringeth0.(pressCTRL-Ctostop)3. rx:12kbit/s10p/stx:12kbit/s11p/svnstat更像是一款制作历史报告的工具,显示每天或过去一个月使用了多少带宽。它并不是严格意义上的实时监控网络的工具。vnstat支持许多选项,支持哪些选项方面的详细信息请参阅参考手册页。安装vnstat1. #ubuntu或debian2. $sudoapt-getinstallvnstat3. #fedora或centos(来自epel)4. $sudoyuminstallvnstat9. bwm-ngbwm-ng(下一代带宽监控器)是另一款非常简单的实时网络负载监控工具,可以报告摘要信息,显示进出系统上所有可用网络接口的不同数据的传输速度。1. $bwm-ng2. bwm-ngv0.6(probingevery0.500s),presshforhelp3. input:/proc/net/devtype:rate4. /ifaceRxTxT5. ot=6. =eth0:0.53KB/s1.31KB/s1.847. KBlo:0.00KB/s0.00KB/s0.008. KB-9. total:0.53KB/s1.31KB/s1.8410. KB/s如果控制台足够大,bwm-ng还能使用curses2输出模式,为流量绘制条形图。1. $bwm-ng-ocurses2安装bwm-ng:在CentOS上,可以从Epel来安装bwm-ng。1. #ubuntu或debian2. $sudoapt-getinstallbwm-ng3. #fedora或centos(来自epel)4. $sudoapt-getinstallbwm-ng10. cbm:Color Bandwidth Meter这是一款小巧简单的带宽监控工具,可以显示通过诸网络接口的流量大小。没有进一步的选项,仅仅实时显示和更新流量的统计信息。1. $sudoapt-getinstallcbm11. speedometer这是另一款小巧而简单的工具,仅仅绘制外观漂亮的图形,显示通过某个接口传输的入站流量和出站流量。1. $speedometer-reth0-teth0安装speedometer1. #ubuntu或debian用户2. $sudoapt-getinstallspeedometer12. pktstatpktstat可以实时显示所有活动连接,并显示哪些数据通过这些活动连接传输的速度。它还可以显示连接类型,比如TCP连接或UDP连接;如果涉及HTTP连接,还会显示关于HTTP请求的详细信息。1. $sudopktstat-ieth0-nt2. $sudoapt-getinstallpktstat13. netwatchnetwatch是netdiag工具库的一部分,它也可以显示本地主机与其他远程主机之间的连接,并显示哪些数据在每个连接上所传输的速度。1. $sudonetwatch-eeth0-nt2. $sudoapt-getinstallnetdiag14. trafshow与netwatch和pktstat一样,trafshow也可以报告当前活动连接、它们使用的协议以及每条连接上的数据传输速度。它能使用pcap类型过滤器,对连接进行过滤。只监控TCP连接1. $sudotrafshow-ieth0tcp2. $sudoapt-getinstallnetdiag15. netloadnetload命令只显示关于当前流量负载的一份简短报告,并显示自程序启动以来所传输的总字节量。没有更多的功能特性。它是netdiag的一部分。1. $netloadeth02. $sudoapt-getinstallnetdiag16. ifstatifstat能够以批处理式模式显示网络带宽。输出采用的一种格式便于用户使用其他程序或实用工具来记入日志和分析。1. $ifstat-t-ieth00.52. Timeeth03. HH:MM:SSKB/sinKB/sout4. 09:59:212.622.805. 09:59:222.101.786. 09:59:222.671.847. 09:59:232.061.988. 09:59:231.731.79安装ifstat:Ubuntu、Debian和Fedora用户在默认软件库里面就有它。CentOS用户则需要从Repoforge获得它,因为Epel里面没有它。1. #ubuntu,debian2. $sudoapt-getinstallifstat3. #fedora,centos(Repoforge)4. $sudoyuminstallifstat17. dstatdstat是一款用途广泛的工具(用python语言编写),它可以监控系统的不同统计信息,并使用批处理模式来报告,或者将相关数据记入到CSV或类似的文件。这个例子显示了如何使用dstat来报告网络带宽。安装dstat1. $dstat-nt2. -net/total-system-3. recvsend|time4. 00|23-0310:27:135. 1738B1810B|23-0310:27:146. 2937B2610B|23-0310:27:157. 2319B2232B|23-0310:27:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论