*우분투 크론 (예약작업) 설정 | ||
우선작업 /var/ 아래 cron_backup 이라는 폴더를 생성 하며 755 권한으로 설정 웹소스 파일 백업 /var/cron_backup/ 디렉토리 아래 vi web_souce_bak 생성 DB 파일 백업 /var/cron_backup/ 디렉토리 아래 db_mysql_bak 생성 모든 백업 실행 파일 및 데이터는 /var/cron_backup 디렉토리 아래 두도록 한다. | ||
1 . 백업(웹) 쉘스크립트 만들기 # vi /var/cron_backup/web_souce_bak | ||
# vi /var/cron_backup/web_souce_bak #!/bin/sh tar -zcvf /var/cron_backup/home_backup_$(date +%Y%m%d).tar /home/ gzip -f /var/cron_backup/home_backup_$(date +%Y%m%d).tar tar -zcvf /var/cron_backup/www_backup_$(date +%Y%m%d).tar /var/www/ gzip -f /var/cron_backup/www_backup_$(date +%Y%m%d).tar |
$(date+%Y%m%d%H%M%S) 출력 : 년월일시분초 홈 디렉토리 www 디렉토리 백업 | |
2 . 백업(DB) 쉘스크립트 만들기 #vi /var/cron_backup/db_mysql_bak | ||
#vi /var/cron_backup/db_mysql_bak #!/bin/sh mkdir /var/cron_backup/mysql_$(date +%Y%m%d) /usr/bin/mysqldump -u root -p비밀번호 -A > /var/cron_backup/mysql_$(date +%Y%m%d)/db_all_bak.sql |
/var/cron_backup/ 디렉토리 아래 mysql_년월일 디렉토리를 만들고 그안에 모든 DB 를 백업 | |
3 . 크론에 수행작업 등록하기 | ||
# crontab -e // 크론 등록하기 # m h dom mon dow command 00 4 * * 1 /bin/sh /var/cron_backup/web_souce_bak 30 4 * * * /bin/sh /var/cron_backup/db_mysql_bak |
웹소스는 월요일 새벽4시 실행 디비 소스는 매일 새벽4시반 실행 | |
4 . 등록된 예약작업 확인 | ||
crontab -l tail -f /var/log/syslog |
예약내용 확인 시스템 로그 보기(안해도됨) | |
추가 설명 | ||
crontab -e 사용시 나오는 # m h dom mon dow command m = 분 설정 minute (0-59) 30 * * * * 실행문 // 설정 하면 매시간 30분 마다 실행문 실행 h = 시간 설정 hour (0-23 , 0 저녁) 30 12 * * * 실행문 // 설정 하면 매일 12시30분 마다 실행문 실행 dom = 일자 설정 day (1~31) 30 12 5 * * 실행문 // 설정 하면 매달 5일 12시30분 마다 실행문 실행 mon = 월 설정 month (1~12) 30 12 5 7 * 실행문 // 설정 하면 매년 7월 5일 12시30분 마다 실행문 실행 dow = 요일 설정 weekday ( 0~6 , 0 = Sunday ) 30 12 * * 0 실행문 // 설정 하면 매주 일요일 12시30분 마다 실행 |