Linux如何做批處理自動保留幾天的備份呢
來源:程序員人生 發布時間:2014-06-16 06:30:15 閱讀次數:2589次
LINUX下的自動備份對數據的安全很重要,當如何做到自動備份,之保留最近幾天的數據呢?下面以布衣分類生活網www.yes81.net為例子來進行測試,網站的論壇大家上傳提交的附件、布衣生活網站的主系統上傳的附件以及數據庫是必須進行備份的一個重要數據。
該服務器采用陣列雙硬盤,因此硬盤崩潰丟失數據是不擔心的,主要是擔心因系統出現問題或者誤操作造成的數據丟失。
1、硬盤分區backdata是專門作為備份使用的
2、mydata是數據分區,mysql是數據庫文件目錄;bbs 是論壇的文件目錄;yes81是主站yes81.net的文件目錄
現在我們的目標是完成每天自動備份,并且只保留10天的數據,10天前的數據自動刪除
為此我們編寫了下面的自動備份的批處理文件,并且在crontab排程里面增加了每天早上3點自動執行的任務。
-----------------bacpupdata.bat-------------------------------------
cd /backdata
#----刪除10天前的備份
date -d -15-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
date -d -14-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
date -d -13-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
date -d -12-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
date -d -11-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
date -d -10-day +%Y-%m-%d > dd.txt
read dateold < dd.txt
rm dd.txt -f
rm -rf $dateold
#-----新建立當天的文件備份
date -d 0-day +%Y-%m-%d > dd.txt
read date1 < dd.txt
rm dd.txt -f
mkdir $date1
rar a /backdata/$date1/database$date1.rar /mydata/mysql
rar a /backdata/$date1/bbs$date1.rar /mydata/bbs/WEB-INF/lybbs/upload
rar a /backdata/$date1/buyi$date1.rar /mydata/yes81
本貼的版權屬于http://free.yes81.net/yes81/view-1169.html,轉載請復制這個地址
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