溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下如何安裝和使用NetHogs

發布時間:2022-02-18 11:29:22 來源:億速云 閱讀:502 作者:小新 欄目:開發技術
# Linux下如何安裝和使用NetHogs

## 1. NetHogs簡介

NetHogs是一個開源的命令行網絡監控工具,由Arnout Engelen開發。與傳統的網絡監控工具(如iftop或nethogs)不同,NetHogs的特色在于**按進程分組顯示網絡帶寬占用**,能直觀定位消耗大量流量的具體應用程序。

### 核心特點
- **進程級監控**:直接顯示每個進程的上傳/下載速率
- **實時刷新**:默認每秒更新數據(可自定義間隔)
- **無需root權限**:普通用戶即可運行(部分場景可能需要sudo)
- **輕量級**:不依賴內核模塊,資源占用低

## 2. 安裝NetHogs

### 2.1 主流Linux發行版安裝

#### Ubuntu/Debian
```bash
sudo apt update
sudo apt install nethogs -y

CentOS/RHEL

sudo yum install epel-release  # 先啟用EPEL倉庫
sudo yum install nethogs

Arch Linux

sudo pacman -S nethogs

Fedora

sudo dnf install nethogs

2.2 源碼編譯安裝(最新版)

# 安裝依賴
sudo apt install build-essential libncurses5-dev libpcap-dev

# 下載源碼
wget https://github.com/raboof/nethogs/archive/refs/tags/v0.8.7.tar.gz
tar -xzvf v0.8.7.tar.gz
cd nethogs-0.8.7/

# 編譯安裝
make && sudo make install

3. 基本使用方法

3.1 啟動監控

sudo nethogs [網卡名稱]

不指定網卡時自動檢測活動網卡(通常為eth0或wlan0)

3.2 監控指定網卡

sudo nethogs eth1  # 監控eth1網卡

3.3 常用快捷鍵

快捷鍵 功能
s 按發送流量排序
r 按接收流量排序
m 切換顯示單位(KB/MB)
q 退出程序

4. 高級使用技巧

4.1 自定義刷新間隔

sudo nethogs -t 5  # 每5秒刷新一次

4.2 監控特定進程

sudo nethogs -p sshd  # 只監控sshd相關進程

4.3 輸出到文件

sudo nethogs -d 10 -c 5 > traffic.log  # 每10秒采樣一次,共5次

4.4 追蹤TCP/UDP連接

sudo nethogs -v 3  # 顯示詳細連接信息

5. 實際應用場景

場景1:排查異常流量

$ sudo nethogs
PID   USER    PROGRAM              DEV        SENT      RECEIVED
1234  www-data /usr/bin/apache2    eth0      12.453KB  12.453KB
5678  mysql   /usr/sbin/mysqld     eth0      5.231KB   0.000KB

場景2:監控Docker容器

# 先找到容器對應的網卡
docker network ls
sudo nethogs br-3a1b5c6d7e8f

場景3:定時監控(配合cron)

# 添加cron任務(每小時監控5分鐘)
*/5 * * * * /usr/sbin/nethogs -d 60 -c 5 >> /var/log/nethogs.log

6. 輸出結果解讀

示例輸出:

PID    USER     PROGRAM               DEV        SENT      RECEIVED       
1234   bob      firefox               wlp3s0     23.4KB/s  145.2KB/s
5678   root     /usr/lib/snapd/snapd  eth0       0.0KB/s   12.3KB/s

字段說明: - PID:進程ID - USER:運行進程的用戶 - PROGRAM:進程名稱或命令行 - DEV:使用的網絡接口 - SENT:上傳速率 - RECEIVED:下載速率

7. 常見問題解決

問題1:無數據顯示

# 檢查網卡名稱是否正確
ip addr show
# 確保有網絡活動
ping -c 3 google.com

問題2:無法識別進程名

# 使用-p參數顯示完整命令行
sudo nethogs -p

問題3:權限不足錯誤

# 臨時提升權限
sudo setcap "cap_net_admin,cap_net_raw+pe" /usr/sbin/nethogs

8. 替代工具對比

工具 特點 適用場景
NetHogs 進程級監控,簡單直觀 快速定位問題進程
iftop 按連接/IP監控,功能更全面 分析具體網絡連接
nload 顯示總體帶寬使用 查看總流量趨勢
bmon 支持多種輸出格式 需要生成報告的場景

9. 安全注意事項

  1. 敏感信息暴露:NetHogs可能顯示包含敏感參數的完整命令行
  2. 監控權限:生產環境中建議限制普通用戶訪問
  3. 日志存儲:長期監控日志需注意隱私合規要求

10. 總結

NetHogs作為輕量級的實時網絡監控工具,特別適合以下場景: - 快速定位異常流量進程 - 排查服務器帶寬占用問題 - 監控特定應用程序的網絡行為

通過本文介紹的基礎安裝、常用命令和實戰技巧,讀者可以快速掌握這個實用工具。建議結合其他監控工具(如iftop、vnstat)構建完整的網絡監控方案。

附:最新版本獲取地址
GitHub倉庫:https://github.com/raboof/nethogs
官方文檔:https://manpages.debian.org/testing/nethogs/nethogs.8.en.html “`

注:本文實際約1250字,包含代碼塊、表格、多級標題等Markdown元素,可直接用于技術文檔發布。如需調整內容長度或細節,可進一步修改。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女