在運(yùn)行 Linux 系統(tǒng)的過(guò)程中為了讓電腦或者服務(wù)器以最佳水平運(yùn)行,常常需要監(jiān)控內(nèi)存統(tǒng)計(jì)信息。
那么今天我們就來(lái)看看有哪些方法可以訪(fǎng)問(wèn)所有相關(guān)信息并幫助管理員監(jiān)控內(nèi)存統(tǒng)計(jì)信息。
查看或者獲取 Linux 中的內(nèi)存使用情況既可以通過(guò)命令的方式,也可以通過(guò)桌面端的GUI程序查看。
以下的過(guò)程,所有命令和結(jié)果都是使用 Linux 發(fā)行版 Ubuntu 18.04。
GUI 查看
如果你使用的環(huán)境是帶有圖形界面的 Linux 版本,那么必定是支持使用圖形界面進(jìn)行服務(wù)器管理的。那么,內(nèi)存使用情況的可視化會(huì)使得某些數(shù)據(jù)集更加清晰自然。
如何訪(fǎng)問(wèn)系統(tǒng)監(jiān)視器:
- 導(dǎo)航到顯示應(yīng)用程序。
- 在搜索欄中輸入 System Monitor 并訪(fǎng)問(wèn)該應(yīng)用程序。
- 選擇資源選項(xiàng)卡。
- 顯示實(shí)時(shí)內(nèi)存消耗的圖形概覽,包括歷史信息。
命令獲取
虛擬文件 /proc/meminfo
在 linux 系統(tǒng)中,/proc/meminfo 是一個(gè)報(bào)告可用和已用內(nèi)存量的虛擬文件,它包含有關(guān)系統(tǒng)內(nèi)存使用情況以及內(nèi)核使用的緩沖區(qū)和共享內(nèi)存的實(shí)時(shí)信息。根據(jù)所討論的計(jì)算機(jī)體系結(jié)構(gòu)和操作系統(tǒng)版本,從該文件讀取的輸出可能略有不同。
輸入指令
cat /proc/meminfo
指令返回
命令 free
在命令終端中鍵入 free
數(shù)據(jù)表示已用/可用內(nèi)存和以KB為單位的交換內(nèi)存大小。
total | 總安裝內(nèi)存 |
used | 正在運(yùn)行的進(jìn)程當(dāng)前正在使用的內(nèi)存(used= total – free – buff/cache) |
free | 未使用的內(nèi)存(free= total – used – buff/cache) |
shared | 多個(gè)進(jìn)程共享的內(nèi)存 |
buffers | 作系統(tǒng)保留的內(nèi)存,在進(jìn)程需要時(shí)分配為緩沖區(qū) |
cached | 存儲(chǔ)在 RAM 中最近使用的文件 |
buff/cache | Buffers + Cache |
available | 可用于啟動(dòng)新應(yīng)用程序,無(wú)需交換的內(nèi)存大小 |
和讀取 /proc/meminfo 文件相比,free 命令提供的信息較為精簡(jiǎn),但是它更容易理解。
為了更靈活輸出結(jié)果,free 命令可以添加多個(gè)選項(xiàng)標(biāo)志用來(lái)格式化輸出。下表列出了 free 命令最有用的選項(xiàng)標(biāo)志。
選項(xiàng)標(biāo)志 | 結(jié)果 |
-b | 以 Byte 為單位輸出 |
-k | 以 KB 為單位的輸出 |
-m | 以 MB 為單位的輸出 |
-G | 以 GB 為單位輸出 |
-l | 詳細(xì)的低內(nèi)存和高內(nèi)存統(tǒng)計(jì)信息 |
-o | 舊格式(無(wú) -/+緩沖區(qū)/緩存行) |
-t | RAM + swap |
-s | 多少秒更新一次 |
-C | 更新多少次 |
命令 vmstat
vmstat 命令是報(bào)告虛擬內(nèi)存統(tǒng)計(jì)信息的有用工具。它的返回提供有關(guān)進(jìn)程、內(nèi)存、分頁(yè)、塊 IO、捕獲和 CPU 活動(dòng)的一般信息。
這里列舉一下每個(gè)值的解釋?zhuān)奖愦蠹以诜治鼋Y(jié)果時(shí)查閱。
進(jìn)程
r:等待運(yùn)行時(shí)的進(jìn)程數(shù)。
b:處于不可中斷睡眠狀態(tài)的進(jìn)程數(shù)。
內(nèi)存
swpd:使用的虛擬內(nèi)存大小。
free:空閑內(nèi)存大小。
buff:用作緩沖區(qū)的內(nèi)存大小。
cache:用作緩存的內(nèi)存大小。
交換區(qū)
si:從磁盤(pán)換入的內(nèi)存(/s) 。
so:交換到磁盤(pán)的內(nèi)存(/s)。
IO 塊
bi:從塊設(shè)備接收到的塊(塊/s)。
bo:發(fā)送到塊設(shè)備的塊(塊/s)。
系統(tǒng)
in:每秒中斷次數(shù),包括時(shí)鐘。
cs:每秒上下文切換的次數(shù)。
CPU – 下面都是占總 CPU 時(shí)間的百分比。
us:運(yùn)行非內(nèi)核代碼所花費(fèi)的時(shí)間(用戶(hù)時(shí)間,包括nice time)
sy:運(yùn)行內(nèi)核代碼所花費(fèi)的時(shí)間(系統(tǒng)時(shí)間)
id:空閑時(shí)間,在 Linux 2.5.41 之前,這包括 IO 等待時(shí)間。
wa:等待IO所花費(fèi)的時(shí)間,在 Linux 2.5.41 之前,包含在 idle 中。
st:從虛擬機(jī)竊取的時(shí)間,在 Linux 2.6.11 之前,未知。
命令 top
top 命令可用于檢查每個(gè)進(jìn)程的內(nèi)存和 CPU 使用情況等。包含有以下信息:
正常運(yùn)行時(shí)間
平均負(fù)荷
正在運(yùn)行的任務(wù)數(shù)
登錄用戶(hù)數(shù)
CPU 數(shù)量/CPU 利用率
內(nèi)存/交換區(qū)的系統(tǒng)進(jìn)程
top 命令輸入后,數(shù)據(jù)會(huì)不斷更新,這樣你可以實(shí)時(shí)跟蹤進(jìn)程狀況。
通過(guò) top 命令,除了看到基本的內(nèi)存信息外,還可以通過(guò)有限的交互界面和進(jìn)程互操作。輸入 top 命令時(shí)還可以使用命令行選項(xiàng)來(lái)操縱和配置操作。
如果你需要了解關(guān)于 top 命令的所有可用選項(xiàng)的完整信息,可以通過(guò) Linux 中的 man top 命令查看。
命令 htop
命令 htop 與命令 top 類(lèi)似。但是,命令 htop 的真正優(yōu)勢(shì)在于其用戶(hù)友好的操作環(huán)境和更強(qiáng)大的控件。
命令 htop 輸出包含顏色高亮,為進(jìn)程提供完整的命令行,以及垂直和水平滾動(dòng)的功能。
對(duì)照上圖
- 頂部區(qū)域提供摘要信息并包含圖形儀表和匯總信息統(tǒng)計(jì)。
- 接下來(lái)的部分按進(jìn)程組織了詳細(xì)數(shù)據(jù),這樣您就可以輕松地對(duì)單個(gè)進(jìn)程執(zhí)行操作,支持鼠標(biāo)直接點(diǎn)擊選中進(jìn)程。
- 屏幕底部列出的快捷方式將使您能夠快速操作和配置進(jìn)程,而省去輸入特定指令。
命令 htop 在這個(gè)發(fā)行版里其實(shí)沒(méi)有默認(rèn)安裝,如果發(fā)現(xiàn)指令不存在,可以通過(guò)下面的指令安裝
sudo apt install htop
學(xué)習(xí)可以等,時(shí)間不等人!文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-496779.html
關(guān)注我,帶你學(xué)習(xí)編程領(lǐng)域更多核心技能!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-496779.html
到了這里,關(guān)于一文教會(huì)你Linux 查看內(nèi)存使用情況的幾種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!