개념 사전 · 프로그램

cron

크론

은 에 지정한 달력 조건에 따라 명령을 시작하는 예약 실행 서비스이다. 예약이 일치했다는 사실·가 시작한 사실·업무가 성공한 사실은 서로 다르며 비대화형 실행 환경을 명시해야 한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 분·시·일·월·요일 조건으로 반복 작업의 시작 시점을 정한다.
  • 계정별 또는 시스템별 작업 목록을 관리한다.
  • 명령의 출력과 종료 결과를 운영 기록에 연결한다.

02어떤 순서로 동작하나

  1. 일정 읽기

    사용자 또는 시스템 을 읽고 구현의 시간대·달력 규칙을 적용한다.

  2. 조건 일치

    현재 시각이 표현식 조건에 맞는지 평가한다. 일·요일의 조합은 단순 AND로 가정하지 않는다.

  3. 비대화형 실행

    정해진 사용자와 제한된 환경에서 명령을 시작한다. 작업 디렉터리·PATH·자격 증명은 대화형 셸과 다를 수 있다.

  4. 결과 보존

    출력·종료 상태·생성 결과를 기록하고 중복·누락 실행은 별도 잠금 또는 보완 정책으로 관리한다.

03먼저 알아둘 용어와 구성요소

일반적인 의 시간 필드는 분, 시, 일, 월, 요일 순서다.
15 2 * * *는 해당 일정의 시간대 기준 매일 02:15를 뜻한다.
사용자 은 그 뒤에 명령이 오고, /etc/이나 /etc/.d 파일 형식에는 실행 사용자 필드가 추가된다. 사용자 에 사용자 이름을 한 칸 더 넣으면 그 이름을 명령의 일부로 해석하는 문제가 생긴다.
*/15 분은 00·15·30·45분이며 직전 실행 종료 후 15분이라는 뜻은 아니다.
SHELL과 PATH를 명시할 수 있지만 비밀번호나 토큰을 에 직접 쓰지 않는다.
같은 잠금은 같은 잠금 파일을 사용하는 작업들이 동시에 실행되는 것을 제한한다. -n처럼 기다리지 않는 방식이면 이미 실행 중일 때 새 실행이 건너뛰어질 수 있으므로 그 상태를 성공과 구분해 기록한다.

04예제로 따라가기

  • 15 2 * * *은 해당 일정의 시간대에서 매일 02:15 시작을 뜻하는 일반적인 다섯 필드 예이다.
  • 분 필드 */35는 한 시간의 0분·35분에 맞는 표현이므로 모든 실행 사이가 정확히 35분 간격인 것은 아니다.
  • 작업이 10분 걸리는데 5분마다 예약하면 실행이 겹칠 수 있어 파일 잠금 등으로 중복 처리 방식을 정해야 한다.

05혼동하기 쉬운 점과 확인 기준

  • Cronie의 0 9 1 * 1은 일·요일이 모두 제한되어 매월 1일 또는 월요일 09시에 해당한다. 1일이 아닌 월요일에도 실행되므로 매월 첫 월요일이라는 의도를 표현한 것이 아니다.
  • 실행 파일 경로와 입력·출력 경로를 명확히 하고, 프로그램이 요구하는 작업 디렉터리도 정한다. 로그 파일과 잠금 파일에 대한 쓰기 권한 역시 해당 작업 계정에 있어야 한다.
  • 중복 방지와 누락 보완은 서로 다른 문제이며 둘 다 결과 데이터의 일관성을 자동으로 보장하지 않는다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.