w,vmstat,top,sar
1.w命令查看系統負載
w|cat查看系統負載信息,load average后的數字分別代表1分鐘,5分鐘,15分鐘的系統負載情況
load average的數值=邏輯cpu數量,為最理想的狀態。cpu數量可以通過查看以下文件
[root@test_01?~]#?cat?/proc/cpuinfo processor???????:?0 vendor_id???????:?GenuineIntel cpu?family??????:?6 model???????????:?94 model?name??????:?Intel(R)?Core(TM)?i7-6700HQ?CPU?@?2.60GHz stepping????????:?3 microcode???????:?0x8a使用uptime命令可以查看相同的內容
2.vmstat命令
vmstat命令是最常見的Linux/Unix監控工具,可以展現給定時間間隔的服務器的狀態值,包括服務器的CPU使用率,內存使用,虛擬內存交換情況,IO讀寫情況。這個命令是我查看Linux/Unix最喜愛的命令,一個是Linux/Unix都支持,二是相比top,我可以看到整個機器的CPU,內存,IO的使用情況,而不是單單看到各個進程的CPU使用率和內存使用率(使用場景不一樣)。
每一秒進行刷新共5次,顯示系統信息
[root@test_01?~]#?vmstat?1?5 procs?-----------memory----------?---swap--?-----io----?-system--?------cpu-----r??b???swpd???free???buff??cache???si???so????bi????bo???in???cs?us?sy?id?wa?st1??0??????0?1578536????876?167872????0????0????27?????2???31???45??0??0?99??0??00??0??????0?1578520????876?167872????0????0?????0?????0???36???43??0??0?100??0??00??0??????0?1578520????876?167872????0????0?????0?????0???27???40??0??0?100??0??00??0??????0?1578520????876?167872????0????0?????0?????0???39???44??0??0?100??0??00??0??????0?1578520????876?167872????0????0?????0?????0???58???61??0??0?100??0??0r:表示運行隊列(就是說多少個進程真的分配到CPU),當這個值超過了CPU數目,就會出現CPU瓶頸了。
b:表示阻塞進程(在等待)
swpd:交換內存使用的數量,如果swpd的數值在頻繁變化,說明內存不足
free:空閑物理內存大小
buffer:inux/Unix系統用來存儲目錄么內容,權限等的緩存。
cache:?cache直接用來記憶我們打開的文件,給文件做緩沖
si:每秒從磁盤讀入虛擬內存的大小,如果這個值大于0,表示物理內存不夠用或者內存泄露了,要查找耗內存進程解決掉。
so:每秒虛擬內存寫入磁盤的大小,如果這個值大于0,同上。
bi:塊設備每秒接收的塊數量
bo:塊設備每秒發送的塊數量
in:每秒CPU的中斷次數,包括時間中斷
us:用戶CPU時間,用戶占用的cpu百分比
sy:系統自身占用的cpu百分比
id:cpu空閑百分比
us+sy+id=100
wa:等待cpu的進程
3.top命令
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源占用狀況,類似于Windows的任務管理器。top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態.如果在前臺執行該命令,它將獨占前臺,直到用戶終止該程序為止.比較準確的說,top命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的任務列表.該命令可以按CPU使用.內存使用和執行時間對任務進行排序;而且該命令的很多特性都可以通過交互式命令或者在個人定制文件中進行設定。?
第一行:
22:01:46 :系統時間
up? 1:15:持續運行時間
1 user:登陸用戶
load average: 0.00, 0.01, 0.05:系統1分鐘、5分鐘、15分鐘的CPU負載信息
第二行:
?100 total:進程總數
1 running:正在運行的進程數
?99 sleeping:休眠的進程數
0 stopped:停止的進程數
0 zomb:僵尸進程數
第三行:
Cpu(s):表示這一行顯示CPU總體信息?
0.0%us:用戶態進程占用CPU時間百分比,不包含renice值為負的任務占用的CPU的時間。?
0.2%sy:內核占用CPU時間百分比?
0.0%ni:改變過優先級的進程占用CPU的百分比?
99.8%id:空閑CPU時間百分比?
0.0%wa:等待I/O的CPU時間百分比?
0.0%hi:CPU硬中斷時間百分比?
0.0%si:CPU軟中斷時間百分比?
注:這里顯示數據是所有cpu的平均值,如果想看每一個cpu的處理情況,按1即可;折疊,再次按1;
進程信息:
再下面就是進程信息:?
PID:進程的ID?
USER:進程所有者?
PR:進程的優先級別,越小越優先被執行?
NI:nice值?
VIRT:進程占用的虛擬內存?
RES:進程占用的物理內存?
SHR:進程使用的共享內存?
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值為負數?
%CPU:進程占用CPU的使用率?
%MEM:進程使用的物理內存和總內存的百分比?
TIME+:該進程啟動后占用的總的CPU時間,即占用CPU使用時間的累加值。?
COMMAND:進程啟動命令名稱
命令:
q:退出top命令 <Space>:立即刷新 s:設置刷新時間間隔 c:顯示命令完全模式 t::顯示或隱藏進程和CPU狀態信息 m:顯示或隱藏內存狀態信息 l:顯示或隱藏uptime信息 f:增加或減少進程顯示標志 S:累計模式,會把已完成或退出的子進程占用的CPU時間累計到父進程的MITE+ P:按%CPU使用率排行 T:按MITE+排行 M:按%MEM排行 u:指定顯示用戶進程 r:修改進程renice值 kkill:進程 i:只顯示正在運行的進程 W:保存對top的設置到文件~/.toprc,下次啟動將自動調用toprc文件的設置。 h:幫助命令。 q:退出
4.sar命令
sar(System ActivityReporter系統活動情況報告)是目前Linux上最為全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告,包括:文件的讀寫情況、系統調用的使用情況、磁盤I/O、CPU效率、內存使用狀況、進程活動及IPC有關的活動等,sar命令有sysstat安裝包安裝。
查看網卡流量:
rxpck/s 每秒鐘接受的數據包
#txpck/s 每秒鐘發送的數據庫
#rxKB/S 每秒鐘接受的數據包大小,單位為KB
#txKB/S 每秒鐘發送的數據包大小,單位為KB
#rxcmp/s 每秒鐘接受的壓縮數據包
#txcmp/s 每秒鐘發送的壓縮包
#rxmcst/s 每秒鐘接收的多播數據包????
查看系統負載
[root@test_01?~]#?sar?-q Linux?3.10.0-514.el7.x86_64?(test_01)???2017年11月27日??_x86_64_????????(2?CPU)22時30分01秒???runq-sz??plist-sz???ldavg-1???ldavg-5??ldavg-15???blocked 22時40分01秒?????????0???????117??????0.00??????0.01??????0.05?????????0 平均時間:?????????0???????117??????0.00??????0.01??????0.05?????????0查看磁盤讀寫
轉載于:https://blog.51cto.com/lavender7n/2044913
總結
以上是生活随笔為你收集整理的w,vmstat,top,sar的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: topcoder srm 500 div
- 下一篇: 机房管理系列之门禁系统