2006年2月8日 星期三

讓FTP自動刪過期的檔案(適用所有Linux)

 上一次發表一篇「讓FTP自動產生記錄」的文章,這次再針對 FTP 的管理再發表一篇相關的 Script。

我們在管理 FTP 時,另外會遇到一個問題,我們的 FTP 空間有限,而網路資源是無限的,想要將所有資源全放進 FTP 裡是不太可能的事,所以我們就必須定時的清理太舊的檔案,以釋放出有效的空間來放置更新的資源。

  在 FTP 裡更新速度最快的莫過於 Music 及 Movie,所以我們每個月要定期清除太久的 Music 及 Movie,而要怎麼讓 FTP 自動幫我們刪除好幾個月前的 Music 及 Movie 呢,就利用下面這支 Script 來幫我們找出來並刪除掉。

#!/bin/bash
find /ftp/ftproot/02_音樂特區/ -mindepth 2 -maxdepth 2 -mtime +122 -exec rm -rf {} ;
find /ftp/ftproot/03_影音特區/ -maxdepth 1 -mtime +61 -exec rm -rf {} ;

# -mindepth X;從第 X 層目錄為起始,由於我的音樂特區下還有分類,所以從音樂特區的下一層子目錄開始搜尋,並設定只搜尋到第二層目錄即可。
# -maxdepth X;最深到第 X 層目錄為止,影音特區下並無分類,所以設定只搜尋當前的目錄及檔案,並不再往下搜尋。
# -mtime +X;離最後修改時間己超過 X 天。
# -exec command {} ; ;搜尋後,馬上執行後面 command,"{}"為變數,將前面搜尋結果帶入。

接下來只要設定crontab,定時每個月的月初清除一次即可自動將過期的資源刪除。

沒有留言:

張貼留言