자동 백업을 위한 간단한 쉘(Shell) 스크립트 - 메일발송까지

오랜만에 crontab에서 사용할 백업용 쉘 스크립트를 정리했습니다. 이런건 대부분 웹에서 찾아서 쓰는데 덤프기능외에 메일발송도 되면 좋을 거 같아서 추가했습니다. 잘 짜여진 건 아니지만 그럭저럭 쓸 만 하네요. 참고로 Ubuntu 시스템에서만 테스트해봐서 다른 배포판에서는 될련지 모르겠습니다. 아래 쉘을 적당히 backup.sh라고 만들고 crontab에 등록하여 사용하세요. 

여기서 사용된 백업경로, DB명, DB아이디/패스워드, 메일주소 등은 예시로 든 것이니 환경에 맞춰 변경하세요.

다운로드 : backup.sh.zip

#!/bin/sh

#실행시각
NOW_DATE=`date`

#백업날짜
BACKUP_DATE=`date +"%Y%m%d"`

#웹루트
WWWROOT_DIR=/home/sample/public_html

#백업파일을 저장할 경로
BACKUP_DIR=/home/sample/backup

#MySQL백업
mysqldump -usampledb -psampledbpass sampledb > ${BACKUP_DIR}/${BACKUP_DATE}.sql

#웹소스백업
tar zcvf ${BACKUP_DIR}/${BACKUP_DATE}.tar.gz ${WWWROOT_DIR} --exclude=${WWWROOT_DIR}/WEB-INF

#소유주 및 권한변경(타 계정의 접근 차단용)
chown -R root.root ${BACKUP_DIR}
chmod -R 700 ${BACKUP_DIR}

# 오래된 백업데이터 삭제(3일 이상 된 것)
find ${BACKUP_DIR}/ -mtime +3 -exec rm -f {} \;

#메일 발송 (수신메일추가는 공백으로 구분하여 마지막에 열거)
echo "백업시각: ${NOW_DATE}\n백업경로: ${BACKUP_DIR}\n\n위와 같이 DB와 웹파일이 백업되었습니다." | mail -a "From:서버관리자 <noreply@sample.com>" -a "Content-Type: text/plain; charset='UTF-8'" -s "자동서버백업안내" manager@sample.com

exit 0

5 responses so far

마메쿤

마메쿤 - 4월 26, 2013 at 오후 2:00

실용적이라 좋습니다!

전 쉘 같은 텍스트 환경에 울렁증이 있어서 큰일입니다.
gui환경에 익숙하다보니 이런 기능을 만들거나 구현하려면 막막한 기분부터 들어요.
이만큼 심플하고 명확하고 강력한 것도 없는데 말이죠.

마메쿤

마메쿤 - 4월 26, 2013 at 오후 2:02

이제 댓글 되네요.ㅎㅎㅎ

지난번에 올리신 암호화 포스팅에도 댓글이 안 달렸었는데 진작 물어볼 걸 그랬네요.ㅋㅋ

장창학

장창학 - 4월 26, 2013 at 오후 2:11

하하 오랜만이시네요~ 일본은 어떠신지요? 스팸이 하도 많아서 옵션을 켜놨는데 문제가 있었는지 죄다 스팸으로 처리해버리네요.

webcasting server

webcasting server - 7월 22, 2018 at 오전 4:27

I think that is one of the so much significant information for me.
And i'm happy reading your webcasting service. But wanna
remark on some basic things, The web site taste is
wonderful, the webcasting services is truly nice
: D. Just right task, cheers

online marketing company

online marketing company - 1월 25, 2019 at 오전 7:08

The usage of quality analysis tool would make sure that
correct operational details are entered by application's component.
There are specialized websites, offering coupons for
UK retailers in addition to their different products presented.

On another level, the telecommunication industry has also did
start to bank on the unique idea of ecommerce billing services.

Leave a Comment

Leave this field empty:




Powered by

© 2010-2019 NOOREE.COM