目錄
1、vmstat指令
2、dmesg指令
3、free指令
4、檢視CPU資訊
5、檢視本機登陸使用者資訊
(1)w指令
(2)who指令
6、uptime指令
7、檢視系統與核心相關資訊
<code>vmstat</code>指令是一個監控(檢視)系統資源的指令。
示例:
提示: 因為我們這是Linux虛拟機,<code>vmstat</code>指令的輸出項中很多資料都是0,真實環境的生産伺服器并不是這樣的。
輸出項說明:
<code>procs</code>:程序資訊字段。
輸出項
說明
<code>r</code>
等待運作的程序數,數量越大,系統越繁忙。
<code>b</code>
不可被喚醒的程序數量,數量越大,系統越繁忙。
<code>memory</code>:記憶體資訊字段。
<code>swpd</code>
虛拟記憶體的使用情況,機關KB。
<code>free</code>
空閑的記憶體容量,機關KB。
<code>buff</code>
緩沖的記憶體容量,機關KB。(加速資料的寫入)
<code>cache</code>
緩存的記憶體容量,機關KB。(加速資料的讀取)
<code>swap</code>:交換分區的資訊字段。
<code>si</code>
從磁盤中交換到記憶體中資料的數量,機關KB。
<code>so</code>
從記憶體中交換到磁盤中資料的數量,機關KB。
此兩個數越大,證明資料需要經常在磁盤和記憶體之間交換,系統性能越差。
<code>io</code>:磁盤讀寫資訊段。
<code>bi</code>
從塊裝置讀入資料的總量,機關是塊。
<code>bo</code>
寫到塊裝置的資料的總量,機關是塊。
此兩個數越大,代表系統的I/0越繁忙。
<code>system</code>:系統資訊字段。
<code>in</code>
每秒被中斷的程序次數。
<code>cs</code>
每秒鐘進行的事件切換次數。
此兩個數越大,代表系統與接口裝置的通信非常繁忙。
CPU:CPU資訊字段。
這裡的資訊和<code>top</code>指令中看到的資訊類似。
<code>us</code>
非核心程序消耗CPU運算時間的百分比。
<code>sy</code>
核心程序消耗CPU運算時間的百分比。
<code>id</code>
空閑CPU的百分比。
<code>wa</code>
等待I/0所消耗的CPU百分比。
<code>st</code>
被虛拟機所盜用的CPU占比。
<code>dmesg</code>顯示開機時核心檢測資訊。
在Linux系統開機的時候,Linux核心會有一些自檢資訊,這些資訊可以通過<code>dmesg</code>指令重複的調用。
<code>free</code>指令檢視Linux系統的記憶體使用狀态。
輸出項解釋:
第一行:
<code>total</code>是總記憶體數。
<code>used</code>是已經使用的記憶體數。
<code>free</code>是空閑的記憶體數。
<code>shared</code>是多個程序共享的記憶體總數。
<code>buffers</code>是緩沖記憶體數,預設機關是KB(加速資料的寫入)。
<code>cached</code>是緩存記憶體數,預設機關是KB(加速資料的讀取)。
第二行:
<code>-/+ buffers/cache: 138M 1.7G</code>,其中138M是<code>- /buffers/cache</code>,1.78GB是<code>+ /buffers/cache</code>。
<code>- /buffers/cache</code>的記憶體數,相當于第一行的<code>used - buffers - cached</code>。
也就是說系統運作占用了240M的内容,但是<code>buffers</code>和<code>cached</code>兩個緩存占用的空間是36M和65M。
而<code>buffers</code>和<code>cached</code>兩個緩存是能被使用的,是以不應該算入系統占用記憶體中,是以計算機記憶體實際占用的數值為,記憶體占用總數減去兩個緩存數,就是被系統實際占用的記憶體數。
<code>+ /buffers/cache</code>的記憶體數,相當于第一行的<code>free + buffers + cached</code>。
和上面同理,系統實際的空閑記憶體空間為,空閑空間free加上兩個緩存空間的數值,就是系統實際空閑空間的記憶體數。
第三行:
<code>total</code>是swap的總數。
<code>used</code>是已經使用的swap數。
<code>free</code>是空閑的swap數。
以上數值預設機關是KB。
說明: Swap(臨時記憶體空間)在目前虛拟機中,因為通路量人數是極少的,在這種情況下,Swap都不會被占用,因為記憶體消耗很小。 但是在實際的生成環境中,Swap是非常重要的,可以給伺服器性能的提升帶來很大的幫助。
CPU的主要資訊儲存在<code>/proc/cpuinfo</code>這個檔案當中,我們隻要檢視這個檔案,就可以知道CPU的相關資訊。
指令如下:
拓展:
在<code>proc</code>目錄中其實是有一組可以檢視硬體資訊的檔案。
如下圖所示:

如我們上邊練習檢視的CPU相關資訊在<code>cpuinfo</code>檔案中,
如果你需要檢視系統中記憶體的資訊,在<code>meminfo</code>檔案中檢視,
以後你想要檢視相關硬體資訊,都可以來<code>proc</code>目錄中檢視。
如果我們想要知道Linux伺服器上目前已經登入的使用者資訊,可以使用<code>w</code>或<code>who</code>指令來進行查詢。
<code>w</code>指令格式如下:
<code>w</code>指令輸出項說明:
第一行
其實和<code>top</code>指令的第一行非常類似,主要顯示了:
<code>08:09:36</code>:系統目前時間。
<code>up 1:55</code>:開機多久(up)。
<code>3 users</code>:有多少使用者登陸(users)。
<code>load average: 0.33, 0.19, 0.22</code>:1分鐘、5分鐘、15分鐘前的平均負載(load average)。
第二行
是項目的說明:
<code>USER</code>:登陸的使用者名。
<code>TTY</code>:登陸終端。
<code>FROM</code>:從哪個IP位址登陸。
<code>LOGIN@</code>:登陸時間。
<code>IDLE</code>:使用者閑置時間。
<code>JCPU</code>:指的是和該終端連接配接的所有程序占用的CPU運算時間。這個時間裡并不包括過去的背景作業時間,但卻包括目前正在運作的背景作業所占用的時間。
<code>PCPU</code>:是指目前程序所占用的CPU運算時間。
<code>WHAT</code>:目前正在運作的指令。
第三行開始每行代表一個使用者。
<code>who</code>指令比<code>w</code>指令稍微簡單一點,也可以用來檢視系統中已經登入的使用者。
<code>who</code>指令格式如下:
<code>uptime</code>指令的作用就是顯示系統的啟動時間和平均負載,也就是<code>top</code>指令的第一行。
其實<code>w</code>指令也能看到這一行的資料,具體原意使用哪個指令看個人習慣。
指令格式如下:
<code>top</code>指令其實是很耗資源的,如果我隻想看其中一部分資訊的時候,就比如說<code>top</code>指令的第一行資訊,我們就可以使用<code>w</code>指令或者<code>uptime</code>指令代替。
我們使用<code>uname</code>指令檢視核心的相關資訊,
如果我們想要判斷目前系統的位數,可以通過<code>file</code>指令來判斷系統檔案(主要是系統指令)的位數,來推斷系統的位數。
如果我們想要查詢目前Linux系統的發行版本,可以使用<code>lsb_release -a</code>指令檢視。