본문 바로가기

개발

Linux 작업 예약 스케줄러 (Cron)

특정한 시간 혹은 일정 시간 간격으로 반복적인 작업을 수행해야 할때 리눅스에서 사용할 수 있는 작업 스케줄러로 Crontab 이 있다.

 

Cron 작업을 설정하는 파일을 Crontab 이라고 하며, 설정할 수 있는 방법으로는 두가지가 있다.

 

1. crontab -e 명령어를 사용하여 등록

2. /etc/crontab에 직접 등록하는 방법

 

// 등록형식
* * * * *  수행할 명령어
┬ ┬ ┬ ┬ ┬
│ │ │ │ │
│ │ │ │ │
│ │ │ │ └───────── 요일 (0 - 6) (0:일요일, 1:월요일, 2:화요일, …, 6:토요일)
│ │ │ └───────── 월 (1 - 12)
│ │ └───────── 일 (1 - 31)
│ └───────── 시 (0 - 23)
└───────── 분 (0 - 59)

* * * * * /root/every_1min.sh
→ 매 1분마다 /root/every_1min.sh 를 수행 (하루에 1440회)
15,45 * * * * /root/every_30min.sh
→ 매시 15분, 45분에 /root/every_30min.sh 를 수행 (하루에 48회)
*/10 * * * * /root/every_10min.sh
→ 10분마다 /root/every_10min.sh 를 수행 (하루에 144회)
0 2 * * * /root/backup.sh
→ 매일 02:00에/root/backup.sh 를 수행 (하루에 1회)
30 */6 * * * /root/every_6hours.sh
→ 매 6시간마다 수행(00:30, 06:30, 12:30, 18:30)
30 1-23/6 * * * /root/every_6hours.sh
→ 1시부터 매 6시간마다 수행(01:30, 07:30, 13:30, 19:30)
0 8 * * 1-5 /root/weekday.sh
→ 평일(월요일~금요일) 08:00
0 8 * * 0,6 /root/weekend.sh
→ 주말(일요일, 토요일) 08:00

# checks if cron is running
service cron status 
service cron start 또는 # starts it
service cron stop   # stops it

'개발' 카테고리의 다른 글

JMeter 을 활용한 웹 부하 테스트  (0) 2021.02.14
gitignore.io  (0) 2020.12.14
Shield IO  (0) 2020.12.04
Github git@github.com: Permission denied (publickey).  (0) 2020.11.30
Github Actions  (0) 2020.11.20