Linux如何查看实时入网带宽使用情况?

在Linux系统中,监控入网带宽(即网络接口的接收带宽,RX)是系统管理和网络排查的重要任务,通过查看入网带宽,可以了解网络流量使用情况、识别异常流量、优化网络配置等,本文将详细介绍Linux系统中查看入网带宽的多种方法,涵盖命令行工具、图形化工具及历史统计工具,帮助用户根据实际需求选择合适的监控方式。

linux如何查看入网带客

实时监控入网带宽的命令行工具

实时监控工具能够动态展示当前网络接口的接收速率、流量数据等,适用于短期流量分析和故障排查,以下是常用的实时监控工具:

iftop:按连接显示实时带宽

iftop是一款基于终端的带宽监控工具,以列表形式显示各个连接的实时接收(RX)和发送(TX)带宽,并支持按带宽大小排序、显示源/目标IP及端口等信息。

  • 安装方法(以Ubuntu/Debian为例):

    sudo apt install iftop
  • 使用示例

    iftop -i eth0  # 指定监控eth0接口,默认显示所有连接
    • 常用参数
      • -n:不解析主机名,直接显示IP地址;
      • -N:不解析端口号;
      • -t:不显示界面顶部的流量条,适合日志输出;
      • -P:显示端口信息。
  • 输出说明
    界面顶部显示“total send”和“total receive”的实时带宽,中间列表按连接排序,=>表示发送,<=表示接收,右侧数值为当前带宽(单位为kb/s或Mb/s)。

nethogs:按进程显示带宽占用

nethogs以进程为单位监控带宽使用情况,能够快速定位占用大量入网带宽的进程,适合排查恶意程序或异常应用。

  • 安装方法

    sudo apt install nethogs  # Ubuntu/Debian
    sudo yum install nethogs  # CentOS/RHEL
  • 使用示例

    nethogs -d 5  # 每5秒刷新一次,默认监控所有接口
    nethogs -i eth0  # 指定监控eth0接口
    • 常用参数
      • -d:刷新间隔(秒);
      • -t:跟踪模式,显示TCP连接;
      • -p:避免混淆PID和端口。
  • 输出说明
    显示进程名(PID)、当前接收(RX)和发送(TX)带宽,若某进程占用大量入网带宽,可结合pstop进一步分析。

bmon:带图形化界面的带宽监控

bmon(Bandwidth Monitor)是一款灵活的带宽监控工具,支持实时图表和文本输出,可自定义显示内容(如流量、累计数据、错误包等)。

  • 安装方法

    sudo apt install bmon
  • 使用示例

    linux如何查看入网带客

    bmon -r eth0  # 监控eth0接口的接收流量(-r表示接收)
    • 常用参数
      • -p:显示端口统计;
      • -u:使用单位(如kb、Mb、Gb);
      • -o "ascii:detail":指定输出格式为详细文本模式。
  • 输出说明
    默认界面分为两部分:左侧为实时流量柱状图(蓝色表示接收,红色表示发送),右侧为详细统计信息(如总接收字节数、当前速率等)。

iptraf-ng:综合性网络监控工具

iptraf-ngiptraf的升级版,提供图形化界面,支持监控接口流量、TCP/UDP连接、IP流量分布等,功能全面。

  • 安装方法

    sudo apt install iptraf-ng
  • 使用示例

    sudo iptraf-ng -i eth0  # 以root权限启动,选择"Interface"监控eth0
    • 操作步骤
      启动后选择“Interface statistics”,指定接口即可查看实时接收/发送带宽、包数、错误率等信息。

历史统计与长期带宽监控工具

实时监控无法保留历史数据,若需分析长期带宽趋势(如日/周/月流量统计),需使用历史记录工具:

vnstat:基于数据库的流量统计

vnstat通过记录网络接口的流量数据,生成历史统计报告,支持按天、周、月显示,适合长期带宽趋势分析。

  • 安装方法

    sudo apt install vnstat
  • 使用示例

    vnstat -i eth0  # 显示eth0的实时流量(默认显示当天)
    vnstat -d -i eth0  # 显示每日统计(过去几天)
    vnstat -w -i eth0  # 显示每周统计
    vnstat -m -i eth0  # 显示每月统计
    • 常用参数
      • -l:实时流量模式(类似iftop);
      • -h:显示小时统计;
      • -tr:显示接收速率(RX rate)。
  • 数据存储
    vnstat默认将数据存储在/var/lib/vnstat/目录下,可通过vnstat --dbdir指定自定义路径。

sar:系统活动报告工具

sar(System Activity Reporter)是sysstat包的一部分,可收集并报告系统历史数据,包括网络接口的接收/发送速率、包数等。

  • 安装方法

    sudo apt install sysstat  # Ubuntu/Debian
    sudo yum install sysstat  # CentOS/RHEL
  • 使用示例

    linux如何查看入网带客

    sar -n DEV 1 5  # 每秒更新一次,共5次,显示所有网络设备统计
    sar -n DEV -s 10:00:00 -e 12:00:00  # 查看指定时间段的网络流量
    • 输出说明
      rxpck/s(接收包数/秒)、rxkB/s(接收千字节/秒)、rxcmp/s(接收压缩包数/秒)等指标,其中rxkB/s直接反映入网带宽。

ip命令:查看接口累计流量

Linux原生ip命令可查看网络接口的统计信息,包括接收(RX)和发送(TX)的总字节数、包数、错误数等,适合快速检查接口流量。

  • 使用示例
    ip -s link show eth0  # 显示eth0的详细统计信息
    • 输出说明
      RX部分,bytes表示总接收字节数,packets表示总接收包数,errors表示接收错误数,通过bytes可计算时间段内的平均带宽。

