cron란?

Linux 등에서 정한 일시나 주기로 명령을 자동으로 실행하는 구조(및 그 데몬). crontab -e로 편집하는 설정의 각 줄은 '분 시 일 월 요일 명령' 형식으로 쓰며, '30 2 * * 1 명령'은 매주 월요일 2시 30분을 나타낸다(요일은 0이 일요일이며, 많은 구현에서는 7도 일요일). *는 모두, */5는 5마다, 1-5는 범위를 나타낸다. cron에서 실행되는 명령은 로그인했을 때보다 제한된 환경 변수로 동작하므로, 경로 지정이나 출력 기록에 주의가 필요하다. systemd를 쓰는 시스템에서는 systemd의 타이머로 같은 일을 할 수도 있다.

일본어 명칭: cron

cron은(는) Linux와 커맨드 라인 기초 등 1개 분야의 연습 문제 1개에 나와요.

분야: Linux와 커맨드 라인 기초

도전해 보기: cron 관련 문제

cron에 '30 2 * * 1 /home/alice/backup.sh'를 등록했다. backup.sh가 실행되는 시점으로 올바른 것은?

  1. A매월 1일 2시 30분
  2. B매주 월요일 2시 30분
  3. C매주 일요일 2시 30분
정답과 해설 보기

정답: B. 매주 월요일 2시 30분

cron 설정(crontab)의 각 줄은 앞의 5개 필드가 왼쪽부터 '분, 시, 일, 월, 요일'이며, 그 뒤에 실행할 명령을 씁니다. 이 줄은 분이 30, 시가 2, 일과 월이 *(모두), 요일이 1이므로 매주 월요일 2시 30분에 실행됩니다. 요일은 0이 일요일, 1이 월요일이며, 많은 구현에서는 7도 일요일을 나타냅니다. cron에서 실행하는 명령은 로그인했을 때와는 다른 제한된 환경 변수로 동작하므로, 스크립트 안에서는 명령을 절대 경로로 쓰는 등의 주의가 필요합니다.

해설 속 cron

cron이(가) 나오는 문제 (1)

  1. cron에 '30 2 * * 1 /home/alice/backup.sh'를 등록했다. backup.sh가 실행되는 시점으로 올바른 것은?

관련 용어

환경 변수(Environment Variable) 셸(Shell) 슈퍼유저(Superuser) 시그널(Unix 시그널) 심볼릭 링크(Symbolic Link) 입출력 리다이렉션(I/O Redirection) 정규 표현식(Regular Expression) 파이프(|) 파일 권한(퍼미션) 하드 링크(Hard Link)

용어집으로 돌아가기