ฉันต้องรีสตาร์ท cron หลังจากเปลี่ยนไฟล์ crontable หรือไม่
ฉันต้องรีสตาร์ท cron หลังจากเปลี่ยนไฟล์ crontable หรือไม่
คำตอบ:
เลขที่
จากหน้าcron man :
... cron จะตรวจสอบเวลาการแก้ไขบน crontabs ทั้งหมดและโหลดสิ่งที่เปลี่ยนแปลงไป ดังนั้น cron ไม่จำเป็นต้องรีสตาร์ททุกครั้งที่มีการแก้ไขไฟล์ crontab
แต่ถ้าคุณต้องการให้แน่ใจว่ามันทำอยู่แล้ว
sudo service cron reload
หรือ
/etc/init.d/cron reload
sudo service cron restart
ก็ตอนนี้
/etc/init.d/cron reload
crond
cron
sudo crontab -e
บันทึกการเปลี่ยนแปลงโดยCtrl + X
และออกไปโดยสมมติว่าcron
จะหยิบมันขึ้นมา (เนื่องจากคำตอบนี้ถูกยกระดับขึ้นอย่างมาก) จากนั้นไม่กี่วันต่อมาลูกค้าของฉันรายงานว่า cron ยังคงทำงานในรอบเก่า ดังนั้น - โดยสุจริต - ถ้าคุณต้องการที่จะปลอดภัย - เพียงแค่รีสตาร์ทระบบcron
หรืออย่างใดอย่างหนึ่งและไม่เล่นรอบกับการทดสอบเวลาที่สูญเปล่าซึ่งคุณจะต้องทำแม้จะมีคำตอบสูง upvoted นี้
CentOS ที่ cPanel sudo /etc/init.d/crond reload
ทำตามลวงนั้น
ใน CentOS7: sudo systemctl start crond.service
crond
, แทนที่จะเริ่มบน systemd ที่น่ากลัวยิ่งขึ้น, รันsudo systemctl reload crond.service
.
cron
บน SystemD ตอนนี้ถือว่าเป็นมนต์ดำ: sudo systemctl reload crond
ล้มเหลวด้วยFailed to reload cron.service: Job type reload is not applicable for unit cron.service.
(Ubuntu 18.04) อ่าน: หัวออกเราทุกคนต่างก็เป็นโรค: "SystemD มีได้เพียงคนเดียว" หากการโหลดซ้ำไม่ได้ดำเนินการโดยอัตโนมัติหลังฉากแสดงว่าคุณกำลังอกหัก! อย่าคิดแม้แต่จะแก้ไขมันเหมือนอย่างที่คุณเคยทำในช่วง 3 ทศวรรษที่ผ่านมา (หรือมากกว่านั้น)! อ่าน: ในที่สุดโลกของ Windows ก็กลืนเดเบียน: หากมีสิ่งแปลก ๆ อยู่ใต้กระโปรงหน้าคุณจะทำอะไร? เริ่มต้นใหม่!
ฉันมีปัญหาคล้ายกันใน 16.04 VPS Digital Ocean หากคุณกำลังเปลี่ยน crontabs ตรวจสอบให้แน่ใจว่าได้รัน
sudo service cron restart
reload
ก็พอ restart
ไม่จำเป็นต้อง ขอบคุณ :)
ขึ้นอยู่กับการกระจายการใช้ "cron reload" อาจไม่ทำอะไรเลย ในการวางตัวอย่างข้อมูลจาก init.d / cron (debian squeeze):
reload|force-reload) log_daemon_msg "Reloading configuration files for periodic command scheduler" "cron"
# cron reloads automatically
log_end_msg 0
;;
นักพัฒนา / ผู้ดูแลรักษาบางรายอาศัยการโหลดซ้ำ แต่ไม่ใช่และในกรณีนี้ไม่มีวิธีบังคับให้โหลดซ้ำ ฉันกำลังสร้างไฟล์ crontab ของฉันเป็นส่วนหนึ่งของการปรับใช้และหากไม่มีการเปลี่ยนแปลงความยาวของไฟล์การเปลี่ยนแปลงจะไม่ถูกโหลดใหม่
ลองอันนี้สำหรับ centos 7: service crond reload
ลองดูสิ: sudo cron reload
มันใช้ได้กับฉันใน Ubuntu 12.10
ลองนี้service crond restart
, ดังนั้นมันเป็นไม่ได้crond
cron
crond
บริการที่ไม่รู้จัก มันทำงานร่วมกับcron
ฉัน ระบบปฏิบัติการของฉันคือ Ubuntu 18.04
มีอินสแตนซ์ที่ cron จำเป็นต้องเริ่มต้นใหม่เพื่อให้สคริปต์เริ่มทำงาน ไม่มีอะไรผิดปกติในการรีสตาร์ท cron
sudo บริการ cron เริ่มใหม่
1) หากไฟล์/var/spool/cron/crontabs/root
แก้ไขผ่าน SFTP ลูกค้า - service cron restart
ไม่จำเป็นต้อง บริการโหลดซ้ำไม่ทำงาน
2) หากแก้ไขไฟล์/var/spool/cron/crontabs/root
ผ่านทางคอนโซล linux (nano, mc) - ไม่จำเป็นต้องรีสตาร์ท
3) ถ้าแก้ไข cron ผ่านcrontab -e
- รีสตาร์ทไม่จำเป็น
Ubuntu 18.04 * การใช้งาน: /etc/init.d/cron {start | stop | status | restart | reload | force-reload}
sudo service cron restart
ไม่ได้ทดสอบ