crontab 파일을 변경 한 후 cron을 다시 시작 하시겠습니까?


433

crontable 파일을 변경 한 후 cron을 다시 시작해야합니까?


8
@leonbloy의 대답을 무시하지 말고 리눅스의 첫 cron 작업 (분당 올바르게 포맷 된 작업)을 구현하는 것이 시스템을 재부팅 할 때까지 작동하지 않는다는 것을 알았습니다. sudo service cron restart테스트되지 않았습니다.
— geotheory

1
@geotheory yikes crontab을 업데이트 할 때마다 prod 서버를 다시 시작할 필요가 없기를 바랍니다.
— jcollum

답변:


614

아니.

로부터 크론 man 페이지 :

... cron은 모든 crontab의 수정 시간을 검사하고 변경된 crontab을 다시로드합니다. 따라서 crontab 파일을 수정할 때마다 cron을 다시 시작할 필요가 없습니다.

하지만 어쨌든 그 일을 확실히하고 싶다면

sudo service cron reload

또는

/etc/init.d/cron reload

10
cron.d 폴더를 사용하는 경우 심볼릭 링크 된 crontab이 다시로드되지 않습니다. 다시 장전하려면 어떻게해야합니까?
— CMCDragonkai

13
아 그렇게 쉽다. 지금 sudo service cron restart입니다.
— CMCDragonkai

21
더 나은 옵션은 재로드입니다. 루트가 아닌 사용자가 시작할 수 있습니다./etc/init.d/cron reload
— Honza

8
@CMCDragonkai crond대신에 cron.
— Cees Timmerman

33
이 답변의 유일한 문제는 항상 사실이 아니라는 것입니다. 질문 아래 지리학의 의견을 참조하십시오. 나도 이것에 조금 물렸다. 을 통해 crontab 파일을 변경하고 변경 사항을 sudo crontab -e저장하고 변경 사항을 채택 Ctrl + X한다고 가정 cron했습니다 (이 답변이 너무 높았 기 때문에). 그런 다음 며칠 후 내 고객은 cron이 여전히 이전주기에서 실행되고 있다고보고합니다. 따라서-솔직히-안전을 원한다면- cron시스템을 다시 시작 하고 낭비되는 시간 테스트를하지 마십시오.이 고도의 대답에도 불구하고 수행해야합니다.
— Dan Nissenbaum

53

cPanel을 사용하는 CentOS sudo /etc/init.d/crond reload에서는 트릭을 수행합니다.

CentOS7에서 : sudo systemctl start crond.service


3
가상 코어 7 라인 주셔서 감사합니다
— 마티유 드 Lorimier

1
//, crond점점 끔찍한 시스템에서 시작하기보다는 다시로드하려면을 실행하십시오 sudo systemctl reload crond.service.
— Nathan Basanese

SystemD에서 @NathanBasanese Reloading cron은 이제 검은 마법으로 간주됩니다 . (Ubuntu 18.04) sudo systemctl reload crond와 함께 실패합니다 Failed to reload cron.service: Job type reload is not applicable for unit cron.service.. 읽는다 : "SystemD, 단 하나만있을 수있다"라는 신념이있다. 장면 뒤에서 자동으로 재 장전을 수행하지 않으면 파산 한 것입니다! 지난 3 년 이상 그랬던 것처럼 그것을 고칠 생각조차하지 마십시오! 읽는다 : Windows의 세계는 마침내 데비안을 삼켰다. 데비안 : 후드 아래에 이상한 것이 있다면, 어떻게 할 것인가? 재시작!
— 티노

재시작은 재 장전 그 이상입니다. Centos에 클린 리로드 옵션을 사용할 수 있습니까?
— Ωmega

@Tino cronie를 설치할 수 있습니다
— Bob

27

16.04 VPS Digital Ocean에서도 비슷한 문제가있었습니다. crontab을 변경하는 경우 다음을 실행하십시오.

sudo service cron restart 

그것은 나를 위해 일했다. 감사합니다
— Tien Nguyen

나는 reload충분하다. 필요 없습니다 restart. 감사. :)
— Tien Nguyen

12

배포에 따라 "cron reload"를 사용하면 아무 작업도 수행되지 않을 수 있습니다. init.d / cron에서 스 니펫을 붙여 넣으려면 (데비안 스퀴즈) :

reload|force-reload) log_daemon_msg "Reloading configuration files for periodic command scheduler" "cron"
    # cron reloads automatically
    log_end_msg 0
    ;;

일부 개발자 / 유지 업체는 리로딩에 의존했지만 그렇지 않았으며,이 경우 리로드를 강제 할 수있는 방법이 없습니다. 배포의 일부로 crontab 파일을 생성하고 있으며 파일 길이가 변경되지 않으면 변경 내용이 다시로드되지 않습니다.



6

이것을 시도하십시오 : sudo cron reload 그것은 우분투 12.10에서 나를 위해 작동합니다


Ubuntu 18.04.2 LTS를 사용하는 Raspberry Pi 3+에서 작동하지 않습니다
— Jan

3

이것을보십시오 : service crond restart따라서 crond그렇지 않습니다 cron.


crond인식 할 수없는 서비스입니다. 그것은 cron나를 위해 작동 합니다. 내 OS는 우분투 18.04
— Tien Nguyen

1

시작 스크립트가 작동하려면 cron을 다시 시작해야하는 경우가 있습니다. cron을 다시 시작해도 아무런 문제가 없습니다.

sudo 서비스 cron 재시작


0

1) /var/spool/cron/crontabs/rootSFTP 클라이언트를 통해 파일을 편집하는 경우 필요합니다 service cron restart. 다시로드 서비스가 작동하지 않습니다.

2) /var/spool/cron/crontabs/root콘솔 리눅스 (nano, mc)를 통해 파일 을 편집하는 경우 다시 시작할 필요가 없습니다.

3) 통해 cron을 편집하는 경우 crontab -e다시 시작할 필요가 없습니다.


0

우분투 18.04 * 사용법 : /etc/init.d/cron {start | stop | status | restart | reload | force-reload}

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.