Linux Cron

김재현·2023년 8월 2일
0

Linux

목록 보기
7/12
post-thumbnail

Cron/Crontab

cron 은 리눅스/유닉스 기반 시스템에서 주기적인 작업을 실행하기 위한 스케줄링 시스템이다.
정해진 시간에 자동으로 프로그램이나 스크립트를 실행하여 반복 작업을 자동화하는데 사용된다.

cron 데몬(cron daemon)

백그라운드에서 실행되는 시스템 서비스로 정해진 시간에 작업을 실행한다.
일반적으로 시스템이 부팅될 때 자동으로 시작되며 특정 사용자의 cron 테이블을 읽어 정의된 작업을 예약한다.

cron 테이블(cron table)

각 사용자에 대한 스케줄링 정보를 저장하는 파일이다.
각 사용자는 자신의 cron 테이블에 원하는 작업을 등록하여 정해진 시간에 실행하도록 스케줄링할 수 있다.
사용자는 # crontab 명령어를 사용하여 자신의 cron 테이블을 관리한다.

1. 사용자별 cron 테이블

각 사용자는 자신의 cron 테이블에 작업을 등록한다.
/var/spool/cron 디렉터리에 저장되며 # crontab 명령어를 사용하여 작업을 추가, 수정, 삭제한다.

2. 시스템 전체 cron 테이블

특정 사용자가 아닌 시스템 전체에서 실행되어야 하는 작업을 등록한다.
/etc/crontab 파일에 저장되며 /etc/cron.d/ 디렉터리에 있는 파일들도
시스템 전체 cron 테이블을 구성하는데 사용된다.

cron 테이블 형식

# vi /etc/crontab

...
30 3 * * * /home/admin/monitoring.sh
...
  1. cron 파일의 필드는 아래와 같이 작성한다.
    분(0-59) 시(0-23) 일(1-31) 월(1-12) 요일(0-6) 작업
    위 예시에 대한 내용은 매일 3시 30분에 /home/admin/monitoring.sh 스크립트를 실행한다.

  2. 각 필드는 빈 칸 또는 탭으로 구분되며, 별표(*)는 모든 값을 의미한다.

  3. 작업은 실행하고자 하는 명령어나 스크립트를 의미한다.

profile
Linux/Cluster/Infra Engineer

0개의 댓글

관련 채용 정보