如果要在你的系統上監控網路,那麼使用命令列工具是非常實用的,並且對於 linux 使用者來說,有著許許多多現成的工具可以使用,如: nethogs, ntopng, nload, iftop, iptraf, bmon, slurm, tcptrack, cbm, netwatch, collectl, trafshow, cacti, etherape, ipband, jnettop, netspeed 以及 speedometer。
鑑於世上有著許多的 linux 專家和開發者,顯然還存在其他的網路監控工具,但在這篇教程中,我不打算將它們所有包括在內。
上面列出的工具都有著自己的獨特之處,但歸根結底,它們都做著監控網路流量的工作,只是通過各種不同的方法。例如 nethogs 可以被用來展示每個程序的頻寬使用情況,以防你想知道究竟是哪個應用在消耗了你的整個網路資源; iftop 可以被用來展示每個套接字連線的頻寬使用情況,而像 nload 這類的工具可以幫助你得到有關整個頻寬的資訊。
1) nethogs
nethogs 是乙個免費的工具,當要查詢哪個 pid (注:即 process identifier,程序 id) 給你的網路流量帶來了麻煩時,它是非常方便的。它按每個程序來分組頻寬,而不是像大多數的工具那樣按照每個協議或每個子網來劃分流量。它功能豐富,同時支援 ipv4 和 ipv6,並且我認為,若你想在你的 linux 主機上確定哪個程式正消耗著你的全部頻寬,它是來做這件事的最佳的程式。
對我而言, nethogs 是非常容易使用的,或許是因為我非常喜歡它,以至於我總是在我的 ubuntu 12.04 lts 機器中使用它來監控我的網路頻寬。
例如要想使用混雜模式來嗅探,可以像下面展示的命令那樣使用選項 -p:
nethogs -p wlan02) nloadnload 是乙個控制台應用,可以被用來實時地監控網路流量和頻寬使用情況,它還通過提供兩個簡單易懂的圖表來對流量進行視覺化。這個絕妙的網路監控工具還可以在監控過程中切換被監控的裝置,而這可以通過按左右箭頭來完成。
正如你在上面的截圖中所看到的那樣,由 nload 提供的圖表是非常容易理解的。nload 提供了有用的資訊,也展示了諸如被傳輸資料的總量和最小/最大網路速率等資訊。
而更酷的是你只需要直接執行 nload 這個工具就行,這個命令是非常的短小且易記的:
nload我很確信的是:我們關於如何使用 nload 的詳細教程將幫助到新的 linux 使用者,甚至可以幫助那些正尋找關於 nload 資訊的老手。
3) slurm
slurm 是另乙個 linux 網路負載監控工具,它以乙個不錯的 ascii 圖來顯示結果,它還支援許多按鍵用以互動,例如c用來切換到經典模式,s切換到分圖模式,r用來重繪螢幕,l用來啟用 tx/rx 燈(注:tx,傳送流量;rx,接收流量) ,m用來在經典分圖模式和大圖模式之間進行切換,q退出 slurm。
在網路負載監控工具 slurm 中,還有許多其它的按鍵可用,你可以很容易地使用下面的命令在 man 手冊中學習它們。
man slurm
sudo apt-get install slurm我們已經在乙個教程中對 slurm 的使用做了介紹,不要忘記和其它使用 linux 的朋友分享這些知識。
4) iftop
當你想顯示連線到網絡卡上的各個主機的頻寬使用情況時,iftop 是乙個非常有用的工具。根據 man 手冊,iftop在乙個指定的介面或在它可以找到的第乙個介面(假如沒有任何特殊情況,它應該是乙個對外的介面)上監聽網路流量,並且展示出乙個**來顯示當前的一對主機間的頻寬使用情況。
通過在虛擬終端中使用下面的命令,ubuntu 和 debian 使用者可以在他們的機器中輕易地安裝 iftop:
sudo apt-get install iftop在你的機器上,可以使用下面的命令通過 yum 來安裝 iftop:
yum -y install iftop5) collectlcollectl 可以被用來收集描述當前系統狀態的資料,並且它支援如下兩種模式:
記錄模式允許從乙個正在執行的系統中讀取資料,然後將這些資料要麼顯示在終端中,要麼寫入乙個或多個檔案或乙個套接字中。
回放模式
根據 man 手冊,在這種模式下,資料從乙個或多個由記錄模式生成的資料檔案中讀取。
ubuntu 和 debian 使用者可以在他們的機器上使用他們預設的包管理器來安裝 colletcl。下面的命令將為他們做這個工作:
sudo apt-get install collectl還可以使用下面的命令來安裝 collectl, 因為對於這些發行版本(注:這裡指的是用 yum 作為包管理器的發行版本),在它們官方的軟體倉庫中也含有 collectl:
你可能不知道的東西
元素可以分為塊級元素,行內元素以及行內塊級元素。行內元素的margin或者padding只有margin left和margin right以及padding left和padding right有效果,margin top margin bottom padding top padding bot...
你可能不知道的const
眾所周知,使用 const 宣告的變數必須同時初始化為某個值。一經宣告,在其生命週期的任何時候都不能再重新賦予新值 const a syntaxerror 常量宣告時沒有初始化 const b 3 console.log b 3 b 4 typeerror 給常量賦值const 宣告只應用到頂級原語...
你可能不知道的python logging機制
先來看幾個例子,先想一下執行結果,答案稍後揭曉 例一 mylogger logging.getlogger mylogger mylogger.info mylogger info mylogger.warning mylogger warning 例二 mylogger logging.getlo...