linux虛擬機器釋放記憶體cache

2021-10-08 11:36:26 字數 1067 閱讀 8451

我們在清理快取前應該先

sync下

因為系統在操作的過程當中,會把你的操作到的檔案資料先儲存到buffer中去,因為怕你在操作的過程中因為斷電等原因遺失資料,所以在你操作過程中會把檔案資料先快取。

所以我們在清理快取先要先把buffe中的資料先寫入到硬碟中,sync命令

sync

手動執行sync命令(描述:sync 命令執行 sync 子例程。如果必須停止系統,則執行sync 命令以確保檔案系統的完整性。sync 命令將所有未寫的系統緩衝區寫到磁碟中,包含已修改的 i-node、已延遲的塊 i/o 和讀寫對映檔案)

echo 3 > /proc/sys/vm/drop_caches

drop_caches的值可以是0-3之間的數字,代表不同的含義:

0:不釋放(系統預設值)

1:釋放頁快取

2:釋放dentries和inodes

3:釋放全部

total——總物理記憶體

used——已使用記憶體,一般情況這個值會比較大,因為這個值包括了cache+應用程式使用的記憶體

free——完全未被使用的記憶體

shared——應用程式共享記憶體

buffers——快取,主要用於目錄方面,inode值等(ls大目錄可看到這個值增加)

cached——快取,用於已開啟的檔案

執行 lsof | grep deleted發現有大量剛剛刪除檔案的程序存在,kill掉程序(或者重啟程序) ok

仍存在的問題:記憶體占用過多的話需要手動清理一下快取

建議:每週檢視一次雲中心的記憶體磁碟使用情況,使用過多的話手動清理一下。

優雅的清理快取

free -g

sync

echo 1 >> /proc/sys/vm/drop_caches

優先:sync & echo 1 > /proc/sys/vm/drop_caches

如果無效再繼續清理:sync & echo 2 > /proc/sys/vm/drop_caches

linux給虛擬機器新增記憶體

近來發現mailbase主機 centos5.5,esxi虛擬主機 記憶體使用率經常在95 以上,原來給其分配是2g記憶體,計畫將記憶體增加到4g,vmware上面的操作略過,下面說一下,vmware上面增加後,在linux主機上如何增加swap空間。一,檢視現有memory及swap free m...

Java虛擬機器的記憶體

一 棧的特點 1 棧描述的是方法執行的記憶體模型。每個方法被呼叫都會建立乙個棧幀 儲存區域性變數 運算元 方法出入口等 2 jvm為每個執行緒建立乙個棧,用於存放該執行緒執行方法的資訊 實際引數 區域性變數等 3 棧屬於執行緒私有,不能實現執行緒間的共享 4 棧的儲存特性是 先進後出,後進先出 5 ...

Linux虛擬機器安裝

其實這個vmware也可以安裝很多系統的 列如常用的 windows server虛擬機器 和linux虛擬機器 這個安裝之後對於我們學習這個更加方便啦 傻瓜式的安裝 下一步至完成 開啟vmware,新建虛擬機器,典型安裝 稍後安裝作業系統 也可以直接映象檔案直安裝因為我們學習過程就用的稍後手動安裝...