PHP 파일 백업하는 쉘 스크립트(날짜별 보관)
백업을 하는 쉘스크립트 입니다. 백업은 보안에서도 언급이 많이 될정도로 중요합니다
일반적으로 잘 일어나지 않지만 데이터 망실에 대한 부분은 나에게도 일어 날 수 있는 부분으로 실시간 백업이 어려우면 그에 대한 차선책이라도 사용해야 하는 것이 맞습니다.
● 기능
- 특정 확장자 일 단위로 보관하는 기능.
- 불필요한 로그파일이라고 생각되는것은 삭제
- 사용자가 파일 업로드되는 디렉토리명 목록 별도 보관
----------------------------------------------------------------
#!/bin/bash
# 1) 특정 디렉토리의 오래된(1주일) 파일은 삭제 한다.
# find /www/log/*.txt -mtime +7 -exec rm {} \;
# 2) 특정 파일 별도 보관
DATE_YMD=`date +%y%m%d`
DATE_MNT=`date +%m`
DATEWEEK=`date +%u`
DATE_DAY=`date +%d`
HOSTNAME=`hostname`
DIR_DEST=/BAK/php/${DATE_DAY}
mkdir ${DIR_DEST}
# 특정파일 - 압축파일 감안해서 확장자 적용
find /WWW/ \( -name "*.php" -o -name "*.sh" -o -name "*.css*" -o -name "*.js*" \) -exec cp -a --parents {} ${DIR_DEST} \;
# 웹서버 권한이 있는 디렉토리는 별도 보관한다. - 보통 파일 업로드
find /WWW/ -user apache -type d > ${DIR_DEST}/apache_user_dir_list.txt