Recording Network Traffic in Linux by atop


如果懶得裝一些有的沒的監控軟體來看自己的流量,可以用這個簡單好用的軟體 - atop

安裝 atop

一般除了可以使用 sudo iftop -P 來看流量以外,還可以用 atop 來錄製系統一整天的流量細節,安裝非常簡單,可以直接參考 AWS 提供的公開文件:How do I configure the ATOP and SAR monitoring tools for my EC2 instance running Amazon Linux, RHEL, CentOS, or Ubuntu?

安裝 netatop

想要啟用網路流量的功能,必須額外安裝一個 Kernel Module — netatop,需要自行透過 Linux Headers 進行編譯,編譯後他會幫你安裝 Systemd 的 Service ,需要啟動他才能讓 atop 錄製流量,安裝步驟可以參考官方文件:Installation netatop and netatopd 、或是我的步驟:

wget https://www.atoptool.nl/download/netatop-3.1.tar.gz  
tar -xvf netatop-3.1.tar.gz
cd netatop-3.1
sudo make && sudo make install
sudo systemctl start netatop
sudo systemctl enable netatop

使用起來也不難,只要用下面的指令就可以讀取之前的紀錄了:

sudo atop -n -r /var/log/atop/atop_YYYYMMDD

Debug

缺套件

如果發生缺套件的話,依照下面的方式補齊,這邊以 CentOS 為範例:

sudo yum install kernel-devel zlib-devel kernel-headers
sudo yum groupinstall 'Development Tools' 

Linux Kernel Headers 版本錯誤

如果出現 /lib/modules/<version>/build/ not exist 類似訊息的話,可以檢查你目前開機的 Kernel 版本是否和你已經安裝的 Kernel Headers 版本相同,可以使用 uname -a 確認現在開機的核心是否符合目前安裝的 Headers 版本,原因通常是 Kernel 更新後還沒重新開機載入新的 Kernel 所造成和 Headers 版本不符。


See also

comments powered by Disqus