linux系統資源查看

目錄

 

CPU查看

方法1:top命令查看cpu

方法2:cat /proc/cpuinfo  查看CPU具體信息 

內存查看

cat /proc/meminfo

atop

free(查看內存使用情況)

PS(實時的顯示各個進程的內存使用情況)


CPU查看


方法1:top命令查看cpu

top命令:

Cpu(s): 38.3%us, 10.6%sy,  0.0%ni, 44.6%id,  3.0%wa,  0.4%hi,  3.1%si,  0.0%st

%us:表示用戶空間程序的cpu使用率 

%sy:表示系統空間的cpu使用率,主要是內核程序。 

%ni:表示用戶空間且通過nice調度過的程序的cpu使用率。

%id:空閒cpu 

%wa:cpu運行時在等待io的時間 

%hi:cpu處理硬中斷的數量 

%si:cpu處理軟中斷的數量 

%st:被虛擬機偷走的cpu 

  • top界面按1,可以查看多核CPU的使用情況
Cpu0  : 50.0%us, 12.0%sy,  0.0%ni, 36.3%id,  1.3%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu1  : 33.0%us, 15.7%sy,  0.0%ni, 43.3%id,  5.7%wa,  0.7%hi,  1.7%si,  0.0%st
Cpu2  : 61.0%us, 10.7%sy,  0.0%ni, 27.0%id,  0.7%wa,  0.3%hi,  0.3%si,  0.0%st
Cpu3  : 42.5%us, 10.0%sy,  0.0%ni, 42.8%id,  0.3%wa,  0.0%hi,  4.3%si,  0.0%st

一般認爲us+sy在85%以下是正常值

但是上述只能看到瞬時值,近期平均值應該通過load average來查看。 

load average一般可以通過top或者uptime觀察到,格式如下: 

load average: 0.10, 0.05, 0.58 

load average後面有由逗號分割的3列數字,分別代表了最近1分鐘,5分鐘,15分鐘CPU的平均負載情況。

我們任取一列,如第一列,即表示在剛剛過去的1分鐘內: 

如果是單核CPU的話,1.00就表示CPU已經滿負荷了, 

如果是多核CPU的話,load average達到CPU的核數即說明該CPU已經滿負荷了, 

如果是多顆物理CPU,則當load average達到所有物理CPU的總核數時,說明系統CPU滿負荷了。 

簡而言之,CPU的核數即爲我們根據load average衡量CPU負載的依據。
 

  • top界面按shift+h,可查看某線程CPU的使用情況

方法2:cat /proc/cpuinfo  查看CPU具體信息 

方法3vmstat(觀察磁盤及cpu情況)

vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- 
r b swpd   free buff cache si so bi  bo in   cs  us sy id wa 
0 1 24980 10792 8296 47316 5  19 205 52 1161 698 26 3  1  70 

 

  • 觀察磁盤活動情況 

磁盤活動情況主要從以下幾個指標瞭解: 

bi:表示從磁盤每秒讀取的塊數(blocks/s)。數字越大,表示讀磁盤的活動越多。 

bo:表示每秒寫到磁盤的塊數(blocks/s)。數字越大,表示寫磁盤的活動越多。 

wa:cpu等待磁盤I/O(未決的磁盤IO)的時間比例。  數字越大,表示文件系統活動阻礙cpu的情況越嚴重,因爲cpu在等待慢速的磁盤系統提供數據。wa爲0是最理想的。如果wa經常大於10,可能文件系統就需要進行性能調整了。 

  • 觀察cpu活動情況 

vmstat比top更能反映出cpu的使用情況: 

us:用戶程序使用cpu的時間比例。這個數字越大,表示用戶進程越繁忙。 

sy: 系統調用使用cpu的時間比例。注意,NFS由於是在內核裏面運行的,所以NFS活動所佔用的cpu時間反映在sy裏面。這個數字經常很大的話,就需要注 意是否某個內核進程,比如NFS任務比較繁重。如果us和sy同時都比較大的話,就需要考慮將某些用戶程序分離到另外的服務器上面,以免互相影響。

id:cpu空閒的時間比例。 

wa:cpu等待未決的磁盤IO的時間比例。 


內存查看


cat /proc/meminfo

查看RAM(random access memory,隨機存儲器)使用情況最簡單的方法是通過/proc/meminfo。

這個動態更新的虛擬文件實際上是許多其他內存相關工具(如:free / ps / top)等的組合顯示。

進程的內存使用信息也可以通過/proc/<pid>/statm/proc/<pid>/status 來查看。

atop

atop命令是一個終端環境的監控命令。它顯示的是各種系統資源(CPU, memory, network, I/O, kernel)的綜合,並且在高負載的情況下進行了彩色標註。

sudo atop

free(查看內存使用情況)

1.作用 
free命令用來顯示內存的使用情況,使用權限是所有用戶。 
2.格式 
free [-b-k-m] [-o] [-s delay] [-t] [-V] 
3.主要參數 
-b -k -m -g:分別以字節(KB、MB、GB)爲單位顯示內存使用情況。 
-s delay:顯示每隔多少秒數來顯示一次內存使用情況。 
-t:顯示內存總和列。 
-o:不顯示緩衝區調節列。 
 

free -h

PS(實時的顯示各個進程的內存使用情況)

ps命令可以實時的顯示各個進程的內存使用情況

Reported memory usage information includes %MEM (percent of physical memory used),

VSZ (total amount of virtual memory used),

 RSS (total amount of physical memory used)。

可以使用 “–sort”選項對進程進行排序,例如按RSS進行排序:

ps aux --sort -rss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章