linux 系統(tǒng)管理員必備技能:五種監(jiān)控內(nèi)存使用的方法
Linux 系統(tǒng)擁有豐富的命令行工具,為系統(tǒng)管理提供強大支持。本文將介紹五種不同的方法,幫助 Linux 管理員高效監(jiān)控系統(tǒng)內(nèi)存使用情況,即使在無圖形界面的服務(wù)器環(huán)境下也能輕松掌握。這些方法無需額外安裝軟件,所有命令都包含在標(biāo)準(zhǔn) Linux 系統(tǒng)中。以下方法在 Ubuntu 18.04 服務(wù)器上測試,但適用于大多數(shù) Linux 發(fā)行版。
方法一:top 命令
top 命令提供系統(tǒng)實時運行狀態(tài)的動態(tài)視圖,包括每個進(jìn)程的內(nèi)存使用情況。這對于識別占用大量內(nèi)存的進(jìn)程至關(guān)重要,例如多個 chrome 進(jìn)程(每個標(biāo)簽頁一個進(jìn)程)。
圖示:top 命令顯示多個 Chrome 進(jìn)程,每個標(biāo)簽頁對應(yīng)一個進(jìn)程。
通過 top -o %MEM 命令,可以按內(nèi)存使用率排序進(jìn)程列表,方便識別內(nèi)存占用最高的進(jìn)程 (圖 2)。 top 命令還會顯示交換空間使用情況。
圖示:top 命令按內(nèi)存使用率排序的進(jìn)程列表。
方法二:free 命令
free 命令提供系統(tǒng)內(nèi)存使用情況的靜態(tài)快照,顯示已用和可用物理內(nèi)存、交換內(nèi)存以及內(nèi)核緩沖區(qū)和緩存信息。
使用 free -m (以 MB 為單位) 或 free -g (以 GB 為單位) 可以更清晰地查看內(nèi)存使用情況。 free -mt 則會計算每列的總和。
圖示:free 命令的輸出,顯示內(nèi)存使用情況。
圖示:free -m 命令輸出,以 MB 為單位顯示內(nèi)存使用情況。
圖示:free -mt 命令輸出,顯示內(nèi)存使用情況總計。
方法三:vmstat 命令
vmstat 命令報告虛擬內(nèi)存統(tǒng)計信息,包括進(jìn)程、內(nèi)存、分頁、阻塞 I/O、中斷、磁盤和 CPU 信息。使用 vmstat -s 可以獲得更易于閱讀的單列輸出。
圖示:vmstat -s 命令輸出,顯示虛擬內(nèi)存統(tǒng)計信息。
方法四:dmidecode 命令
dmidecode 命令用于解碼 DMI 表,提供已安裝內(nèi)存的詳細(xì)信息。使用 sudo dmidecode -t 17 命令可以查看所有內(nèi)存設(shè)備信息。輸出可能較長,建議使用 sudo dmidecode -t 17 > dmi_info 將結(jié)果保存到文件或使用 sudo dmidecode -t 17 | less 命令分頁查看。
圖示:dmidecode -t 17 命令輸出,顯示內(nèi)存設(shè)備信息。
方法五:/proc/meminfo 文件
/proc/meminfo 文件是一個虛擬文件,包含系統(tǒng)內(nèi)存的實時信息。可以使用 less /proc/meminfo 命令查看該文件內(nèi)容。 為了方便閱讀,可以使用 egrep –color ‘Mem|Cache|Swap’ /proc/meminfo 命令過濾并高亮顯示關(guān)鍵信息。
圖示:/proc/meminfo 文件內(nèi)容,顯示系統(tǒng)內(nèi)存信息。
圖示:egrep –color ‘Mem|Cache|Swap’ /proc/meminfo 命令輸出,過濾并高亮顯示關(guān)鍵信息。
建議查閱每個命令的手冊頁 (例如 man top、man free、man vmstat、man dmidecode) 以深入了解其用法和選項。 學(xué)習(xí) Linux 基金會和 edX 提供的免費 “Linux 簡介” 課程可以進(jìn)一步提升 Linux 技能。