Page tree


cron 은 리눅스의 작업 스케줄러로 정해진 시간이나 주기마다 특정 작업을 실행할 수 있습니다.

현재 등록한 작업 목록 보기

$ crontab -l



작업 등록

$ crontab -e


cron.allow 와 cron.deny 사용 권한


/etc/cron.allow/etc/cron.allow 파일이 있을 경우 이 안에 등록된 사용자만 cron 을 사용할 수 있음.

/etc/cron.allow 이 없고 /etc/cron.deny 가 있을 경우 

주의 사항

cron 은 초기화 파일을 읽지 않음. (보안 문제 때문에)


그래서 일반적인 PATH(/bin, /usr/bin) 에 설치되지 않았거나 공유 라이브러리(share library)를 사용하는 프로그램이라면

환경 변수를 넣어줘야 함.


그리고 실행 프로그램은 절대 경로로 하는 것이 필요

#!/bin/bash

/usr/local/bin/mys option


별도의 경로에 설치된 프로그램이거나 


사용 예제


3달마다 특정 명령어 실행

let's enc 인증서 갱신등


1,  4, 7, 10월에 1일 새벽 2시에 인증서 갱신

00 02 01 Jan,Apr,Jul,Oct * /usr/bin/certbot renew --nginx


아래처럼 할수도 있지만 가독성이 떨어지므로 주석으로 최초 실행일을 적어주는 것이 좋음

# 1, 4, 7, 10월에 실행
00 02 01 */3 * /usr/bin/certbot renew --nginx



같이 보기



Ref