Linux系统如何实时查看带宽使用情况?具体监控命令有哪些?

在Linux系统中,监控带宽使用情况是系统管理和网络故障排查的重要环节,无论是排查网络拥堵、优化服务性能,还是确保网络资源合理分配,都需要借助合适的工具和方法,本文将详细介绍Linux系统中查看带宽的多种方式,涵盖基础命令、实时监控工具、历史数据统计工具及性能测试工具,帮助用户根据不同场景选择合适的方案。

linux如何查看带宽

基础网络状态查看:通过系统命令快速了解流量

对于简单的带宽查看需求,Linux系统自带的网络命令即可满足,这类工具无需安装,适合快速获取网络接口的基本流量信息。

ifconfigip命令:查看接口收发字节数

ifconfig是传统的网络配置工具,虽然在新系统中逐渐被ip命令取代,但仍可用于查看网络接口的流量统计,通过ifconfig [接口名]命令,可以直观看到RX(接收)和TX(发送)的总字节数,

ifconfig eth0

输出中包含RX packets(接收包数)、RX bytes(接收字节数)、TX packets(发送包数)、TX bytes(发送字节数),但需注意,ifconfig显示的是累计值,无法直接反映实时带宽,需结合两次执行的时间差计算速率(如(当前TX bytes - 上次TX bytes) / 时间差)。

ip命令是iproute2工具包的核心命令,功能更全面,推荐使用,通过ip -s link show [接口名]可查看更详细的接口统计信息,包括字节数、错误数、丢包数等:

ip -s link show eth0

输出中的RXTX部分分别记录了接收和发送的总字节数、包数、多播包数等,适合基础流量统计。

netstat命令:查看网络连接与流量统计

netstat主要用于显示网络连接、路由表、接口统计等信息,通过-i参数可按接口显示网络流量统计:

netstat -i

输出包含接口名、接收包数(RX-OK)、接收错误(RX-ERR)、发送包数(TX-OK)、发送错误(TX-ERR)等,适合快速检查接口是否有异常错误包(错误包数过高可能表明网络问题)。

实时带宽监控工具:动态观察流量变化

若需实时监控带宽使用情况(如查看当前哪些进程占用带宽、流量峰值等),需使用专业的实时监控工具,这类工具能以动态刷新的方式展示网络速率。

iftop:按主机和端口监控流量

iftop是一款常用的实时带宽监控工具,可按主机、端口显示网络接口的实时流量,支持排序、显示流量峰值等功能,安装方式因发行版而异:

  • Ubuntu/Debian:sudo apt install iftop
  • CentOS/RHEL:sudo yum install iftop(需EPEL源)

使用时直接执行iftop -i [接口名](如iftop -i eth0),界面分为上下两部分:上半部分显示总流量、峰值流量、平均流量;下半部分显示每个主机的实时速率,=>表示发送流量,<=表示接收流量,右侧按流量大小排序,支持交互操作,如按n显示主机名/IP、按s按源端口排序、按d按目标端口排序等。

linux如何查看带宽

nethogs:按进程监控带宽

nethogs的优势在于能按进程显示带宽使用情况,快速定位占用带宽的进程(如下载工具、视频软件等),安装方式:

  • Ubuntu/Debian:sudo apt install nethogs
  • CentOS/RHEL:sudo yum install nethogs

执行nethogs -d [刷新秒数] [接口名](如nethogs -d 5 eth0),界面显示进程名(PID)、用户、接收速率(KB/s)、发送速率(KB/s)等信息,当某个进程占用带宽过高时,可直观看到其PID和名称,便于进一步操作(如终止进程)。

bmon:可视化带宽监控器

bmon(Bandwidth Monitor)提供图形化界面,支持多种视图(如条形图、曲线图),适合需要可视化展示的场景,安装:

  • Ubuntu/Debian:sudo apt install bmon
  • CentOS/RHEL:sudo yum install bmon

执行bmon -r [接口名](如bmon -r eth0),界面分为左侧统计信息、中间流量图形化展示、右侧端口列表,支持通过鼠标点击切换视图、过滤流量等操作,直观易用。

