정기적 프로그램 실행(cron)

박찬우·2025년 1월 6일

리눅스

목록 보기
22/34

cron

  • 정기적으로 프로그램을 실행하는 것

설치

  • cron 설치
    $ sudo apt install -y cron
  • cron 실행
    $ sudo service cron start
  • 재부팅시 자동 실행 설정
    $ sudo systemctl enable cron.service
  • cron 실행 여부 확인
    $ sudo systemctl list-unit-files | grep cron

예시

  • cron 설정
    $ crontab -e

  • 수식
    - 분(m), 시간(h), dom(일), mon(월), dow(요일)

  • cron 작성(Ctrl + X 후 저장)
    - 1분마다 date.log에 date를 찍는데 오류가 나면 그것도 찍어라
    ...
    m h dom mon dow command
    0/1 * * * * date date.log 2>&1
    종료 저장하면 아래와 같은 메시지가 나옴
    crontab : installing new crontab

  • cron 확인
    $ crontab -l
    ...
    0/1 * * * * date date.log 2>&1

  • 결과 확인(실행결과를 실시간으로 보기)
    $ tail -f date.log
    2025. 01. 06. (월) 23:12:01 KST
    ...

활용

클라이언트에서 서버로 요청을 보냈을 떄 시간이 오래걸리는 경우 사용자가 한없이 기다려야 하는데 이런 경우 cron을 활용하여 데이터만 받아놓고 응답을 보낸 후 실제 작업은 cron으로 백그라운드에서 처리하도록 할 수 있다.

profile
진짜 개발자가 되어보자

0개의 댓글