Linux 中,可使用
nload、ifstat等命令查看带宽
使用ifconfig或ip命令查看网络接口信息
ifconfig和ip是Linux中常用的网络接口配置和查看工具,虽然它们不能直接显示带宽占用情况,但可以提供网络接口的流量统计信息。
使用ifconfig
ifconfig
输出示例:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::20c:29ff:fe8c:e941 prefixlen 64 scopeid 0x20<link>
ether 08:0c:29:8c:e9:41 txqueuelen 1000 (Ethernet)
RX packets 123456 bytes 12345678 (12.3 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 654321 bytes 65432100 (65.4 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
RX packets和RX bytes表示接收的数据包数量和字节数。TX packets和TX bytes表示发送的数据包数量和字节数。
使用ip
ip -s link
输出示例:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 08:0c:29:8c:e9:41 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overruns mcast
12345678 123456 0 0 0 0
TX: bytes packets errors dropped carrier collsns
65432100 654321 0 0 0 0
RX bytes和TX bytes分别表示接收和发送的字节数。
使用vnstat工具查看历史流量
vnstat是一个用于收集和查看网络流量统计信息的工具,特别适合查看历史带宽使用情况。
安装vnstat
sudo apt-get install vnstat # Debian/Ubuntu sudo yum install vnstat # CentOS/RHEL
查看实时流量
vnstat -l
输出示例:
rxbytes txpktst rxpktst txbytes total
123456 12345 65432 654321 777777
rxbytes:接收的字节数。txbytes:发送的字节数。total:总流量(接收 + 发送)。
查看每日流量统计
vnstat -d
输出示例:
------------------------------------------------------------------
Date Traffic Estimated traffic for today: x.x Mbit/s
rxKB/s txKB/s totalKB/s avg rxKB/s avg txKB/s
------------------------------------------------------------------
Oct 01 123456 65432 188888 12345 6543
...
Today 12345 6543 18888
------------------------------------------------------------------
使用nload实时监控带宽
nload是一个基于终端的网络流量监控工具,可以实时显示带宽占用情况。
安装nload
sudo apt-get install nload # Debian/Ubuntu sudo yum install nload # CentOS/RHEL
使用nload
nload eth0
输出示例:
+--------------------------------------------------------------+
| |
| Receive: 1.23 Mbit/s |
| Transmit: 0.45 Mbit/s |
| |
| Total: 1.68 Mbit/s |
| |
| Max Receive: 2.34 Mbit/s |
| Max Transmit: 1.12 Mbit/s |
| |
+--------------------------------------------------------------+
Receive:当前接收带宽。Transmit:当前发送带宽。Total:总带宽(接收 + 发送)。Max Receive和Max Transmit:历史最大带宽。
使用bmon进行更详细的监控
bmon是一个功能强大的网络带宽监控工具,支持实时监控和历史数据分析。
安装bmon
sudo apt-get install bmon # Debian/Ubuntu sudo yum install bmon # CentOS/RHEL
使用bmon
bmon
输出示例:
--bmon version 3.0 ---
Interface: eth0 (192.168.1.100)
Time: 10:00:00 AM
Uptime: 1h 23m 45s
Incoming: 1.23 Mbit/s (123456 B/s)
Outgoing: 0.45 Mbit/s (45678 B/s)
Total: 1.68 Mbit/s (169134 B/s)
Graph:
[===========================>] 1.23 Mbit/s
Incoming:接收带宽。Outgoing:发送带宽。Total:总带宽。Graph:实时带宽使用图表。
使用sar查看历史网络统计
sar是sysstat工具包的一部分,可以查看系统的历史网络统计信息。
安装sysstat
sudo apt-get install sysstat # Debian/Ubuntu sudo yum install sysstat # CentOS/RHEL
查看网络统计信息
sar -n DEV 1 1
输出示例:
10:00:00 AM IFACE rxkb/s txkb/s rxpack/s txpack/s
10:00:01 AM eth0 1234.56 654.32 12345 6543
rxkb/s:每秒接收的千字节数。txkb/s:每秒发送的千字节数。rxpack/s:每秒接收的数据包数。txpack/s:每秒发送的数据包数。
使用iftop查看实时带宽占用
iftop是一个类似于top命令的工具,可以实时显示各个进程或主机的带宽占用情况。
安装iftop
sudo apt-get install iftop # Debian/Ubuntu sudo yum install iftop # CentOS/RHEL
使用iftop
sudo iftop -i eth0
输出示例:
TX: cumulative: 123456 bytes
RX: cumulative: 654321 bytes
Cumm: 123456 bytes, 654321 bytes
peak: 1234 kB/s, 654 kB/s at 10:00:00 AM
avg: 123 kB/s, 65 kB/s ^C
TX:发送的累计字节数。RX:接收的累计字节数。Cumm:当前累计字节数。Peak:历史峰值带宽。Avg:平均带宽。
小编总结对比
以下是常用工具的对比表:
| 工具 | 功能 | 实时监控 | 历史数据 | 安装命令 |
|---|---|---|---|---|
ifconfig |
查看网络接口信息 | 否 | 否 | apt-get install net-tools |
vnstat |
查看历史流量统计 | 否 | 是 | apt-get install vnstat |
nload |
实时网络流量监控 | 是 | 否 | apt-get install nload |
bmon |
实时和历史网络流量监控 | 是 | 是 | apt-get install bmon |
sar |
查看系统历史网络统计 | 否 | 是 | apt-get install sysstat |
iftop |
实时查看各进程或主机的带宽占用 | 是 | 否 | apt-get install iftop |
FAQs
Q1:如何查看某个特定时间段的带宽使用情况?
A1:可以使用vnstat或sar工具,使用vnstat -d查看每日流量统计,或使用sar -n DEV查看特定时间的网络统计信息。
Q2:如何监控某个特定进程的带宽占用?
A2:可以使用iftop工具,它能够实时显示各个进程或主机的带宽占用情况。
小伙伴们,上文介绍linux如何查看带宽占用情况的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/10382.html