Github avatar

GyeongSu Han's Github Pages

Crontab

Jan 11, 2016 · Server

리눅스에서는 일정 시간마다 특정 명령을 실행할 수 있도록 해주는 기능인 crontab이 있다.

이 기능을 사용하게 되면 원하는 시간대에 명령을 실행할 수 있다. 이 명령은 1분단위로 설정가능하다.

사용은 crontab -e 명령을 이용하면 작성할 수 있다.

# 분 시 일 월 요일 명령
0 3 */2 * * yum -y update; yum -y upgrade;

다음과 같이 사용이 가능하다. ;은 명령의 끝을 나타내는데, 이렇게 작성할 경우 한 명령으로 2개를 처리할 수 있다.

이를 해석해 보면 1번줄은 #(주석)으로 처리되어 있다.

2번줄은 아무요일이나 매달 짝수(2일마다 한번)일에 03시 00분에 yum -y update; yum -y upgrade;를 실행하도록 하였다.

저의 경우는 항상 명령의 끝에 ;을 붙여 crontab을 작성하는데, 어떤 경우에는 명령의 끝에 이상한 문자(^M)가 붙어 명령이 실행되지 않은 적이 있다.

이 때 세미콜론(;)을 이용하여 해결했던 적이 있어, 이를 방지하기 위함도 있다.

요일의 경우는 0이 일요일이고, 이 후 1씩 더해주면 된다. 즉, 6이 토요일이 되면 된다.

모든 값은 특정 단위마다 실행하도록 할 수 있는데, *를 사용하면 된다.

_만 사용할 경우 _/1이므로 1단위마다 실행하도록 하는 것 이다. */2를 하게 될 경우 2가 되는 때 마다 실행이 되게 된다. 이러한 식으로 원하는 시점마다 적용이 가능하다.