2012. 2. 2. 10:34

웹계정 증분 백업 쉘 스크립트(메모)

웹계정에서 MVC 형태로 구성되 있는 웹 계정의 증분 백업
엄밀히 말하면 모델+컨트롤러+뷰(html), 뷰(img,css,js등), 첨부파일 의 개별 백업임
월별로 백업(1일 전체, 1일 이후 증분방식), 62일이 지난 백업 디렉토리 삭제

#!/bin/sh

DATE=$(date +%Y%m%d)
YY=$(date +%Y)
MM=$(date +%m)
DD=$(date +%d)

BACKUPSRC="/home/test/public_html"
BACKUPDST="/restore/backup/"$YY$MM

mkdir $BACKUPDST
touch $BACKUPDST'/'_snapshot.list
touch $BACKUPDST'/'_snapshot_data.list
touch $BACKUPDST'/'_snapshot_public.list

tar -g $BACKUPDST'/'_snapshot.list -czf $BACKUPDST'/'test_$DATE.tar.gz $BACKUPSRC --exclude=$BACKUPSRC'/'data --exclude=$BACKUPSRC'/'public
tar -g $BACKUPDST'/'_snapshot_data.list -czf $BACKUPDST'/'test_data_$DATE.tar.gz $BACKUPSRC'/'data
tar -g $BACKUPDST'/'_snapshot_public.list -czf $BACKUPDST'/'test_public_$DATE.tar.gz $BACKUPSRC'/'public

find /restore/backup -type d -mtime +62 -exec rm -rf {} \;