그곰의 생활

백업 쉘 스크립트 본문

Server System/Linux System

백업 쉘 스크립트

그곰 2012. 1. 13. 09:49

**.sh라는 쉘 스크립트 파일 형식을 vi로 만든다.

그리고 아래 소스를 입력하고 서버 상황에 맞게 수정한다.


#!/bin/sh

#백업일을 이용 파일명 설정
dat=`date +%Y%m%d%H`

#생성된지 30일 이상된 백업파일 삭제
find /home/backup/db/*.tgz -mtime +30 -exec rm -f {} \;
find /home/backup/source/*.tgz -mtime +30 -exec rm -f {} \;

#DB백업폴더 이동
cd /home/backup/db

#MySQL 서비스 중지
service mysqld stop

#DB 저장폴더 압축파일 생성
tar cvfpz mysql_$dat.tgz /var/lib/mysql/mysql

#MySQL 서비스 시작
service mysqld start

#DB백업파일 권한 설정
chmod 700 *.tgz
chown 백업User:백업Usergroup *.tgz

#소스백업폴더 이동
cd /home/backup/source

#Apache 서비스 중지
service httpd stop

#소스 저장폴더 압축파일 생성
tar cvfpz abcd_$dat.tgz /home/abcd

#Apache 서비스 시작
service httpd start

#소스백업파일 권한 설정
chmod 700 *.tgz
chown abcd:abcd *.tgz

쉘 스크립트 파일을 생성한 후

/etc/crontab 에 아래 구문을 넣어준다.

00 3 * * * root '쉘 스크립트 파일 전체경로'

위 구문을 추가해주면 매일 새벽 3시에 백업 쉘 스크립트가 실행된다.


Comments