Tôi có phải khởi động lại cron sau khi thay đổi tập tin crontable không?
Tôi có phải khởi động lại cron sau khi thay đổi tập tin crontable không?
Câu trả lời:
Không.
Từ trang cron man :
... cron sau đó sẽ kiểm tra thời gian sửa đổi trên tất cả các crontabs và tải lại những thứ đã thay đổi. Do đó, không cần khởi động lại cron mỗi khi sửa đổi tập tin crontab
Nhưng nếu bạn chỉ muốn chắc chắn rằng nó được thực hiện bằng mọi cách,
sudo service cron reload
hoặc là
/etc/init.d/cron reload
sudo service cron restart
.
/etc/init.d/cron reload
crond
thay vì cron
.
sudo crontab -e
, lưu thay đổi đó Ctrl + X
và bỏ đi giả sử cron
sẽ chọn nó (do câu trả lời này được đánh giá rất cao). Sau đó, vài ngày sau, khách hàng của tôi báo cáo rằng cron vẫn đang chạy trên chu kỳ cũ. Vì vậy - thành thật mà nói - nếu bạn muốn an toàn - chỉ cần khởi động lại một trong hai cron
hoặc hệ thống, và không chơi xung quanh với thử nghiệm lãng phí thời gian, điều mà bạn sẽ phải làm bất chấp câu trả lời được đánh giá cao này.
Trên CentOS với cPanel sudo /etc/init.d/crond reload
thực hiện thủ thuật.
Trên CentOS7: sudo systemctl start crond.service
crond
, thay vì chỉ khởi động nó trên systemd ngày càng khủng khiếp, hãy chạy sudo systemctl reload crond.service
.
cron
trên SystemD bây giờ được coi là ma thuật đen: sudo systemctl reload crond
thất bại với Failed to reload cron.service: Job type reload is not applicable for unit cron.service.
(Ubuntu 18.04). Đọc: Tắt đi, tất cả chúng ta đều bị hội chứng: "SystemD, chỉ có thể có một". Nếu tải lại không được thực hiện tự động đằng sau hậu trường, bạn sẽ bị phá sản! Thậm chí không nghĩ về việc sửa nó, giống như bạn đã làm trong 3 thập kỷ qua (hoặc hơn)! Đọc: Thế giới Windows cuối cùng đã nuốt chửng Debian: Nếu có thứ gì đó kỳ lạ dưới mui xe, bạn sẽ làm gì? Khởi động lại!
Tôi đã có một vấn đề tương tự trên 16.04 VPS Digital Ocean. Nếu bạn đang thay đổi crontabs, hãy đảm bảo chạy
sudo service cron restart
reload
là đủ. Không cần restart
. Cảm ơn. :)
Tùy thuộc vào phân phối, sử dụng "tải lại cron" có thể không làm gì cả. Để dán đoạn trích ra khỏi init.d / cron (debian bóp):
reload|force-reload) log_daemon_msg "Reloading configuration files for periodic command scheduler" "cron"
# cron reloads automatically
log_end_msg 0
;;
Một số nhà phát triển / nhà bảo trì đã dựa vào nó tải lại, nhưng không, và trong trường hợp này không có cách nào để buộc tải lại. Tôi đang tạo các tệp crontab của mình như một phần của việc triển khai và trừ khi bằng cách nào đó độ dài của tệp thay đổi, các thay đổi sẽ không được tải lại.
Hãy thử điều này service crond restart
:, do đó crond
không phải vậy cron
.
crond
dịch vụ không xác định. Nó làm việc với cron
tôi. HĐH của tôi là Ubuntu 18.04
1) Nếu /var/spool/cron/crontabs/root
chỉnh sửa tập tin qua máy khách SFTP - cần service cron restart
. Dịch vụ tải lại không hoạt động.
2) Nếu chỉnh sửa tập tin /var/spool/cron/crontabs/root
qua bàn điều khiển linux (nano, mc) - không cần khởi động lại.
3) Nếu chỉnh sửa cron qua crontab -e
- khởi động lại KHÔNG cần.
Ubuntu 18.04 * Cách sử dụng: /etc/init.d/cron {start | stop | status | restart | tải lại | buộc tải lại}
sudo service cron restart
chưa được thử nghiệm.