w/uptime 查看系統整體負載命令
04:38:05 當前系統時間
up 7 min 啓動7 分鐘
1 user 目前登錄了幾個用戶,登錄的用戶可以從下面USER看到
USER 顯示登錄的用戶
TTY 顯示的是從網絡登錄還是本地登錄
From 登錄的一源
LOGIN@ 登錄的時間
load average: 0.00, 0.01, 0.00
這三個數值分別表示:1分鐘之內系統的平均負載,1分鐘使用cpu活動進程的是多少,不一定是整數
5分鐘之內系統的平均負載,
15分鐘之內系統的平均負載
uptime (結果和w的第一行是一至的)
top查看進程使用資源情況
top -c 顯示詳細的進程信息
top -bn1 靜態顯示所有進程
q退出,數字1顯示所有核cpu,大寫字母M按內存使用排序
大寫字母P按cpu使用排序
sar
yum install -y sysstat
sar -n DEV 查看網卡歷史流量,10分鐘一次
sar -n DEV 1 10 查看時時流量,一秒鐘顯示一次,一共顯示十次
sar -q 查看歷史負載
sar -b 歷史磁盤讀寫
sar -n DEV -f /var/log/sa/sa22 查看22號當天的網卡流量
/var/log/sa有兩種文件,一種sa一種sar,其中sa文件只能用sar -f查看,sar可以用cat查看
初次使用sar -n DEV會報錯提示沒有文件,是因爲數據庫文件還沒有生成
vmstat 查看系統具體的負載
# vmstat 1 一秒鐘顯示一次,不停的顯示,按ctrl+c結束
# vmstat 1 5 一秒鐘顯示一次,只顯示5次,顯示5次後自動結束
# vmstat 後面什麼都不跟的話,只顯示一次
一次不太準確,儘量顯示多次
vmstat命令打印的結果共分爲6部分:procs, memory, swap, io, system, cpu. 請重點關注一下r b si so bi bo幾列
1)procs 顯示進程相關信息
r :表示運行和等待cpu時間片的進程數,如果長期大於服務器cpu的個數,則說明cpu不夠用了;
b :表示等待資源的進程數,比如等待I/O, 內存等,這列的值如果長時間大於1,則需要關注一下了;
2)memory 內存相關信息
swpd :表示切換到交換分區中的內存數量 ;
free :當前空閒的內存數量;
buff :緩衝大小,(即將寫入磁盤的);
cache :緩存大小,(從磁盤中讀取的);
3)swap 內存交換情況
si :由交換區寫入到內存的數據量;
so :由內存寫入到交換區的數據量;
4)io 磁盤使用情況
bi :從塊設備讀取數據的量(讀磁盤);
bo: 從塊設備寫入數據的量(寫磁盤);
5)system 顯示採集間隔內發生的中斷次數
in :表示在某一時間間隔中觀測到的每秒設備中斷數;
cs :表示每秒產生的上下文切換次數;
6)CPU 顯示cpu的使用狀態
us :顯示了用戶下所花費 cpu 時間的百分比;
sy :顯示系統花費cpu時間百分比;
id :表示cpu處於空閒狀態的時間百分比;
wa :表示I/O等待所佔用cpu時間百分比;
st :表示被偷走的cpu所佔百分比(一般都爲0,不用關注);
總結:r b 查看cpu是否到達瓶頸
si so查看內存是否到達瓶頸
bi bo查看磁盤是否到達瓶頸
us內存使用的百分比
磁盤io
iostat -x 磁盤使用 關注%util
yum install -y sysstat (iostat和sar是同一個包)
iotop 磁盤使用
yum install -y iotop
查看那一個進程使用io比較大,和top有點像
free
free 默認是kb
total used free shared buff/cache available
Mem: 999696 567416 151004 1596 281276 255276
Swap: 2097148 40004 2057144
free -m 以m顯示,但不顯示單位
total used free shared buff/cache available
Mem: 976 553 147 1 275 249
Swap: 2047 39 2008
free -h 以m顯示,顯示單位
total used free shared buff/cache available
Mem: 976M 553M 147M 1.6M 275M 249M
Swap: 2.0G 39M 2.0G
buffer/cache區別
buffer緩衝,cache緩存
公式:total=used+free+buff/cache
avaliable包含free和buffer/cache剩餘部分
cenos7和centos6顯示的結果是不一樣的,7顯示的更加的直觀