天天看點

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

系統管理者必須維護他們伺服器的健康運作。其中一個重要的部分就是記憶體。當伺服器記憶體使用率過高時,它會降低伺服器的性能。Linux有一個稱為 free 的工具,來監控記憶體使用率。

free 指令是什麼

free 指令是一個顯示系統中空閑和已用記憶體大小的工具。free 指令的輸出和 top 指令相似。大多數Linux發行版已經含有 free 指令。

如何運作 free

想要運作,隻需在控制台輸入free 即可。不帶選項運作會顯示一個以KB為機關的預設輸出。

$ free

從上面的截圖我們看到:

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

記憶體 (以KB計)

■Total(全部) : 1026740

■Used(已用) : 843396

■Free(可用) : 183344

■Shared(共享) : 0

■Buffers(塊裝置緩存區) : 52704

■Cached(檔案緩存) : 376384

buffers是指用來給塊裝置做的緩沖大小,他隻記錄檔案系統的metadata以及 tracking in-flight pages.

cached是用來給檔案做緩沖。

那就是說:buffers是用來存儲,目錄裡面有什麼内容,權限等等。而cached直接用來記憶我們打開的檔案

Swap (以KB計)

■Total(全部) : 1045500

■Used(已用) : 3376

■Free(可用) : 1042124

當你看見 buffer/cache 的空閑空間低或者 swap 的空閑空間低,說明記憶體需要更新了。這意味這記憶體使用率很高。請注意 shared(共享)記憶體列應該被忽略 ,因為它已經被廢棄了。

以其它單元顯示記憶體資訊

如我們先前提到的,預設 free 會以 KB 為機關顯示資訊。free 同樣提供給我們 b (B), -k (KB), -m (MB), -g (GB) and –tera (TB)這些機關。要顯示我們想要的機關,隻要選擇一個并在 free 後面跟上。下面一個是以 MB 為機關的輸出樣例。

$ free -m

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

這個技巧同樣适用于-b, -k, -g 以及 –tera 選項。

以适于人類可讀方式顯示記憶體資訊

free 同樣提供了-h選項,這意味着适于人類可讀(譯注:系統上可能并不存在-h選項,已被-m取代)。那麼這與其它的選項有什麼不同呢,如-m(MB)選項? 可見的最大不同是-h選項會在數字後面加上适于人類可讀的機關。讓我們看一個例子。

$ free -h

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

如我們一起看到的,在1,0數字後這裡是G(GB)字母。當數字并沒有達到GB時,free足夠聰明來知道并在每個數字後面跟上合适的機關。後面的M - 數字929告訴我們它有929MB(譯注: 原文為929 number tell us its 969 Megabytes,這裡應該為輸入錯誤)。

間隔顯示 free

作為一個狀态檢查工具,最好的統計記憶體使用率的方法是使用延遲間隔。這麼做的話,我們可以使用-s選項後面跟上我們想要間隔的N秒數。我們可以在後面合并幾個選項來使輸出滿足我們的需求。假如我們想要每3秒統計一次記憶體使用率并且适于人類可讀,那麼就像這樣做:

$ free -hs 3

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

顯示高低記憶體使用率

如果我們想要知道高低記憶體統計,我們可以使用-l選項。下面是一個例子。

$ free -l

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

顯示 Linux 全部記憶體

如果我們需要每列的總計資訊,我們可以在 free 指令後面跟上 -t 選項。這會在字底部額外加入一行顯示。

$ free -t

檢視linux電腦記憶體free指令,Linux的free指令來顯示系統中空閑和已使用的記憶體

總結

除了vmstat以外,free 指令也是一個用于統計記憶體使用率的簡單統計工具。用這個你可以快速檢視你的 Linux 記憶體資訊。free 指令使用 /proc/meminfo 作為基準來顯示記憶體使用率資訊。如往常一樣,你可以在控制台下輸入 man free來擷取更多關于 free 的資訊。