linux如何查看带宽占用

Linux中,可以使用iftopnloadbmon等命令

Linux系统中,查看带宽占用是网络管理和性能优化的重要任务之一,以下是几种常用的方法和工具,帮助你详细监控和分析带宽使用情况。

使用 iftop 工具

iftop 是一个实时显示网络带宽使用情况的工具,类似于Windows系统中的Task Manager,但功能更为强大。

安装 iftop

sudo apt-get install iftop  # 对于Debian/Ubuntu系统
sudo yum install iftop      # 对于CentOS/RHEL系统

使用方法:

sudo iftop

界面说明:

  • TX:发送流量
  • RX:接收流量
  • Cumm:累计流量
  • Rates:当前速率
  • Sum:总和

iftop 会实时显示网络接口的流量情况,包括哪些IP地址正在占用带宽,以及每个连接的上传和下载速度。

使用 nload 工具

nload 是一个简单的网络流量监控工具,可以实时显示网络接口的带宽使用情况。

安装 nload

sudo apt-get install nload  # 对于Debian/Ubuntu系统
sudo yum install nload      # 对于CentOS/RHEL系统

使用方法:

sudo nload

界面说明:

  • Incoming:下载流量
  • Outgoing:上传流量
  • Total:总流量
  • Current:当前速率
  • Max:最大速率
  • Average:平均速率

nload 提供了一个直观的图形界面,可以快速了解网络接口的带宽使用情况。

使用 vnstat 工具

vnstat 是一个网络流量监控工具,可以记录和显示网络接口的流量统计信息。

安装 vnstat

sudo apt-get install vnstat  # 对于Debian/Ubuntu系统
sudo yum install vnstat      # 对于CentOS/RHEL系统

启动 vnstat 服务:

sudo systemctl start vnstat
sudo systemctl enable vnstat

查看流量统计信息:

vnstat -l  # 实时显示流量
vnstat -h  # 查看每小时流量统计
vnstat -d  # 查看每天流量统计
vnstat -w  # 查看每周流量统计
vnstat -m  # 查看每月流量统计

界面说明:

  • rx:接收流量
  • tx:发送流量
  • max:最大流量
  • avg:平均流量
  • cur:当前流量

vnstat 提供了详细的流量统计信息,适合长期监控和分析网络带宽使用情况。

使用 iptablesawk 脚本

如果你需要更详细的带宽使用情况,可以结合 iptablesawk 脚本来实现。

步骤:

  1. 创建一个新的链来记录流量:

     sudo iptables -N MY_CHAIN
     sudo iptables -A FORWARD -j MY_CHAIN
     sudo iptables -A MY_CHAIN -j RETURN
  2. 创建一个脚本来记录流量:

     sudo nano /usr/local/bin/bandwidth_monitor.sh

    在脚本中添加以下内容:

     #!/bin/bash
     while true; do
         sudo iptables -L MY_CHAIN -v -n --line-numbers | awk '/tcp/ {print $1, $3, $7, $8, $9}' >> /var/log/bandwidth.log
         sleep 1
     done

    保存并退出,然后赋予执行权限:

     sudo chmod +x /usr/local/bin/bandwidth_monitor.sh
  3. 启动脚本:

     sudo /usr/local/bin/bandwidth_monitor.sh &
  4. 查看日志文件:

     tail -f /var/log/bandwidth.log

使用 bmon 工具

bmon 是一个简单的带宽监控工具,可以实时显示网络接口的带宽使用情况。

安装 bmon

sudo apt-get install bmon  # 对于Debian/Ubuntu系统
sudo yum install bmon      # 对于CentOS/RHEL系统

使用方法:

sudo bmon

界面说明:

  • In:下载流量
  • Out:上传流量
  • Total:总流量
  • Rate:当前速率
  • Peak:峰值速率
  • Avg:平均速率

bmon 提供了一个简洁的图形界面,可以快速了解网络接口的带宽使用情况。

使用 nethogs 工具

nethogs 是一个按进程显示网络带宽使用情况的工具,可以帮助你了解哪些进程在占用带宽。

安装 nethogs

sudo apt-get install nethogs  # 对于Debian/Ubuntu系统
sudo yum install nethogs      # 对于CentOS/RHEL系统

使用方法:

sudo nethogs

界面说明:

  • PID:进程ID
  • Program:进程名称
  • Download:下载流量
  • Upload:上传流量
  • Total:总流量

nethogs 可以帮助你快速识别哪些进程在占用带宽,适合进行进程级别的带宽管理。

使用 sar 工具

sarsysstat 包中的一个工具,可以用于监控系统资源的使用情况,包括网络带宽。

安装 sysstat

sudo apt-get install sysstat  # 对于Debian/Ubuntu系统
sudo yum install sysstat      # 对于CentOS/RHEL系统

查看网络带宽使用情况:

sar -n DEV 1  # 每秒显示一次网络接口的带宽使用情况

界面说明:

  • IFACE:网络接口名称
  • rxpck/s:每秒接收的数据包数
  • txpck/s:每秒发送的数据包数
  • rxbyt/s:每秒接收的字节数(下载速度)
  • txbyt/s:每秒发送的字节数(上传速度)
  • rxcmp/s:每秒接收的压缩数据包数
  • txcmp/s:每秒发送的压缩数据包数
  • rxmcst/s:每秒接收的多播数据包数
  • %ifutil:接口利用率

sar 提供了详细的网络带宽使用情况,适合进行历史数据分析和性能调优。

使用 ip 命令查看网络接口状态

虽然 ip 命令不能直接显示带宽使用情况,但可以用来查看网络接口的状态和统计信息。

查看网络接口状态:

ip link show

查看网络接口统计信息:

ip -s link show

界面说明:

  • RX:接收统计信息(数据包数、字节数、错误数等)
  • TX:发送统计信息(数据包数、字节数、错误数等)

通过 ip 命令,你可以快速了解网络接口的基本状态和统计信息,但无法获取实时的带宽使用情况。

使用 collectl 工具

collectl 是一个性能监控工具,可以收集和显示系统的各种性能指标,包括网络带宽。

安装 collectl

sudo apt-get install collectl  # 对于Debian/Ubuntu系统
sudo yum install collectl      # 对于CentOS/RHEL系统

使用方法:

sudo collectl -sD -i eth0  # 监控eth0接口的下载速度
sudo collectl -sU -i eth0  # 监控eth0接口的上传速度

界面说明:

  • Time:时间戳
  • Value:当前速率或流量值
  • Min:最小值
  • Max:最大值
  • Avg:平均值
  • Cur:当前值

collectl 提供了灵活的性能监控功能,适合进行详细的带宽分析和调优。

使用 mtr 工具进行网络路径分析

mtr 是一个网络路径追踪工具,可以显示数据包从源到目的地的路径,并统计每个节点的延迟和丢包率,虽然 mtr 主要用于网络路径分析,但也可以间接帮助判断带宽问题。

安装 mtr

sudo apt-get install mtr  # 对于Debian/Ubuntu系统
sudo yum install mtr      # 对于CentOS/RHEL系统

使用方法:

mtr <目标IP或域名>

界面说明:

  • Host:节点名称和IP地址
  • Loss%:丢包率
  • Last, Avg, Best, Wrst:最近一次、平均、最好、最差延迟(ms)
  • Size:数据包大小(Bytes)
  • Opinion:总体评价(好的、一般的、差的)

mtr 可以帮助你分析网络路径中的瓶颈和问题,间接判断带宽是否受限。

使用 iptablesiptraf 进行详细分析

iptraf 是一个实时网络监控工具,可以详细显示网络接口的流量情况,包括各个连接的上传和下载速度。

安装 iptraf

sudo apt-get install iptraf  # 对于Debian/Ubuntu系统
sudo yum install iptraf      # 对于CentOS/RHEL系统

使用方法:

sudo iptraf

界面说明:

  • TCP/UDP:协议类型
  • Local Address:本地IP地址和端口号
  • Foreign Address:远程IP地址和端口号
  • Tot Packets:总数据包数
  • Tot Size:总字节数(流量)
  • Rate (bps):当前速率(比特/秒)
  • State:连接状态(ESTABLISHED、TIME_WAIT等)
  • Elapsed:连接持续时间(秒)
  • Activity:活动指示(->表示上传,<-表示下载,<->表示双向)
  • From:数据来源(Local或Remote)
  • To:数据去向(Local或Remote)
  • Priority:优先级(数值越小优先级越高)
  • Protocol Type:协议类型(TCP或UDP)
  • Service Name:服务名称(如HTTP、HTTPS等)

各位小伙伴们,我刚刚为大家分享了有关linux如何查看带宽占用的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!

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

(0)
酷番叔酷番叔
上一篇 2025年8月10日 15:51
下一篇 2025年8月10日 16:00

相关推荐

  • 给电脑安装Linux系统时,硬盘分区正确步骤和方法该如何操作?

    在给电脑安装Linux系统时,分区是关键步骤,合理的分区规划能提升系统稳定性和后续管理效率,以下是详细操作流程及注意事项:安装前的准备工作分区前需完成基础准备,避免操作中断或数据丢失,备份重要数据:Linux安装过程中会修改硬盘分区表,若操作不当可能导致原有数据丢失,建议提前将C盘、D盘等重要文件备份至移动硬盘……

    2025年8月21日
    29800
  • Linux内核模块加载的具体步骤与命令是什么?

    Linux内核模块(Kernel Module)是一种可动态加载和卸载的内核代码片段,它允许在不重启系统的情况下扩展内核功能,例如设备驱动程序、文件系统支持、网络协议等,模块机制是Linux保持内核精简性和灵活性的关键,将非核心功能以模块形式存储在磁盘上,按需加载到内核空间,从而节省内存并支持热插拔设备,下面详……

    2025年9月30日
    20700
  • Linux系统如何使用ping命令测试外网地址的连通性?

    在Linux系统中,ping命令是最基础的网络诊断工具之一,它基于ICMP(Internet Control Message Protocol,互联网控制报文协议)协议,通过向目标主机发送数据包并接收响应,来测试网络的连通性、延迟和丢包情况,当需要测试与外网地址的连通性时,ping命令是首选工具,但其使用方法和……

    2025年9月22日
    18600
  • 如何正确禁用SELinux?系统操作步骤、方法及注意事项

    SELinux(Security-Enhanced Linux)是美国国家安全局(NSA)主导开发的Linux安全模块,通过强制访问控制(MAC)机制为系统提供更高的安全性,它通过定义严格的策略规则,限制进程、文件、网络端口等资源的访问权限,有效降低系统被攻击的风险,在某些场景下,如软件兼容性问题、调试需求或特……

    2025年9月25日
    16800
  • 如何在Linux里创建可执行脚本?

    在Linux操作系统中,脚本是一种强大的工具,能够将一系列命令组合起来,通过自动化执行简化重复性任务,提高工作效率,无论是系统管理、文件处理还是定时任务,脚本都能发挥重要作用,本文将详细介绍在Linux中创建脚本的完整流程,从基础概念到实际应用,帮助读者掌握脚本编写技能,理解Linux脚本的基础Linux脚本通……

    2025年9月29日
    16800

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信