2011
10.21
10.21
因為上次把自己 VM 不小心刪掉又救回來的那件事情,所以開始著手計畫備份所有資料。
這隻是我寫的 Shell Script,每次執行都會把 $WWW_DIR 下面的所有目錄個別壓縮成 tgz 檔案,並且把 *.tgz 搬移到 $BACKUP_DIR 下面,然後刪掉 $BACKUP_DIR 目錄下大於一個月的備份。
目前我是放到 cron table 裡面跑,每三天會跑一次。
#!/bin/bash
date=`date +%Y-%m-%d`
BACKUP_DIR="/data/www_backup/"
WWW_DIR="/var/www/"
WWW_DIR_CMD=`ls $WWW_DIR`
cd $WWW_DIR
for f in $WWW_DIR_CMD;
do
backup_file_name=$f
backup_file_new_name=$f-$date.tgz
backup_cmd="tar -zcf $date-$backup_file_name.tgz $backup_file_name"
echo $backup_cmd
`$backup_cmd`
done
mv_cmd="mv $WWW_DIR*.tgz $BACKUP_DIR"
echo $mv_cmd
`$mv_cmd`
del_cmd="find $BACKUP_DIR -type f -mtime +30 -delete"
echo $del_cmd
`$del_cmd`
如果不想要輸出訊息,就在 crontab 裡面把輸出導向到 /dev/null 即可。

No Comment.
Add Your Comment