溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux 內(nèi)存使用率如何檢查

發(fā)布時間:2020-09-24 09:25:04 來源:億速云 閱讀:183 作者:Leah 欄目:開發(fā)技術(shù)

Linux 內(nèi)存使用率如何檢查?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

在排查系統(tǒng)問題,或者應(yīng)用變慢,或者不明原因問題時,第一件事就是要檢查系統(tǒng)的內(nèi)存使用率。

本文講解如何在 Linux 中使用不同的幾個命令來檢查 RAM 內(nèi)存使用率。

一、free 命令

free命令是檢查一個 Linux 系統(tǒng)中內(nèi)存使用率最常用的命令。它顯示關(guān)于內(nèi)存總量,已經(jīng)使用的內(nèi)存以及空閑內(nèi)存的相關(guān)信息。

通常, free 運(yùn)行時加上-h選項(xiàng),意味著以人類可讀的格式打印輸出:

free -h
       total    used    free   shared buff/cache  available
Mem:      3936    1087     252     130    2596    2427
Swap:       0      0      0

這里是每一列的意義:

  • total - 應(yīng)用可以使用的內(nèi)存總數(shù)
  • used - 已經(jīng)被使用的內(nèi)存。 它是這樣計(jì)算的: used = total - free - buffers - cache
  • free - 空閑的/未被使用的內(nèi)存。
  • shared - 這一列可以被忽略。 它僅僅用于向后兼容。
  • buff/cache - 內(nèi)核緩存,頁面緩存和slab
  • avaiable - 可用來啟動新應(yīng)用的估計(jì)可用內(nèi)存,不包括交換內(nèi)存。
     

這個free命令打印關(guān)于物理內(nèi)存和交換內(nèi)存的信息。

二、top 命令

top是一個命令工具,它展示正在運(yùn)行的進(jìn)程的實(shí)時信息。它同時顯示系統(tǒng)概要,包括內(nèi)存使用率。

想要運(yùn)行命令,簡單輸入top:

top

輸出將會看起來像下面這樣:

Linux 內(nèi)存使用率如何檢查

輸出頭部包括以下信息:系統(tǒng)中內(nèi)存,空閑內(nèi)存,被使用內(nèi)存,以及交換內(nèi)存。

這個%MEM一列,提供信息包括每一個運(yùn)行進(jìn)程中被使用的共享內(nèi)存占可用物理內(nèi)存的比例。

三、 /proc/meminfo

最簡單的檢查 RAM 內(nèi)存的方式就是去顯示/proc/meminfo虛擬文件。這個文件被free,top,ps以及其他系統(tǒng)信息命令所使用。

使用less或者cat來查看/proc/meminfo文件的內(nèi)容。

cat /proc/meminfo

文件包含了一系列信息,關(guān)于系統(tǒng)內(nèi)存和交換內(nèi)存使用率:

MemTotal: 4030592 kB
MemFree: 401804 kB
MemAvailable: 2507504 kB
...

這個來自/proc/meminfo文件的信息可以被解析,并且在 shell 腳本中使用。

四、 ps_mem 腳本

ps_mem 是一個 Python 腳本,他可以報(bào)告每個程序的 RAM 使用率。它在 Python 2 和 3 中都可以使用,并且可以使用pip進(jìn)行安裝。

sudo pip3 install ps_mem

運(yùn)行ps_mem需要管理員權(quán)限:

sudo ps_mem

輸出將會以升序顯示包括每一個運(yùn)行程序的內(nèi)存使用率:

 Private +  Shared = RAM used	Program
...
 11.9 MiB + 20.2 MiB = 32.1 MiB	nginx (4)
 8.2 MiB + 42.4 MiB = 50.6 MiB	systemd-journald
 55.8 MiB + 307.2 MiB = 363.0 MiB	php-fpm7.4 (6)
233.9 MiB + 234.0 MiB = 467.9 MiB	redis-server
578.2 MiB + 578.6 MiB =  1.1 GiB	mysqld
---------------------------------
             2.2 GiB
=================================

五、總結(jié)

我們已經(jīng)向你展示一些命令,你可以使用它們來檢查系統(tǒng)內(nèi)存使用率。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI