글
8장. JOB 스케쥴링
먹고는 살아야지;;;
2008/11/25 01:15
1. job 스케쥴링의 종류
at 명령
at 유틸리티는 사용자가 명령어나 스크립트를 스케쥴할 수 있도록 실행할 시간을 직접 지정.
지정된 특정 시간에 그 명령이 실행되도록 설정
스케쥴한 모든 리스트들을 한꺼번에 보기
at -f : vi 에디터 등을 사용하여 만든 스크립트 파일(scriptfile)을 특정 시간에 실행시킬 수 있음.
at -r : 작업 큐에 쌓여있는 어떤 작업을 제거하기 위하여 -r 옵션을 사용.
batch 명령
실행의 연기는 가능하지만, 작동할 시간까지 제어하지는 못함. 작동할 명령이 있으나, 언제 실행될지 걱정하지 않아도 되는 작업에 유리. batch 명령은 우선 순위가 낮은 작업에 시스템 로드가 허용될 때까지 명령을 대기하였다가 실행할 때 아주 유용하게 사용할 수 있음.
cron 명령
cron 은 주기적 실행을 위해 프로그램을 스케쥴링하는 것을 허용하는 unix 기능. 작업 스케쥴링 도구중에서 가장 강력한 기능을 가지고 있음.
이상의 작업 이외에도 매시간 특정 DB의 아카이브 파일을 백업받고 삭제하기 위해, 매일밤 에디터 백업 파일을 지우기 위해, 한단에 한번씩 시스템 로그 파일을 백업하고 절달하기 위해, 몇가지의 다른 작업들을 처리하기 위해 cron을 유용하게 사용 가능.
즉, cron 은 분, 시, 일, 월, 단위로 등록된 쉘 프로그램을 실행 시킬 수 있는 강력한 기능을 가지고 있는 명령.
cron process 확인
cron process 가 실행 중이어야만 cron의 기능을 사용하는 것이 가능. 일반적인 프로세스 체크 방법과 동일
cron process 는 부팅중에 /etc/rc.config.d/cron 스크립트에 의해 시작. CRON = 1 반드시 설정되야 동작
cron을 사용할 수 있는 user 의 등록
crontab 명령을 이용하여 crontab file 을 등록
cron이 등록된 crontab file을 정해진 시간에 정해진 작업을 실행할 수 있도록 하기 위해서 crontab 명령을 이용하여 crontab file을 등록하여야 함.
처음의 다섯개의 필드는 날짜는 실행 날짜와 시간을 나타내는 정수가 사용, 각각의 필드가 의미하는 내용은 분, 시간, 일, 월, 요일이므로 그 값의 범위는 당연히 다를 수 밖에 없음. (요일에 경우 일요일이 0, 월요일이 1임에 주의)
crontab 명령어를 이용한 crontab file 관리
crontab 명령어는 사용자가 등록한 파일을 /var/spool/cron/crontabs 디렉토리 밑에 등록한 사용자의 이름(login name)으로 복사 파일을 만듬.
crontab file 리스팅(listing)
현재 사용자의 crontab file 내용을 확인하기 위해서는 아래와 같이 crontab -l 명령을 실행함으로써 확인 가능.
crontab file 삭제
/var/spool/cron/crontabs 디렉토리 밑에 있는 사용자의 crontab file 이 삭제되는 것이고 따라서 cron에 의해서 참조될 파일이 없어짐.
crontab 명령어를 이용한 crontab file 관리
현재 시스템에 등록된 crontab file을 수정하거나 등록된 crontab file 이 없다면 새로운 crontab file을 편집하기 위해서, 다음과 같이 crontab -e 명령어를 수행.
cron의 실행 과정
cron은 /var/adm/cron/log 에 실행 기록을 작성하기 때문에 이 파일은 cron의 사용시 크기가 무한정 증가.
at 명령
at 유틸리티는 사용자가 명령어나 스크립트를 스케쥴할 수 있도록 실행할 시간을 직접 지정.
지정된 특정 시간에 그 명령이 실행되도록 설정
스케쥴한 모든 리스트들을 한꺼번에 보기
at -f : vi 에디터 등을 사용하여 만든 스크립트 파일(scriptfile)을 특정 시간에 실행시킬 수 있음.
at -r : 작업 큐에 쌓여있는 어떤 작업을 제거하기 위하여 -r 옵션을 사용.
batch 명령
실행의 연기는 가능하지만, 작동할 시간까지 제어하지는 못함. 작동할 명령이 있으나, 언제 실행될지 걱정하지 않아도 되는 작업에 유리. batch 명령은 우선 순위가 낮은 작업에 시스템 로드가 허용될 때까지 명령을 대기하였다가 실행할 때 아주 유용하게 사용할 수 있음.
cron 명령
cron 은 주기적 실행을 위해 프로그램을 스케쥴링하는 것을 허용하는 unix 기능. 작업 스케쥴링 도구중에서 가장 강력한 기능을 가지고 있음.
이상의 작업 이외에도 매시간 특정 DB의 아카이브 파일을 백업받고 삭제하기 위해, 매일밤 에디터 백업 파일을 지우기 위해, 한단에 한번씩 시스템 로그 파일을 백업하고 절달하기 위해, 몇가지의 다른 작업들을 처리하기 위해 cron을 유용하게 사용 가능.
즉, cron 은 분, 시, 일, 월, 단위로 등록된 쉘 프로그램을 실행 시킬 수 있는 강력한 기능을 가지고 있는 명령.
cron process 확인
cron process 가 실행 중이어야만 cron의 기능을 사용하는 것이 가능. 일반적인 프로세스 체크 방법과 동일
cron process 는 부팅중에 /etc/rc.config.d/cron 스크립트에 의해 시작. CRON = 1 반드시 설정되야 동작
cron을 사용할 수 있는 user 의 등록
crontab 명령을 이용하여 crontab file 을 등록
cron이 등록된 crontab file을 정해진 시간에 정해진 작업을 실행할 수 있도록 하기 위해서 crontab 명령을 이용하여 crontab file을 등록하여야 함.
처음의 다섯개의 필드는 날짜는 실행 날짜와 시간을 나타내는 정수가 사용, 각각의 필드가 의미하는 내용은 분, 시간, 일, 월, 요일이므로 그 값의 범위는 당연히 다를 수 밖에 없음. (요일에 경우 일요일이 0, 월요일이 1임에 주의)
crontab 명령어를 이용한 crontab file 관리
crontab 명령어는 사용자가 등록한 파일을 /var/spool/cron/crontabs 디렉토리 밑에 등록한 사용자의 이름(login name)으로 복사 파일을 만듬.
crontab file 리스팅(listing)
현재 사용자의 crontab file 내용을 확인하기 위해서는 아래와 같이 crontab -l 명령을 실행함으로써 확인 가능.
crontab file 삭제
/var/spool/cron/crontabs 디렉토리 밑에 있는 사용자의 crontab file 이 삭제되는 것이고 따라서 cron에 의해서 참조될 파일이 없어짐.
crontab 명령어를 이용한 crontab file 관리
현재 시스템에 등록된 crontab file을 수정하거나 등록된 crontab file 이 없다면 새로운 crontab file을 편집하기 위해서, 다음과 같이 crontab -e 명령어를 수행.
cron의 실행 과정
cron은 /var/adm/cron/log 에 실행 기록을 작성하기 때문에 이 파일은 cron의 사용시 크기가 무한정 증가.