1.vmstat命令監(jiān)控系統(tǒng)資源
語法:vmstat [刷新延時 刷新次數(shù)]
例如:vmstat 1 3
命令輸出內(nèi)容
第一部分
第二部分
第三部分
緩存和緩沖的區(qū)別
簡單來說緩存(cache)是用來加速數(shù)據(jù)從硬盤中“讀取”的,而緩沖(buffer)是用來加速數(shù)據(jù)“寫入”硬盤的直撤。
我們知道CPU的運算速度是非趁Σぃ快的激蹲,而硬盤的讀寫速度相對要慢得多。所以可以把CPU經(jīng)常需要運算的東西放入內(nèi)存的緩存中兢交,這樣可以不用頻繁從硬盤中讀取酣藻。由于內(nèi)存的速度要比硬盤快得多藐鹤,所以可以加速數(shù)據(jù)的讀取。
在我們寫入一些數(shù)據(jù)保存時登疗,有時候未必是直接保存到硬盤排截,而是先寫入緩沖區(qū),當緩沖區(qū)達到一定量時再統(tǒng)一寫入硬盤辐益,所以可以加速數(shù)據(jù)的寫入断傲。
2.dmesg命令開機時內(nèi)核檢測信息
對于Linux而言,開機時需要自檢兩遍智政,一遍是硬件的檢測认罩,另外就是內(nèi)核的自檢,dmesg
命令顯示的就是內(nèi)核自檢信息续捂。
包含的信息非常多垦垂,通過配合grep
命令提取有用的部分信息。例如:dmesg | grep cpu
3.free命令查看內(nèi)存使用狀態(tài)
語法:free [-b | -k | -m | -g]
-b:
以字節(jié)為單位顯示
-k:
以KB為單位顯示牙瓢,默認就是以KB為單位顯示
-m:
以MB為單位顯示
-g:
以GB為單位顯示
輸出內(nèi)容(centos6)
- 第一行:
total
是總內(nèi)存數(shù)劫拗,used
是已經(jīng)使用的內(nèi)存數(shù),free
是空閑的內(nèi)存數(shù)矾克,shared
是多個進程共享的內(nèi)存總數(shù)页慷,buffers
是緩沖內(nèi)存數(shù),cached
是緩存內(nèi)存數(shù)胁附。 - 第二行: 第一列代表
-/buffers/cache
的內(nèi)存數(shù)酒繁,相當于第一行的used-buffers-cached
。第二列+/buffers/cache
的內(nèi)存數(shù),相當于第一行的free+buffers+cached
- 第三行:
total
是swap的總數(shù)汉嗽,used
是已經(jīng)使用的swap數(shù)欲逃,free
是空閑的swap數(shù)。
4.查看CPU信息
命令:cat /proc/cpuinfo
顯示CPU相關(guān)信息饼暑,比如cpu核數(shù)是cpu cores
稳析,cpu型號是model name
洗做,緩存大小cache size
等等
5.uptime命令
顯示系統(tǒng)的啟動時間和平均負載,也就是 top
命令的第一行彰居。w
命令也可以看到這個數(shù)據(jù)诚纸。top
命令相對比較耗費資源,如果只需要看平均負載就可以使用該命令陈惰。
[root@localhost ~]# uptime
20:33:28 up 15 min, 2 users, load average: 0.00, 0.00, 0.01
6.uname查看系統(tǒng)與內(nèi)核相關(guān)信息
語法:uname [選項]
-a:
查看系統(tǒng)所有相關(guān)信息
-r:
查看內(nèi)核版本
-s:
查看內(nèi)核名稱
7.判斷當前系統(tǒng)位數(shù)
有個小技巧就是隨便查看一個系統(tǒng)命令畦徘,根據(jù)命令顯示結(jié)果判斷系統(tǒng)位數(shù)。
例如:file /bin/ls
[root@localhost ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV)...
8.查看當前系統(tǒng)linux發(fā)行版本
版本詳情:lsb_release -a
版本信息:cat /etc/redhat-release
9.lsof命令列出進程調(diào)用或打開的文件信息
語法:lsof [選項]
-c 字符串:
只列出以字符串開頭的進程打開的文件
-u 用戶名:
只列出某個用戶的進程打開的文件
-p pid:
列出某個PID進程打開的文件
-i :port:
列出誰在使用某個端口
lsof | more
#查詢系統(tǒng)中所有進程調(diào)用的文件
lsof /sbin/init
#查詢某個文件被哪個進程調(diào)用
lsof -c nginx
#查看nginx進程調(diào)用了哪些文件
lsof -u root
#按照用戶名抬闯,查詢某用戶的進程調(diào)用的文件名
lsof -i :5672
#列出在使用5672的進程