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.