一、CPU
1、Uptime 指令:一個簡單的檢視平均負載的指令
[[email protected] ~]# uptime 後三項為1、5、15分鐘的平均負載
15:37:33 up 1 min, 2 users, load average: 0.10, 0.07, 0.03
[[email protected] ~]# uptime -help
Usage:
uptime [options]
Options:
-p, --pretty show uptime in pretty format
-h, --help display this help and exit
-s, --since system up since
-V, --version output version information and exit
For more details see uptime(1).
2、vmstat:Virtual Meomory Statistics虛拟記憶體統計,一種功能比較齊全的監控工具,可以對作業系統的虛拟記憶體、程序、cpu活動進行監控,包括系統範圍内的cpu平均負載。
實體記憶體與虛拟記憶體:實體記憶體是系統硬體提供的記憶體大小,相對于實體記憶體,在linux下還有一個虛拟記憶體的概念,虛拟記憶體就是為了滿足實體記憶體的不足而提出的政策,它是利用磁盤空間虛拟出的一塊邏輯記憶體,用作虛拟記憶體的磁盤空間被稱為交換空間(Swap Space)。
虛拟記憶體是實體記憶體的擴充,linux會在實體記憶體不足時,使用交換分區的虛拟記憶體,更詳細的說,就是核心會将暫時不用的記憶體塊資訊寫到交換空間,這樣以來,實體記憶體得到了釋放,這塊記憶體就可以用于其它目的,當需要用到原始的内容時,這些資訊會被重新從交換空間讀入實體記憶體。
Linux記憶體管理采用分頁的機制,在進行頁面交換時采用的算法是LRU(最近最久未使用)算法。
如果程序太多,每個程序配置設定到的頁框越少(頁:程序的邏輯位址空間劃分成的大小相同的片;頁框:實體記憶體空間劃分成的與頁大小相同的存儲塊,)程序會頻繁請求調頁,這樣就會産生系統抖動。
vmstat可以指定采樣周期和采樣次數,例如5秒鐘進行5次采樣
[[email protected] ~]# vmstat 5 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3783784 2108 130928 0 0 52 3 52 45 0 0 99 0 0
1 2 0 3783792 2108 130940 0 0 0 11 23 23 0 0 100 0 0
0 0 0 3783792 2108 130940 0 0 0 0 16 15 0 0 100 0 0
0 0 0 3783792 2108 130940 0 0 0 0 14 13 0 0 100 0 0
0 0 0 3783792 2108 130940 0 0 0 0 11 11 0 0 100 0 0
vmstat會吐出來6列資料:
如果出現CPU繁忙的情況,一般可以調整應用程式對CPU的占用或者增加資源。大多數情況都是因為應用程式導緻的,例如資料庫中不好的SQL語句導緻的CPU占用。
其他常用的指令:
檢視系統啟動後fork出的程序數量:
[[email protected] ~]# vmstat -f
1314 forks
檢視磁盤的讀寫:
[[email protected] ~]# vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------
total merged sectors ms total merged sectors ms cur sec
sda 6313 1 237116 11735 1301 160 29383 7502 0 11
sr0 0 0 0 0 0 0 0 0 0 0
sr1 0 0 0 0 0 0 0 0 0 0
dm-0 5897 0 216613 11356 1252 0 25287 10767 0 11
dm-1 94 0 4456 80 0 0 0 0 0 0
檢視某個磁盤的讀寫:
[[email protected] ~]# vmstat -p /dev/sda1
sda1 reads read sectors writes requested writes
152 11223 4 4096