当前位置:首页 > Ubuntu > 正文

实时监控每个进程的网络使用情况(Ubuntu下使用nethogs命令详解)

在日常使用 Ubuntu 系统时,你是否曾遇到过网络突然变慢、带宽被占满却不知道是哪个程序在“偷跑”流量的情况?这时候,nethogs 这个强大的 Linux 网络监控工具就能派上大用场了。本文将手把手教你如何在 Ubuntu 上安装和使用 nethogs 命令,轻松实现进程流量分析,让你对系统中的每一个网络连接都了如指掌。

什么是 nethogs?

nethogs 是一个开源的、基于终端的Linux 网络工具,它能按进程(PID)实时显示网络流量使用情况。与 iftopnetstat 不同,nethogs 能精确到具体是哪个程序(比如 Chrome、wget、Docker 容器等)在占用上传或下载带宽,非常适合排查异常流量。

实时监控每个进程的网络使用情况(Ubuntu下使用nethogs命令详解) nethogs命令 Ubuntu网络监控 进程流量分析 Linux网络工具 第1张

第一步:在 Ubuntu 上安装 nethogs

打开终端(Ctrl + Alt + T),输入以下命令更新软件包列表并安装 nethogs:

sudo apt updatesudo apt install nethogs -y  

安装完成后,你可以通过以下命令验证是否安装成功:

nethogs --version  

第二步:基本使用方法

要运行 nethogs,通常需要 root 权限(因为它需要访问底层网络数据)。最简单的启动方式是:

sudo nethogs  

默认情况下,nethogs 会监控所有活动的网络接口(如 eth0、wlan0 等)。如果你只想监控特定网卡(例如无线网卡 wlan0),可以指定接口:

sudo nethogs wlan0  

第三步:理解输出信息

运行后,你会看到类似下面的界面(参考上方图片):

  • PID:进程 ID
  • USER:运行该进程的用户
  • PROGRAM:程序路径(如 /usr/bin/google-chrome)
  • DEV:使用的网络设备(如 wlan0)
  • SENT:上传速度(单位 KB/s)
  • RECEIVED:下载速度(单位 KB/s)

nethogs 默认按总流量排序,实时刷新(约每秒一次)。你可以按 q 键退出程序。

第四步:常用快捷键与高级选项

在 nethogs 运行过程中,你可以使用以下快捷键:

  • m:切换显示单位(KB/s ↔ MB/s)
  • r:按接收(下载)流量排序
  • s:按发送(上传)流量排序
  • q:退出程序

你也可以在启动时指定刷新间隔(单位:秒):

sudo nethogs -t 2 wlan0   # 每2秒刷新一次  

常见问题与注意事项

- 如果提示 “Permission denied”,请确保使用 sudo 执行命令。
- 某些容器化应用(如 Docker)可能显示为未知进程,此时可结合 ps 命令通过 PID 查找具体服务。
- nethogs 无法监控本地回环(lo)接口的流量,这是设计限制。

总结

通过本教程,你应该已经掌握了如何在 Ubuntu 系统中使用 nethogs 命令 进行精准的进程流量分析。无论是排查网络卡顿、识别恶意软件,还是优化带宽使用,这个轻量级的Linux 网络工具都能成为你的得力助手。赶快在终端中试试吧!

关键词:nethogs命令、Ubuntu网络监控、进程流量分析、Linux网络工具