因為伺服器的記憶體本來就小,只有512m.所以定期清理一下記憶體就很有必要了。
下邊是記憶體清理命令,把這個寫到乙個linux shell的free.sh檔案中。要清理時執行一下就可以了。
#!/bin/bash
free -m
sync
echo
1 >
/proc/sys/vm/drop_caches
echo
2 >
/proc/sys/vm/drop_caches
echo
3 >
/proc/sys/vm/drop_caches
free
-m對於想要自動清理記憶體的,可以寫乙個python指令碼,使用後台執行這個指令碼,定時呼叫上邊的清理記憶體shell就可以了。
#!/usr/bin/env
python
# -*- coding: utf-8 -*-
importtime
importos
whiletrue:
time.sleep(10) #3小時=10800秒
tmp = os.popen('
shfreem.sh').readlines()
for s in tmp:
print s
上邊的是python呼叫系統命令的free.py檔案,把這個檔案和清理shell檔案放在同乙個目錄。然後後台執行這個python指令碼就可以了,上邊的**會每3小時清理一次記憶體,清理後的結果會輸出到標準輸出。
後台執行指令碼的方法:
nohup python free.py >log.txt 2>&1 &
終端中執行上邊的命令會在後台執行free.py同時把輸出結果儲存在log.txt中。
Linux記憶體清理
第一類單位引數 1 b,bytes,以byte為單位顯示記憶體使用情況 2 k,kilo,以kb為單位,這也是預設值 3 m,mega,以mb為單位顯示內容使用情況 4 g,giga,以gb為單位顯示記憶體使用情況 第二類引數 1 h,human,自動將數值轉換為人類易讀形式 2 c,count,展...
Linux 記憶體清理
1.clear pagecache only.sync echo 1 proc sys vm drop caches 2.clear dentries and inodes.sync echo 2 proc sys vm drop caches 3.clear pagecache,dentries ...
清理linux記憶體cache
1.top中的buffers和cached cached快取了對檔案的讀寫,buffers快取了inode,dentry等檔案系統metadata。顯然,metadata大小遠遠小於檔案記憶體,所以buffers一般也遠小於cached。cached的部分叫page cache,buffers的部分...