Linux?查看內(nèi)存使用情況的幾種方法匯總
在運(yùn)行 Linux 系統(tǒng)的過程中為了讓電腦或者服務(wù)器以最佳水平運(yùn)行,常常需要監(jiān)控內(nèi)存統(tǒng)計信息。
那么今天我們就來看看有哪些方法可以訪問所有相關(guān)信息并幫助管理員監(jiān)控內(nèi)存統(tǒng)計信息。
查看或者獲取 Linux 中的內(nèi)存使用情況既可以通過命令的方式,也可以通過桌面端的GUI程序查看。
以下的過程,所有命令和結(jié)果都是使用 Linux 發(fā)行版 Ubuntu 18.04。
GUI 查看
如果你使用的環(huán)境是帶有圖形界面的 Linux 版本,那么必定是支持使用圖形界面進(jìn)行服務(wù)器管理的。那么,內(nèi)存使用情況的可視化會使得某些數(shù)據(jù)集更加清晰自然。
如何訪問系統(tǒng)監(jiān)視器:
導(dǎo)航到顯示應(yīng)用程序。 在搜索欄中輸入 System Monitor 并訪問該應(yīng)用程序。 選擇資源選項(xiàng)卡。 顯示實(shí)時內(nèi)存消耗的圖形概覽,包括歷史信息。
命令獲取
虛擬文件 /proc/meminfo
在 linux 系統(tǒng)中,/proc/meminfo 是一個報告可用和已用內(nèi)存量的虛擬文件,它包含有關(guān)系統(tǒng)內(nèi)存使用情況以及內(nèi)核使用的緩沖區(qū)和共享內(nèi)存的實(shí)時信息。根據(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 | 多個進(jìn)程共享的內(nèi)存 |
buffers | 作系統(tǒng)保留的內(nèi)存,在進(jìn)程需要時分配為緩沖區(qū) |
cached | 存儲在 RAM 中最近使用的文件 |
buff/cache | Buffers + Cache |
available | 可用于啟動新應(yīng)用程序,無需交換的內(nèi)存大小 |
和讀取 /proc/meminfo 文件相比,free 命令提供的信息較為精簡,但是它更容易理解。
為了更靈活輸出結(jié)果,free 命令可以添加多個選項(xiàng)標(biāo)志用來格式化輸出。下表列出了 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)計信息 |
-o | 舊格式(無 -/+緩沖區(qū)/緩存行) |
-t | RAM + swap |
-s | 多少秒更新一次 |
-C | 更新多少次 |
命令 vmstat
vmstat 命令是報告虛擬內(nèi)存統(tǒng)計信息的有用工具。它的返回提供有關(guān)進(jìn)程、內(nèi)存、分頁、塊 IO、捕獲和 CPU 活動的一般信息。
這里列舉一下每個值的解釋,方便大家在分析結(jié)果時查閱。
進(jìn)程
r:等待運(yùn)行時的進(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:從磁盤換入的內(nèi)存(/s) 。
so:交換到磁盤的內(nèi)存(/s)。
IO 塊
bi:從塊設(shè)備接收到的塊(塊/s)。
bo:發(fā)送到塊設(shè)備的塊(塊/s)。
系統(tǒng)
in:每秒中斷次數(shù),包括時鐘。
cs:每秒上下文切換的次數(shù)。
CPU – 下面都是占總 CPU 時間的百分比。
us:運(yùn)行非內(nèi)核代碼所花費(fèi)的時間(用戶時間,包括nice time)
sy:運(yùn)行內(nèi)核代碼所花費(fèi)的時間(系統(tǒng)時間)
id:空閑時間,在 Linux 2.5.41 之前,這包括 IO 等待時間。
wa:等待IO所花費(fèi)的時間,在 Linux 2.5.41 之前,包含在 idle 中。
st:從虛擬機(jī)竊取的時間,在 Linux 2.6.11 之前,未知。
命令 top
top 命令可用于檢查每個進(jìn)程的內(nèi)存和 CPU 使用情況等。包含有以下信息:
正常運(yùn)行時間 平均負(fù)荷 正在運(yùn)行的任務(wù)數(shù) 登錄用戶數(shù) CPU 數(shù)量/CPU 利用率 內(nèi)存/交換區(qū)的系統(tǒng)進(jìn)程
top 命令輸入后,數(shù)據(jù)會不斷更新,這樣你可以實(shí)時跟蹤進(jìn)程狀況。
通過 top 命令,除了看到基本的內(nèi)存信息外,還可以通過有限的交互界面和進(jìn)程互操作。輸入 top 命令時還可以使用命令行選項(xiàng)來操縱和配置操作。
如果你需要了解關(guān)于 top 命令的所有可用選項(xiàng)的完整信息,可以通過 Linux 中的 man top 命令查看。
命令 htop
命令 htop 與命令 top 類似。但是,命令 htop 的真正優(yōu)勢在于其用戶友好的操作環(huán)境和更強(qiáng)大的控件。
命令 htop 輸出包含顏色高亮,為進(jìn)程提供完整的命令行,以及垂直和水平滾動的功能。
對照上圖
頂部區(qū)域提供摘要信息并包含圖形儀表和匯總信息統(tǒng)計。 接下來的部分按進(jìn)程組織了詳細(xì)數(shù)據(jù),這樣您就可以輕松地對單個進(jìn)程執(zhí)行操作,支持鼠標(biāo)直接點(diǎn)擊選中進(jìn)程。 屏幕底部列出的快捷方式將使您能夠快速操作和配置進(jìn)程,而省去輸入特定指令。
命令 htop 在這個發(fā)行版里其實(shí)沒有默認(rèn)安裝,如果發(fā)現(xiàn)指令不存在,可以通過下面的指令安裝
sudo apt install htop
Linux 查看內(nèi)存使用情況的幾種方法都是基于命令行的,需要用戶具備一定的 Linux 命令行操作經(jīng)驗(yàn)。其中,free 命令是最常用的方法,可以直接顯示系統(tǒng)內(nèi)存的使用情況。top 和 htop 命令可以實(shí)時監(jiān)控系統(tǒng)的內(nèi)存使用情況,vmstat 命令可以顯示更詳細(xì)的內(nèi)存使用情況。/proc/meminfo 文件包含了系統(tǒng)內(nèi)存的詳細(xì)信息,可以通過 cat 命令查看。用戶可以根據(jù)自己的需求選擇合適的方法來查看系統(tǒng)內(nèi)存的使用情況,以便及時調(diào)整系統(tǒng)配置和優(yōu)化性能。
到此這篇關(guān)于Linux 查看內(nèi)存使用情況的幾種方法匯總的文章就介紹到這了,更多相關(guān)Linux 查看內(nèi)存使用情況的方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux下Apache安裝/增加mod_rewrite模塊的方法
如果你的apache已經(jīng)安裝好了,現(xiàn)在只想編譯出mod_rewrite.so模塊,在apache中進(jìn)行加載,下面我們就介紹這個方法。2011-04-04詳解Linux 下開發(fā)微信小程序安裝開發(fā)工具
這篇文章主要介紹了詳解Linux 下開發(fā)微信小程序安裝開發(fā)工具的相關(guān)資料,需要的朋友可以參考下2017-06-06詳解 MAC/Linux Vi配置環(huán)境變量及Java環(huán)境變量配置
這篇文章主要介紹了詳解 MAC/Linux Vi配置環(huán)境變量及Java環(huán)境變量配置的相關(guān)資料,需要的朋友可以參考下2017-06-06