Có một công việc được lên lịch trong crontab chạy ngay cả khi tôi đăng xuất không?


12

Tôi thêm một số công việc trong tập tin crontab trên một máy chủ.

  • Khi tôi đăng xuất và máy chủ vẫn bật, công việc có còn chạy không?

  • Có vấn đề gì không nếu tôi tạo một màn hình hoặc phiên tmux và chạy một số shell trong đó và tách nó ra trước khi đăng xuất?

Câu trả lời:


22

cronlà một quá trình xử lý các tác vụ theo lịch trình cho dù bạn có đăng nhập hay không. Không cần thiết phải có một màn hình hoặc phiên tmux đang chạy vì trình nền cron sẽ thực thi các tác vụ theo lịch trình trong các shell riêng biệt.

Xem man cronman crontabđể biết chi tiết.


Khi tôi đăng xuất, người dùng nào sẽ chạy và sở hữu công việc được lên lịch trong crontab? Nếu không phải là tôi, điều đó có thể gây ra một số vấn đề tiềm năng không?
Tim

1
Điều đó phụ thuộc vào crontab mà bạn chỉnh sửa. Nếu bạn chỉnh sửa crontab của người dùng, các mục được thực thi như người dùng đó. Nếu bạn chỉnh sửa tệp / etc / crontab, người dùng thường được chỉ định giữa khoảng và lệnh như: "17 * * * * root cd / && run-tùng --report /etc/cron.hourly". Bên cạnh đó, nó cũng phụ thuộc vào nền tảng bạn đang sử dụng. Ubuntu sử dụng một cron khác với Solaris
Lambert

Tôi sử dụng Ubuntu. "Crontab của người dùng" là gì? Trong "crontab của người dùng", tôi cũng có thể chỉ định người dùng nào sẽ chạy một công việc theo lịch trình không?
Tim

Ubuntu cron có một số văn bản giải thích trong các tập tin crontab. Khi người dùng thực hiện crontab -eđể đọc về tệp crontab của người dùng và cat /etc/crontabđể đọc về tệp crontab trên toàn máy chủ. Từ tệp crontab của người dùng, bạn không thể chạy các lệnh bằng một người dùng khác mặc dù có thể sử dụng sudo nếu các lệnh không mật khẩu được chỉ định
Lambert

Cảm ơn. /etc/crontab dành cho toàn hệ thống, vậy thì tập tin crontab cho người dùng ở đâu?
Tim
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.