/proc是一個虛擬文件系統,我們可以通過對它的讀寫操作來做為與kernel實體間進行通信的一種手段。也就是說可以通過修改/proc中的文件,來對當前kernel的行為做出調整。
那么我們可以通過調整/proc/sys/vm/drop_caches來釋放內存。操作如下:
步驟一、先切換到管理員權限
$ sudo su?
步驟二、多次執行 sync 命令
# sync
# sync
手動執行sync命令(描述:sync 命令運行 sync 子例程。如果必須停止系統,則運行sync 命令以確保文件系統的完整性。sync 命令將所有未寫的系統緩沖區寫到磁盤中,包含已修改的 i-node、已延遲的塊 I/O 和讀寫映射文件)。數據一般是先從硬盤調到內存來被CPU進行處理,sync是一個非常牛逼的命令,他可以將放在內存中暫時沒有寫入硬盤的數據寫入到硬盤中,避免數據的丟失。在關機的時候默認的有這個命令,如果是不正常關機的話,開機后也需要多進行這么個幾次命令,好避免運行過程中在內存的數據被調用出來。
步驟三、將/proc/sys/vm/drop_caches值設為3
/proc是一個虛擬文件系統,我們可以通過對它的讀寫操作做為與kernel實體間進行通信的一種手段。也就是說可以通過修改/proc中的文件,來對當前kernel的行為做出調整。那么我們可以通過調整/proc/sys/vm/drop_caches來釋放內存。
# echo 3 > /proc/sys/vm/drop_caches
最后通過?free -m 查看內存使用情況
$ free -m
參數?? ?說明
total?? ?內存總數
used?? ?已經使用的內存數
free?? ?空閑的內存數
shared?? ?多個進程共享的內存總額
buffers Buffer Cache和cached Page Cache 磁盤緩存的大小
-buffers/cache 的內存數:used – buffers – cached
+buffers/cache 的內存數:free + buffers + cached
可用的memory=free memory+buffers+cached。