오늘 이시간에는 cron 데몬을 이용한 스케쥴러 관리에 대해서 알아보도록 하자.
우선 Daemon의 정의가 무엇인지를 아는것이 이해의 첫번째 코스인것 같다.
[1] Daemon이란?
정의 : OS에서 백그라운드로 구동되고있는 프로세스 를 데몬이라고 부른다.
백그라운드에서 구동중인 데몬의 종류는 여러가지가 있지만, 대표적으로 스케쥴러 관리에 사용되는 데몬이 바로 cron데몬이다.
[2] Cron 데몬 설정방법
(1) 일반 User레벨에서의 Daemon 설정방법
- 유닉스계통의 시스템을 처음 Install 하고 나면 User레벨의 Cron은 별도 설정을 해주어야만 등록 가능하다. 등록하는 위치는 아래 경로와 같다.
/etc/cron.allow (Cron 사용가능하도록 유저를 등록한다.) /etc/cron.deny (Cron 데몬 사용 불가능하도록 유저를 등록한다.) |
우선 /etc/cron.allow 파일을 새로 만들어서 등록 하도록 하자. 만약 이미 해당파일이 존재한다면 vi 에디터로 수정만 하면 될것이다.
#vim /etc/cron.allow |
ex ) 아래 예제처럼 엔터값을 넣으면서 입력하면된다.
==>요렇게 등록하면 된다. 이경우 ddong, dochi 두개의 계정에서 cron 등록 가능하다.
(2) Cron 데몬을 하기 위해 Shell Script를 작성하도록 한다. (아래 예제는 7일 단위로 DB를 백업하는 예제이다.)
(Shell Script 파일명 : db_cron_backup.sh)
#! /bin/bash DATE=`date +%Y%m%d%H%M%S` mysqldump -u root -proot1234 dbname > $FILENAME DEL_TIME=`date --date '7 days ago' +%Y%m%d` rm -rf $DEL_OBJ_FILE* echo "********************************** AMT DB BACKUP *************************************" |
위의 파일을 이제 Cron 데몬에 등록하도록 하자.
(3) Crontab 을 이용한 Cron 데몬 설치
(crontab 명령어 기술)
Crontab 명령어 |
설 명 |
#crontab -l |
현재 선택된 cron 데몬의 내용을 보여준다. |
#crontab -e |
cron 데몬을 등록,수정 할 수 있다. |
#crontab -r |
cron 데몬을 삭제 할 수 있다. |
(crontab 스케쥴러 등록 작성법)
입력 필드 |
필드 의미 |
범 위 |
1 |
분 |
0~59 |
2 |
시 |
0~23 |
3 |
일 |
0~31 |
4 |
월 |
1~12 |
5 |
요일 |
0~7(1=월,2=화,...7=일,0=일) |
6 |
실행 명령어 |
쉘스크립트 실행명령어를 기록한다. |
위 쉘 스크립트 의 경우 아래와 같이 등록하도록 한다.
(조건)
매일 24시 00분 00초에 실행되도록 한다.
(crontab -e 를 실행하여 작성한다)
# 10초단위로 실행된다. |
이렇게 하면 끝난다. 다음번에 기회가 생길때 시스템 관리자 관점의 root계정에서의 시스템 크론에 대해서 알아보도록 하자.
- 2012.07.30 랑이씀 -
'Server > Linux' 카테고리의 다른 글
우분투 로그인시 업데이트 문구 대처법 (0) | 2018.12.04 |
---|---|
Ubuntu iptables 방화벽 열고 닫기 방법 (1) | 2014.07.30 |
CentOS Iptables 방화벽 포트 OPEN하기 (2) | 2012.07.02 |
리눅스 서버 시간 Sync(동기화) (0) | 2011.10.10 |
[ 리눅스 Encoding 변경 ] (0) | 2011.07.12 |