nload 是一个控制台应用程序,用于实时监控网络流量和带宽使用情况。它以图形化的方式显示进入和离开系统的网络流量,支持多个网络接口的监控。
在大多数 Linux 发行版中,可以通过包管理器安装:
sudo apt-get install nload
# 启用EPEL仓库
sudo yum install epel-release
sudo yum install nload
# CentOS 8+使用dnf
sudo dnf install epel-release
sudo dnf install nload
sudo dnf install nload
sudo pacman -S nload
nload [选项] [设备]
| 选项 | 说明 |
|---|---|
-a |
设置平均值的时间周期(秒) |
-i |
设置入站流量的最大值比例 |
-o |
设置出站流量的最大值比例 |
-m |
不显示流量图,只显示数字 |
-t |
更新间隔时间(毫秒),默认500ms |
-u |
设置显示单位(h=自动,b=Bit/s,k=KBit/s,m=MBit/s,g=GBit/s) |
-U |
设置流量单位(同上) |
-devices |
显示可用设备列表 |
-h |
显示帮助信息 |
-V |
显示版本信息 |
# 监控所有网络接口
nload
# 监控指定网卡(如eth0)
nload eth0
运行后会显示一个实时监控界面,包含以下信息:
# 监控eth0和eth1
nload eth0 eth1
# 使用设备名称(按设备列表中的名称)
nload device1 device2
按左右方向键可以在不同设备间切换。
# 以KB/s为单位显示
nload -u k
# 以MB/s为单位显示
nload -u m
# 自动选择合适的单位
nload -u h
# 设置刷新间隔为1秒
nload -t 1000
# 设置刷新间隔为2秒
nload -t 2000
# 不显示图形,只显示数字
nload -m
# 设置平均值为30秒
nload -a 30
nload界面通常包含以下部分:
| 按键 | 功能 |
|---|---|
← → |
切换监控的设备 |
F2 |
显示选项窗口 |
F5 |
重置最小/最大值 |
F6 |
切换视图模式(经典/数字) |
q 或 Ctrl+C |
退出nload |
u |
循环切换流量单位 |
nload --devices
这会列出系统上所有可用的网络接口。
结合其他命令进行日志记录:
# 监控5分钟后退出并记录
timeout 300 nload -m eth0 > network_log.txt
# 或使用tee同时显示和记录
nload -m eth0 2>&1 | tee network_traffic.log
nload本身不支持端口监控,但可以结合iftop使用:
# 使用iftop监控特定端口,nload监控总体流量
# 在一个终端运行
nload eth0
# 在另一个终端运行
sudo iftop -i eth0 -f "port 80"
# 设置自定义的入站/出站流量比例
nload -i 100000 -o 100000 eth0
| 工具 | 特点 | 适用场景 |
|---|---|---|
| nload | 图形化显示,简单直观,专注于带宽使用率 | 快速查看网络带宽使用情况 |
| iftop | 显示具体连接信息,可看到IP和端口 | 分析具体连接和流量来源 |
| nethogs | 按进程分组显示流量 | 找出哪个进程占用带宽 |
| bmon | 功能丰富,支持多种输出格式 | 高级网络监控和统计 |
| vnstat | 长期流量统计,基于日志 | 历史流量分析和报告 |
A: 可能是网卡名称错误或网卡不存在。使用以下命令检查:
ip link show
# 或
ifconfig -a
A: 无线网卡通常是wlan0或wlp开头,例如:
nload wlan0
# 或使用通配符
nload wl*
A: 可以使用-u选项调整单位:
# 对于千兆网络,使用MB/s单位
nload -u m eth0
A: nload默认会自动适应终端大小,如果显示不正常,可以尝试调整终端窗口大小或重新启动nload。