320x100
320x100

프로세스 스케줄링

: 특정한 시간에 특정한 작업을 수행 하도록 설정하는 것

: 리눅스에서는 at과 cron을 통해 스케줄링을 실행

 > atd와 crond가 기본적으로 실행되어 프로세스 스케줄을 관리

 

- at

: 한 번만 실행할 때 사용

 

- cron

: 주기적으로 실행할 때 사용

 

 

 

 

 

프로세스 스케줄링 관련 명령어

- at

- crontab

 

 

 

 

 

at

: 1회성으로 실행할 예약 작업 등록

: 명령 실행 후 추가적으로 터미널이 나오는데, 해당 터미널에서 실행할 명령어 입력

: /var/spool/at 디렉터리에 등록한 작업에 대한 Queue 파일이 저장됨

 

- 형식

: at [option] <time>

 

- 주요 옵션

: -c

 > 작업 정보 출력

: -d

 > 예약한작업 삭제

: -l

 > 큐에 있는 작업 출력

: -f

 > 파일을 지정하여 작업을 읽어옴

 

 

 

 

 

crontab

: 주기적인 작업을 등록하기 위한 명령어

: 명령 실행 후 vim이 실행되며 /var/spool/cron/<user id>로 파일이 저장됨

 

- 형식

: crontab [option] [file]

 

- 주요 옵션

: -l

 > crontab에 설정된 내용 출력

: -e 

 > crontab의 내용 작성 혹은 수정

: -r

 > crontab에 설정 파일 삭제

: -u

 > 특정 사용자의 crontab 파일 제어

: -i

 > crontab 파일 삭제 전 질의 실행

 

- crontab 파일의 형식

minute   hour   day   month   week   user_name   command

=> 모든 설정을 기재해야함. 설정하지 않을 항목은 . 으로 기재

=> 항상 (*) / 주기 (n-n)

 

- crontab 파일의 항목별 설명

: minute

 > 실행할 분

: hour

 > 시

: day

 > 날짜 (일)

: month

 > 월

: week

 > 요일

: username

 > 사용자

: command

 > 명령어

 

- crontab 예시

```

0 12 * * 1-5 /home/test/excute.sh

> 월요일 부터 금요일까지 오후 12시에 execute.sh 실행

 

*/30 * * * * /home/test/check.sh

> 매일 30분 주기로 check.sh 실행

```

 

 

 

 

 

리눅스 스케줄링 관련 파일 및 디렉터리

- /var/spool/at

- /etc/at.allow

- /etc/at.deny

- /var/spool/cron

- /etc/cron.allow

- /etc/cron.deny

 

 

 

 

 

/var/spool/at

: at 명령어로 설정한 스케줄 정보가 저장된 디렉터리

 

 

 

 

 

/etc/at.allow

: at으로 설정한 스케줄에 대해 실행을 허용할 사용자를 설정하는 파일

 

 

 

 

 

/etc/at.deny

: at으로 설정한 스케줄에 대해 실행을 거부할 사용자를 설정하는 파일

 

 

 

 

/var/spool/cron

: cron 명령어로 설정한 스케줄 정보가 저장된 디렉터리

 

 

 

 

 

/etc/cron.allow

: cron으로 설정한 스케줄에 대해 실행을 허용할 사용자를 설정하는 파일

 

 

 

 

 

/etc/cron.deny

: cron으로 설정한 스케줄에 대해 실행을 거부할 사용자를 설정하는 파일

 

 

 

 

 

 

Refference

 

리눅스마스터 1급 2차 실기 정복하기 | 정성재 - 교보문고

리눅스마스터 1급 2차 실기 정복하기 | 출제 경향을 반영하여 핵심 내용만 요약 정리 시험대비를 위한 최신 기출문제를 해설과 함께 수록본 교재는 독자들이 최근 출간 요구가 많았던 리눅스마

product.kyobobook.co.kr

 

300x250
728x90