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