新聞中心
free 命令顯示系統(tǒng)內(nèi)存的使用情況,包括物理內(nèi)存、交換內(nèi)存(swap)和內(nèi)核緩沖區(qū)內(nèi)存,下面為大家分享一下free 命令常用實例。

Linux free 命令
讓我們看一下 free 命令的語法:
free [options]
free 命令的 man 手冊如是說:
free 命令顯示了系統(tǒng)的可用和已用的物理內(nèi)存及交換內(nèi)存的總量,以及內(nèi)核用到的緩存空間。這些信息是從 /proc/meminfo 中得到的。
接下來我們用問答的方式了解一下 free 命令是怎么工作的。
Q1. 怎么用 free 命令查看已使用和未使用的內(nèi)存?
這很容易,您只需不加任何參數(shù)地運行 free 這條命令就可以了:
free
這是 free 命令在我的系統(tǒng)上的輸出:
這些列是什么意思呢?
-
total – 安裝的內(nèi)存的總量(等同于 /proc/meminfo 中的 MemTotal 和 SwapTotal)
-
used – 已使用的內(nèi)存(計算公式為:used = total – free – buffers – cache)
-
free – 未被使用的內(nèi)存(等同于 /proc/meminfo 中的 MemFree 和 SwapFree)
-
shared – 通常是臨時文件系統(tǒng)使用的內(nèi)存(等同于 /proc/meminfo 中的 Shmem;自內(nèi)核 2.6.32 版本可用,不可用則顯示為 0)
-
buffers – 內(nèi)核緩沖區(qū)使用的內(nèi)存(等同于 /proc/meminfo 中的 Buffers)
-
cache – 頁面緩存和 Slab 分配機(jī)制使用的內(nèi)存(等同于 /proc/meminfo 中的 Cached 和 Slab)
-
buff/cache – buffers 與 cache 之和
-
available – 在不計算交換空間的情況下,預(yù)計可以被新啟動的應(yīng)用程序所使用的內(nèi)存空間。與 cache 或者 free 部分不同,這一列把頁面緩存計算在內(nèi),并且不是所有的可回收的 slab 內(nèi)存都可以真正被回收,因為可能有被占用的部分。(等同于 /proc/meminfo 中的 MemAvailable;自內(nèi)核 3.14 版本可用,自內(nèi)核 2.6.27 版本開始模擬;在其他版本上這個值與 free 這一列相同)
Q2. 如何更改顯示的單位呢?
如果需要的話,你可以更改內(nèi)存的顯示單位。比如說,想要內(nèi)存以兆為單位顯示,你可以用 -m 這個參數(shù):
free -m
初學(xué)者應(yīng)該看看的6個free命令例子初學(xué)者應(yīng)該看看的6個free命令例子
同樣地,你可以用 -b 以字節(jié)顯示、-k 以 KB 顯示、-m 以 MB 顯示、-g 以 GB 顯示、–tera 以 TB 顯示。
Q3. 怎么顯示可讀的結(jié)果呢?
free 命令提供了 -h 這個參數(shù)使輸出轉(zhuǎn)化為可讀的格式。
free -h
用這個參數(shù),free 命令會自己決定用什么單位顯示內(nèi)存的每個數(shù)值。例如:
Q4. 怎么讓 free 命令以一定的時間間隔持續(xù)運行?
您可以用 -s 這個參數(shù)讓 free 命令以一定的時間間隔持續(xù)地執(zhí)行。您需要傳遞給命令行一個數(shù)字參數(shù),做為這個時間間隔的秒數(shù)。
例如,使 free 命令每隔 3 秒執(zhí)行一次:
free -s 3
如果您需要 free 命令只執(zhí)行幾次,您可以用 -c 這個參數(shù)指定執(zhí)行的次數(shù):
free -s 3 -c 5
上面這條命令可以確保 free 命令每隔 3 秒執(zhí)行一次,總共執(zhí)行 5 次。
注:這個功能目前在 Ubuntu 系統(tǒng)上還存在 問題,所以并未測試。
Q5. 怎么使 free 基于 1000 計算內(nèi)存,而不是 1024?
如果您指定 free 用 MB 來顯示內(nèi)存(用 -m 參數(shù)),但又想基于 1000 來計算結(jié)果,可以用 –sj 這個參數(shù)來實現(xiàn)。下圖展示了用與不用這個參數(shù)的結(jié)果:
初學(xué)者應(yīng)該看看的6個free命令例子初學(xué)者應(yīng)該看看的6個free命令例子
Q6. 如何使 free 命令顯示每一列的總和?
如果您想要 free 命令顯示每一列的總和,你可以用 -t 這個參數(shù)。
free -t
如下圖所示:
總結(jié)
free 命令對于系統(tǒng)管理來講是個極其有用的工具。它有很多參數(shù)可以定制化您的輸出,易懂易用。我們在本文中也提到了很多有用的參數(shù)。練習(xí)完之后,請您移步至 man 手冊了解更多內(nèi)容。
網(wǎng)頁標(biāo)題:Linux下free命令常用實例
文章分享:http://fisionsoft.com.cn/article/djgdoso.html


咨詢
建站咨詢
