1. 程式人生 > >VPS每次重啟後必做的優化工作

VPS每次重啟後必做的優化工作

oot eboot 不起作用 手工 默認 centos 內存 ech 基本上

經過很多次的試驗,CentOS、Debian、Ubuntu系統都暫時無法在開機是讓它自啟killall -9命令,用sleep的Shell語句讓它在開機3或5分鐘後再自動執行killall -9,依然不起作用。所以,這項工作必須在每次系統重啟後手工添加。正好昨天收到主機商的郵件,每個VPS空間都收到了服務器要重啟一次的通知:

對於OpenVZ,每次重啟後需要手工執行一次這個Shell命令:
killall -9 syslogd

對於KVM,每次重啟後需要手工執行一次這個Shell命令:
killall -9 syslogd && for ((a=1;a<=5;a++)); do echo 1 > /proc/sys/vm/drop_caches; sleep 10800; a=2; done

說明:上述語句測試過,對CentOS 5極其有效,因為我用的是這個系統的VPS(這個系統運行PHP效率最高);Ubuntu 12測試,能運行,是否起作用未測試。

killall -9 syslogd這句對於服務器優化有至關重要的作用,CentOS 6或以上的版本要用killall -9 rsyslogd
這句的含義是殺死syslogd或rsyslogd進程,如果不關掉此進程,主機下的/var/log目錄,體積會迅速增加,它是系統日誌文件,默認是開啟日誌的。

for ((a=1;a<=5;a++)); do echo 1 > /proc/sys/vm/drop_caches; sleep 10800; a=2; done 這一段命令,作用是讓它每隔10800秒(即3小時)自動釋放一次內存。釋放內存的語句對於KVM、或獨立Linux主機有效,但對OpenVZ不起作用。
OpenVZ想要釋放內存,只能用reboot或shutdown -r now的重啟命令。

不過,幸運的是,OpenVZ平時在運行時,內存消耗數基本上不變,也就是說很可能會自動釋放內存(主機商可能有運行相關軟件)。但KVM必須讓它自動運行內存,因為我的KVM空間,之前沒有自動運行內存,運行了2個多月出現了死機。所以,讓它每隔3小時自動釋放一次內存,實際上24小時、72小時自動釋放一次都可以

VPS每次重啟後必做的優化工作