首頁 > 軟體

Linux 檢視記憶體使用情況的幾種方法彙總

2023-09-06 06:29:02

在執行 Linux 系統的過程中為了讓電腦或者伺服器以最佳水平執行,常常需要監控記憶體統計資訊。

那麼今天我們就來看看有哪些方法可以存取所有相關資訊並幫助管理員監控記憶體統計資訊。

檢視或者獲取 Linux 中的記憶體使用情況既可以通過命令的方式,也可以通過桌面端的GUI程式檢視。

以下的過程,所有命令和結果都是使用 Linux 發行版 Ubuntu 18.04。

GUI 檢視

如果你使用的環境是帶有圖形介面的 Linux 版本,那麼必定是支援使用圖形介面進行伺服器管理的。那麼,記憶體使用情況的視覺化會使得某些資料集更加清晰自然。

如何存取系統監視器:

導航到顯示應用程式。 在搜尋欄中輸入 System Monitor 並存取該應用程式。 選擇資源索引標籤。 顯示實時記憶體消耗的圖形概覽,包括歷史資訊。

命令獲取

虛擬檔案 /proc/meminfo

在 linux 系統中,/proc/meminfo 是一個報告可用和已用記憶體量的虛擬檔案,它包含有關係統記憶體使用情況以及核心使用的緩衝區和共用記憶體的實時資訊。根據所討論的電腦架構和作業系統版本,從該檔案讀取的輸出可能略有不同。

輸入指令

cat /proc/meminfo

指令返回

命令 free

在命令終端中鍵入 free

資料表示已用/可用記憶體和以KB為單位的交換記憶體大小。

total總安裝記憶體
used正在執行的程序當前正在使用的記憶體(used= total – free – buff/cache)
free未使用的記憶體(free= total – used – buff/cache)
shared多個程序共用的記憶體
buffers作系統保留的記憶體,在程序需要時分配為緩衝區
cached儲存在 RAM 中最近使用的檔案
buff/cacheBuffers + Cache
available可用於啟動新應用程式,無需交換的記憶體大小

和讀取 /proc/meminfo 檔案相比,free 命令提供的資訊較為精簡,但是它更容易理解。

為了更靈活輸出結果,free 命令可以新增多個選項標誌用來格式化輸出。下表列出了 free 命令最有用的選項標誌。

選項標誌結果
-b以 Byte 為單位輸出
-k以 KB 為單位的輸出
-m以 MB 為單位的輸出
-G以 GB 為單位輸出
-l詳細的低記憶體和高記憶體統計資訊
-o舊格式(無 -/+緩衝區/快取行)
-tRAM + swap
-s多少秒更新一次
-C更新多少次

命令 vmstat

vmstat 命令是報告虛擬記憶體統計資訊的有用工具。它的返回提供有關程序、記憶體、分頁、塊 IO、捕獲和 CPU 活動的一般資訊。

這裡列舉一下每個值的解釋,方便大家在分析結果時查閱。

程序
r:等待執行時的程序數。
b:處於不可中斷睡眠狀態的程序數。

記憶體
swpd:使用的虛擬記憶體大小。
free:空閒記憶體大小。
buff:用作緩衝區的記憶體大小。
cache:用作快取的記憶體大小。

交換區
si:從磁碟換入的記憶體(/s) 。
so:交換到磁碟的記憶體(/s)。

IO 塊
bi:從塊裝置接收到的塊(塊/s)。
bo:傳送到塊裝置的塊(塊/s)。

系統
in:每秒中斷次數,包括時鐘。
cs:每秒上下文切換的次數。

CPU – 下面都是佔總 CPU 時間的百分比。
us:執行非核心程式碼所花費的時間(使用者時間,包括nice time)
sy:執行核心程式碼所花費的時間(系統時間)
id:空閒時間,在 Linux 2.5.41 之前,這包括 IO 等待時間。
wa:等待IO所花費的時間,在 Linux 2.5.41 之前,包含在 idle 中。
st:從虛擬機器器竊取的時間,在 Linux 2.6.11 之前,未知。

命令 top

top 命令可用於檢查每個程序的記憶體和 CPU 使用情況等。包含有以下資訊:

正常執行時間
平均負荷
正在執行的任務數
登入使用者數
CPU 數量/CPU 利用率
記憶體/交換區的系統程序

top 命令輸入後,資料會不斷更新,這樣你可以實時跟蹤程序狀況。

通過 top 命令,除了看到基本的記憶體資訊外,還可以通過有限的互動介面和程序互操作。輸入 top 命令時還可以使用命令列選項來操縱和設定操作。

如果你需要了解關於 top 命令的所有可用選項的完整資訊,可以通過 Linux 中的 man top 命令檢視。

命令 htop

命令 htop 與命令 top 類似。但是,命令 htop 的真正優勢在於其使用者友好的操作環境和更強大的控制元件。

命令 htop 輸出包含顏色高亮,為程序提供完整的命令列,以及垂直和水平捲動的功能。

對照上圖

頂部區域提供摘要資訊幷包含圖形儀表和彙總資訊統計。 接下來的部分按行程群組織了詳細資料,這樣您就可以輕鬆地對單個程序執行操作,支援滑鼠直接點選選中程序。 螢幕底部列出的快捷方式將使您能夠快速操作和設定程序,而省去輸入特定指令。

命令 htop 在這個發行版裡其實沒有預設安裝,如果發現指令不存在,可以通過下面的指令安裝

sudo apt install htop 

Linux 檢視記憶體使用情況的幾種方法都是基於命令列的,需要使用者具備一定的 Linux 命令列操作經驗。其中,free 命令是最常用的方法,可以直接顯示系統記憶體的使用情況。top 和 htop 命令可以實時監控系統的記憶體使用情況,vmstat 命令可以顯示更詳細的記憶體使用情況。/proc/meminfo 檔案包含了系統記憶體的詳細資訊,可以通過 cat 命令檢視。使用者可以根據自己的需求選擇合適的方法來檢視系統記憶體的使用情況,以便及時調整系統設定和優化效能。

到此這篇關於Linux 檢視記憶體使用情況的幾種方法彙總的文章就介紹到這了,更多相關Linux 檢視記憶體使用情況的方法內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com