2015-05-08 62 views
2

我們知道/ tmp目錄在每次啓動時都會被默認清除,因爲TMPTIME默認爲0。如何在WHM服務器上設置TMPTIME幾小時。

在這裏,您可以更改時間在下列文件:

/etc/default/rcS 

清除每次啓動時是不理想的,它永遠不會重新啓動,就像一個服務器的機器。我的/ tmp中有超過500,000個文件需要5Gb空間,因爲我的服務器有378天的正常運行時間。

我的問題是如何在幾小時內設置TMPTIME so/tmp文件自動刪除。

我該怎麼辦?

回答

1

TMPTIME用於配置在啓動時刪除臨時文件的腳本。它設定了在刪除之前可能有的最大年齡,例如,如果它設置爲5,那麼腳本運行時會刪除5天以前的所有內容。腳本本身是安裝/tmp目錄的腳本,通常只在重新啓動時運行。正如你所說的,這臺服務器不會經常重啓,所以這對你來說沒有什麼用處。

對您的問題可能的解決方案是tmpreaper命令。它可以從包存儲庫中獲得,例如在Debian系統上的sudo apt-get install tmpreaper或基於RedHat的系統上的sudo yum -y install tmpreaper

一旦你安裝它可以如下運行:

tmpreaper [options] <time_spec> <dirs> 

爲了給刪除一切不是從/tmp通訊簿12小時之前的例子,你會怎麼做:

tmpreaper 12h /tmp 

然後,您可以將其添加到小時的crontab中,以便每小時刪除12小時以前的文件,例如:

17 * * * * tmpreaper 12h /tmp 

我會在測試的時候使用-t選項進行推薦,以確認它會在您正確運行之前刪除所期望的內容。這將列出它將刪除而不實際刪除的文件。要獲得更好的控制權,請參閱man tmpreaper以瞭解控制刪除文件類型等的選項。

如果您不想安裝tmpreaper,您可以使用find命令(例如, find /tmp -mmin +720 -delete刪除至少12小時前修改的文件。 tmpreaper更側重於手邊的任務,所以你可能會發現它更容易處理。