linux 检测wan命令,Linux系统监控常用命令
釋放雙眼,帶上耳機,聽聽看~!
1.free
free 命令顯示系統使用和空閑的內存情況,包括物理內存、交互區內存(swap)和內核緩沖區內存。
$ free
(-buffers/cache) used 內存數:第一部分 Mem 行中的 used – buffers – cached
(+buffers/cache) free 內存數: 第一部分 Mem 行中的 free + buffers + cached
可見?-buffers/cache?反映的是被程序實實在在占據的內存,而?+buffers/cache?反映的是可以挪用的內存總數。
第三部分 Swap 表示硬盤上交換空間的使用情況。
以 MB 為單位顯示內存的使用情況
$ free -m
顯示匯總信息
$ free -t
2.ps
用于顯示當前系統的進程狀態??梢源钆?kill 指令隨時中斷、刪除不必要的程序。使用該命令可以確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等。(在第一周的進程與工作中有詳細介紹。)
3.pstree
pstree 能將當前的執行程序以樹狀結構顯示,清楚地表達程序間的產生關系。
$ pstree
顯示當前所有進程的進程名和進程 id
顯示所有進程的詳細信息,遇到相同的進程名可以壓縮顯示。
$ pstree -a
4.top
top 用于實時地顯示 Linux 系統當前進程的運行情況,并按一定的順序顯示所有正在運行而且處于活動狀態的進程,而且會實時更新顯示結果。
$ top
顯示的詳細信息可參看第一周的 Linux 進程與工作中的詳細介紹,與其使用方法。另外也可以使用?man?來查看?top?的詳細說明:
$ man top
5.htop
htop 是一個高級的交互式的實時 Linux 進程監控工具。 它和 top 命令十分相似,但是它具有更豐富的特性,例如:用戶可以友好地管理進程,使用快捷鍵,通過橫向和縱向的方式顯示進程等等。 htop 是一個第三方工具,所以我們需要先安裝它。
$ sudo apt-get update
$ sudo apt-get install htop
$ htop
左上角: CPU 負載(因為我們是 4 核 CPU,所以這里有 4 行),內存消耗,交換空間的使用情況。
右上角:
第一行:總進程數,線程數,正在運行的進程數。
第二行:和 top 命令中的 load average 一樣,也是代表的 1,5,15 分鐘內 CPU 的平均負載。
第三行:從系統啟動起到當前的運行總時間。
下方的列表代表的是當前進程的運行情況。
底部顯示的是一些快捷鍵,可以很方便對進程進行排序,搜索,殺掉等操作。同樣可以使用?man htop?查看它的幫助文檔。
6.netstat
netstat 命令可以顯示 linux 中當前詳細的網絡狀態信息,包括所有的 TCP 的連接狀態。我們在第 3 周網絡常用命令中有介紹。
顯示路由表
$ netstat -r
顯示所有網卡列表
$ netstat -i
顯示所有的 Socket 信息與連接狀態
netstat -a
顯示每個協議的統計信息
$ netstat -s
篩選監控中的服務器端口
$ netstat -lunat
7.tcpdump
tcpdump 是使用最廣泛的網絡包分析程序之一,它用于捕捉本機指定條件下的 TCP/IP 包。(在第 3 周的網絡常用命令中有介紹。)
如果沒有安裝,就使用如下命令先安裝一下:
$ sudo apt-get install tcpdump
可以使用如下命令查看 tcpdump 的幫助:
$ tcpdump -h 或者 $ man tcpdump
$ sudo tcpdump
# 直接啟動 tcpdump 將監視網絡接口上所有流過的數據包。
捕捉到的包信息會及時輸出至終端,在長期有流量的情況下輸出結果會刷屏,按?ctrl + c?可結束數據包的捕捉。
tcpdump 的過濾器很強大,從指定 IP、端口、協議等等來過濾,例如:
監控指定網絡接口的數據包:
#抓取 eth0 網絡接口的包
$ sudo tcpdump -i eth0
設置只抓取 10 個數據包:
$ sudo tcpdump -c 10
監控指定主機的數據包
先用 netstat 來看一下當前網絡狀態
$ netstat -lunat
利用前面輸出中顯示的那兩個 ip 地址來實踐(注意,你自己的輸出結果和截圖的可能不相同,根據你自己的輸出結果來實驗。)
我們這里就來捕獲主機?192.168.42.6?與主機?192.168.42.2?之間的通信
$ sudo tcpdump host 192.168.42.6 and 192.168.42.2 |less
輸出結果很多,可以使用 less 通過翻頁鍵查看上下頁的內容
還可以捕獲和實驗樓之間的通信,我們用瀏覽器打開實驗樓的地址?www.wanneng.com?,然后再運行?netstat -lunat
另外它還可以使用 or ,not(或者?!?)
#主機 192.168.42.6 或者主機 192.168.42.2 收到和發出的所有數據包
$ sudo tcpdump host 192.168.42.6 or 192.168.42.2
#主機 192.168.42.6 和除了主機 192.168.42.2 之外的所有主機通信的數據包
$ sudo tcpdump host 192.168.42.6 and not 192.168.42.2 或者 $ sudo tcpdump host 192.168.42.6 and ! 192.168.42.2
監控指定端口的數據包
$ sudo tcpdump port 5901
8.iftop
iftop 是一個實時流量監控工具。iftop 監控的是網絡的使用情況,而 top 監控的是 CPU 的使用情況。iftop 監控一個選定的接口并且顯示兩臺主機之間當前寬帶的使用情況。
$ sudo apt-get install iftop
$ sudo iftop
9.traceroute
traceroute 命令用于追蹤數據包在網絡上的傳輸時的全部路徑,它通過發送小的數據包(默認是 40 字節)到目的設備直到其返回,來測量其需要多長時間。一條路徑上的每個設備 traceroute 要測 3 次。輸出結果中包括每次測試的時間(ms)和設備的名稱(如有的話)及其 ip 地址。
先安裝:
$ sudo apt-get install traceroute
例如追蹤到?www.wanneng.com?的路由及速度
$ traceroute www.wanneng.com
記錄按序列號從 1 開始,每個記錄就是一跳 ,每跳表示一個網關,我們看到每行有三個時間,單位是 ms,這是探測數據包向每個網關發送三個數據包后,網關響應后返回的時間。用這三個時間來表示到達這個結點的網絡速度。
我們會看到有一些行是以星號表示的。出現這樣的情況,可能是防火墻封掉了 ICMP 的返回信息,所以我們得不到什么相關的數據包返回數據。
把跳數設置為 8 次
$ traceroute -m 8 www.wanneng.com
顯示 IP 地址,不查主機名
$ traceroute -n www.wanneng.com
有時我們在某一網關處延時比較長,有可能是某臺網關比較阻塞,也可能是物理設備本身的原因。如果某臺 DNS 出現問題時,不能解析主機名、域名時,也會有延時長的現象。可以加?-n?參數來避免 DNS 解析,以 IP 格式輸出數據。
探測包個數設為 4
$ traceroute -q 4 www.wanneng.com
10.mtr
mtr?是 Linux 中一個判斷網絡連通性的工具。一般?ping?命令可以用來判斷丟包率,traceroute?命令可以用來追蹤路由,而?mtr?命令結合了 ping,traceroute,nslookup 的相關特性可以用來判斷網絡的連通性。(在第 3 周的網絡常用命令中有介紹。)
$ sudo apt-get install mtr
$ mtr -r www.wanneng.com
11.vmstat
vmstat 是 Virtual Memeory Statistics(虛擬內存統計)的縮寫,命令用于顯示虛擬內存、內核線程、磁盤、系統進程、I/O 塊、中斷、CPU 活動等的統計信息。
顯示磁盤信息
除了?-d?選項 ,它還有一些其他的選項:
每 2 秒顯示一次系統內存的統計信息
$ vmstat 2
$ vmstat 2 3
12. df
df 命令用于顯示磁盤分區上的可使用的磁盤空間。默認顯示單位為 KB??梢岳迷撁顏慝@取硬盤被占用了多少空間,目前還剩下多少空間等信息。
$ df
顯示所有文件系統的磁盤使用情況
自動轉換單位來顯示,提高可讀性
$ df -h
它還有一些其他的選項:
13.iotop
iotop 是一個用來監視磁盤 I/O 使用狀況的 top 類工具,可監測到哪一個程序使用的磁盤 IO 的信息,在查找具體進程和大量使用磁盤讀寫進程的時候,這個工具就非常有用。 這個命令只有在 kernel v2.6.20 及以后的版本中才有,python 版本需要 python2.7 及以上版本。由于實驗環境的權限限制并不能成功的展示該命令。此處僅做介紹
總結
以上是生活随笔為你收集整理的linux 检测wan命令,Linux系统监控常用命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RDMA Mellanox官方使用VPI
- 下一篇: linux获取路由器wan口的ip地址,