speedometer:简单的实时速率监控

speedometer是一款轻量级工具,仅显示当前接收和发送的实时速率,无需复杂参数,适合快速查看当前带宽占用,安装:

  • Ubuntu/Debian:sudo apt install speedometer
  • CentOS/RHEL:sudo yum install speedometer

执行speedometer -r [接收接口] -t [发送接口](如speedometer -r eth0 -t eth0),界面以动态条形图显示实时速率,单位默认为KB/s,简洁明了。

历史带宽统计工具:长期分析与趋势预测

若需分析历史带宽使用情况(如查看过去24小时、一周的流量趋势),需使用支持数据持久化的统计工具,这类工具将流量数据存储到数据库或文件中,便于后续生成报表。

vnstat:轻量级网络流量统计

vnstat通过后台守护进程定期收集网络接口流量数据,并存储在本地数据库中,支持查询历史流量、生成图表,安装:

  • Ubuntu/Debian:sudo apt install vnstat
  • CentOS/RHEL:sudo yum install vnstat

初始化数据库(需指定接口):sudo vnstat -u -i eth0
查询当前流量:vnstat -i eth0
查询过去5天的日均流量:vnstat -i eth0 -d
查询过去3小时的每小时流量:vnstat -i eth0 -h
生成HTML报告:vnstat -i eth0 -g(需安装vnstat-php

vnstat的优势是资源占用低,适合长期监控,但需注意数据库文件(默认在/var/lib/vnstat/)需定期备份,防止数据丢失。

linux如何查看带宽

collectdrrdtool:企业级流量监控

collectd是系统性能数据收集守护进程,支持通过插件(如interface插件)收集网络流量数据,结合rrdtool(Round Robin Database Tool)存储数据并生成图表,适合企业级监控,配置步骤较复杂,需修改collectd配置文件(/etc/collectd/collectd.conf),启用interface插件并指定接口,然后通过rrdtool查询数据或结合前端工具(如CactiGraphite)展示图表。

sar:系统活动报告工具

sarsysstat工具包的一部分,可收集并报告系统活动(包括网络流量)的历史数据,安装sysstatsudo apt install sysstat(Ubuntu)或sudo yum install sysstat(CentOS),启用数据收集:确保/etc/default/sysstatENABLED="true",查询历史网络流量:sar -n DEV [日期](如sar -n DEV 20231001)或实时监控:sar -n DEV 1 5(每秒收集一次,共5次),输出中rxkB/stxkB/s分别表示接收和发送速率(KB/s)。

网络性能测试工具:评估最大带宽

若需测试网络的最大带宽(如服务器间传输速率、公网下载速度),需使用性能测试工具,这类工具通过模拟大量数据传输来评估网络性能。

iperf3:网络性能测试标准工具

iperf3支持TCP和UDP协议测试,可测量带宽、延迟、丢包率等参数,服务端执行:iperf3 -s
客户端执行(测试与服务器的带宽):iperf3 -c <服务器IP>
指定测试时间(如10秒):iperf3 -c <服务器IP> -t 10
测试反向带宽(服务端发送、客户端接收):iperf3 -c <服务器IP> -R
测试UDP带宽(需指定带宽):iperf3 -c <服务器IP> -u -b 100M

iperf3输出包含带宽(bps)、重传率(TCP)、抖动(UDP)等关键指标,适合评估网络实际传输能力。

netperf:多协议性能测试

netperf支持TCP、UDP、SCTP等多种协议,测试场景更丰富(如本地CPU开销、多并发连接),服务端执行:netserver
客户端执行(TCP_STREAM测试):netperf -H <服务器IP> -t TCP_STREAM
测试UDP_RR(请求响应延迟):netperf -H <服务器IP> -t UDP_RR

工具对比与选择建议

为方便用户选择,以下表格总结常用工具的特点及适用场景:

工具名称 主要功能 适用场景 安装命令(Ubuntu/Debian)
ifconfig/ip 查看接口累计字节数 基础流量统计,快速检查 内置命令,无需安装
iftop 实时按主机/端口监控流量 实时流量分析,定位异常主机 sudo apt install iftop
nethogs 按进程监控带宽 定位占用带宽的进程 sudo apt install nethogs
vnstat 历史流量统计,生成图表 长期监控,趋势分析 sudo apt install vnstat
iperf3 测试网络最大带宽 性能测试,评估传输能力 sudo apt install iperf3

相关问答FAQs

Q1:iftop显示的“peak”和“average”带宽分别代表什么?如何理解实际带宽使用情况?
A:iftop中的“peak”指监控周期内的瞬时峰值带宽(最高发送/接收速率),“average”指监控周期内的平均带宽(总流量/时间),实际带宽使用需结合两者:若峰值远高于平均,说明存在突发流量(如下载任务启动瞬间);若平均带宽持续接近带宽上限,可能需要升级带宽或优化网络配置。“=>”和“<=”分别表示当前接口的发送和接收速率,若某方向速率长期为0,需检查对应网络服务是否正常。

Q2:如何使用vnstat查看过去一周内每天的带宽使用情况,并生成图表?
A:使用vnstat查看过去一周的日均流量,执行命令:vnstat -i eth0 -w-w表示按周显示),若需生成图表,需先安装vnstat-phpsudo apt install vnstat-php),然后执行vnstat -i eth0 -g-g生成HTML图表),图表文件默认保存在/var/www/html/(需确保Web服务已配置),浏览器访问http://服务器IP/vnstat/即可查看,图表包含每日收发流量曲线,便于直观分析趋势。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/14965.html