图形化网络监控工具

对于习惯图形界面的用户,以下工具可直观展示入网带宽:

gnome-system-monitor(GNOME环境)

GNOME自带的系统监控器,包含“网络”标签页,实时显示各接口的接收/发送速率,支持图表化展示。

  • 使用方法
    启动gnome-system-monitor,切换到“网络”选项卡,即可查看当前网络带宽使用情况。

ksysguard(KDE环境)

KDE桌面环境的系统监控工具,支持自定义监控面板,可添加网络流量图表,实时显示入网带宽。

  • 使用方法
    启动ksysguard,在“传感器”中搜索“网络”相关传感器,拖拽至面板即可监控。

常用带宽监控工具对比

以下表格总结了上述工具的特点及适用场景:

工具名称 主要用途 安装命令(Ubuntu/Debian) 关键参数/特点 适用场景
iftop 按连接实时监控带宽 sudo apt install iftop -i指定接口,-n不解析主机名 短期流量分析、连接排查
nethogs 按进程监控带宽占用 sudo apt install nethogs -d刷新间隔,-i指定接口 异常进程定位
bmon 图形化/文本实时监控 sudo apt install bmon -r接收流量,-o自定义输出格式 可视化实时监控
iptraf-ng 综合网络监控(接口/协议) sudo apt install iptraf-ng 图形化界面,支持TCP/UDP统计 全面网络分析
vnstat 历史流量统计 sudo apt install vnstat -d/-w/-m按天/周/月统计 长期带宽趋势分析
sar 系统历史数据报告 sudo apt install sysstat -n DEV查看网络统计,支持时间范围查询 企业级历史数据审计
ip 接口累计流量查看 内置命令 -s link show显示详细统计 快速检查接口流量

Linux查看入网带宽的工具丰富多样,可根据需求选择:

  • 实时监控:优先使用iftop(连接级)、nethogs(进程级)或bmon(可视化);
  • 历史统计vnstat适合长期趋势,sar适合企业级数据审计;
  • 图形化界面:GNOME的gnome-system-monitor或KDE的ksysguard适合桌面用户。

通过合理搭配这些工具,可全面掌握网络带宽使用情况,及时发现并解决网络问题。

相关问答FAQs

Q1: 如何查看特定进程的入网带宽占用?

A: 使用nethogs工具可按进程监控带宽占用,执行sudo nethogs -i eth0,在输出结果中查看“PID”和“RX”列,即可定位占用入网带宽的具体进程,若需进一步分析,可结合ps -ef | grep <PID>查看进程详细信息。

Q2: 如何设置带宽告警,当入网带宽超过阈值时通知管理员?

A: 可结合vnstatbc计算实时带宽,通过mailcurl发送告警,编写脚本check_bandwidth.sh

#!/bin/bash
INTERFACE="eth0"
THRESHOLD_MB=100  # 阈值100MB/s
vnstat -l -i $INTERFACE | grep "rx" | awk '{print $3}' | sed 's/Mb//' > /tmp/rx_rate
current_rate=$(cat /tmp/rx_rate)
if (( $(echo "$current_rate > $THRESHOLD_MB" | bc -l) )); then
    echo "入网带宽超过阈值: ${current_rate}Mb/s" | mail -s "带宽告警" admin@example.com
fi

将脚本加入cron定时任务(如每分钟执行一次),即可实现带宽超限告警。

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

(0)
酷番叔酷番叔
上一篇 2025年10月7日 13:17
下一篇 2025年10月7日 13:39

相关推荐

  • MacBook Air如何安装Linux系统?

    在Apple MacBook Air上安装Linux系统是一个需要谨慎操作的过程,尤其因其硬件架构(Intel或Apple Silicon M系列)的不同,安装方法和注意事项存在差异,本文将详细分步骤说明不同架构MacBook Air的Linux安装流程、准备工作及常见问题解决,帮助用户顺利完成系统部署,安装前……

    2025年9月11日
    4800
  • Linux系统如何查看守护进程的运行状态?具体步骤和命令有哪些?

    在Linux系统中,守护进程(Daemon)是后台运行的特殊进程,通常独立于终端,负责提供系统服务或执行周期性任务,如systemd、nginx、sshd等,查看守护进程的状态、运行情况是系统管理和故障排查的基础操作,本文将详细介绍Linux下查看守护进程的多种方法及相关命令的使用技巧,使用ps命令查看守护进程……

    2025年8月29日
    5800
  • Linux卸载JDK 1.7如何避免误删其他Java环境?

    确认已安装的JDK版本打开终端(Ctrl+Alt+T),运行命令检查当前Java版本:java -version若输出包含 7.0(如 java version “1.7.0_80″),则JDK 1.7已安装,定位JDK安装路径:sudo update-alternatives –config java记录J……

    2025年7月5日
    5700
  • Linux日志滚动如何避免磁盘空间耗尽?

    查看日志滚动的配置日志滚动由 logrotate 工具管理,配置文件位于:主配置文件cat /etc/logrotate.conf此文件定义全局设置(如日志保存周期、压缩选项),关键参数:weekly:每周滚动一次rotate 4:保留最近4份归档日志compress:启用gzip压缩旧日志服务专属配置各服务的……

    2025年6月16日
    7800
  • linux 如何启动perf

    Linux中,启动perf可以使用命令sudo perf,或者指定

    2025年8月10日
    4800

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信