(0)
酷番叔酷番叔
上一篇 2025年8月23日 03:51
下一篇 2025年8月23日 04:11

相关推荐

  • Linux远程连接有哪些Y路方法?新手如何快速实现?

    Linux系统作为服务器和开发环境的主流选择,远程访问是其核心功能之一,无论是运维管理、开发调试还是文件传输,都离不开高效的远程操作方式,本文将详细介绍Linux系统中常用的远程访问方法,包括基于命令行的SSH远程登录、图形化的远程桌面方案以及文件传输工具,并辅以配置示例和对比表格,帮助用户根据实际需求选择合适……

    2025年10月4日
    3500
  • 如何正确安装深度linux系统的详细步骤与方法有哪些?

    安装深度Linux(Deepin)是一个相对简单的过程,但为了确保顺利完成,需要提前做好准备工作并严格按照步骤操作,以下是详细的安装指南,涵盖从前期准备到安装完成的全流程,安装前的准备工作硬件检查确保电脑满足深度Linux的最低系统要求:CPU为x86架构(64位),内存至少4GB(推荐8GB以上),硬盘空间至……

    2025年8月23日
    5300
  • Linux vi编辑器如何保存文件?

    在Linux系统中,vi(或其增强版vim)是常用的文本编辑器,掌握保存文件的操作是基础技能,vi有三种主要模式:普通模式(默认)、插入模式和命令行模式,保存操作主要在命令行模式下执行,需先从普通模式进入命令行模式(按键),以下是详细的保存方法及场景说明,基础保存命令保存但不退出(w)在普通模式下按进入命令行模……

    2025年9月27日
    4800
  • Linux7.3系统如何重置root密码?

    在Linux 7.3系统中(通常指基于RHEL 7.3的发行版,如CentOS 7.3),若忘记root密码或用户密码,可通过引导进入紧急模式或单用户模式重置密码,操作需物理访问服务器或控制台权限,具体步骤如下:重置密码操作步骤进入GRUB引导菜单重启服务器,在开机自检阶段(显示厂商LOGO时)迅速按下Shif……

    2025年9月18日
    4700
  • 如何查看linux用户密码

    在Linux系统中,用户密码的安全性是通过加密存储和严格的权限机制保障的,直接查看明文密码的操作是被禁止的,因为密码以哈希值形式存储在/etc/shadow文件中,该文件仅对root用户可读,且记录了密码的加密算法、过期时间等敏感信息,理解密码的存储机制和合法的密码管理方法,是系统管理员必备的技能,密码的存储位……

    2025年9月13日
    4400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信