Cách thực thi crontab tại thời gian khởi động hệ thống

Cach Thuc Thi Crontab Tai Thoi Gian Khoi Dong He Thong

Bạn đang tìm kiếm giải pháp để chạy crontab mỗi khi máy chủ hoặc hệ thống của bạn khởi động lại? Điều này có thể thực hiện được bằng cách sử dụng tùy chọn @reboot. Cách mặc định để chạy các công việc cron là chỉ định ngày và giờ của chúng, theo sau là đường dẫn đến lệnh để thực thi. Khái niệm tương tự được sử dụng khi xác định một lệnh sẽ thực thi bất cứ khi nào máy chủ khởi động lại. Sự khác biệt duy nhất là, trong trường hợp này, chúng tôi không chỉ định ngày và giờ. Thay vào đó, chúng tôi sử dụng @reboot theo sau là đường dẫn đến lệnh. Hãy xem nó hoạt động như thế nào.

Cách lên lịch crontab để thực thi tại thời gian khởi động hệ thống

Hệ thống Linux và Unix được cài đặt sẵn với cron tiện ích, một bộ lập lịch công việc giúp bạn dễ dàng lên lịch công việc trên tệp crontab. Tiện ích tương tự có sẵn cho macOS. Cú pháp để lập lịch công việc trong các khoảng thời gian nhất định được cung cấp dưới đây:

Giờ tối thiểu Ngày trong tháng Tháng Ngày trong tuần [ yêu cầu ]







Ví dụ: bạn có thể sử dụng lệnh sau nếu bạn cần chạy tập lệnh sao lưu 20 phút một lần từ 3:00 chiều. đến 4:00 chiều hằng ngày.



* / hai mươi mười lăm - 16 * * * / đường dẫn / đến / backup.sh



Lệnh trước hoạt động khi bạn cần thực hiện một công việc tại một thời điểm cụ thể, nhưng nếu bạn cần cùng một lệnh để chạy sau mỗi lần khởi động thì sao?





Để đặt lệnh tương tự chạy khi hệ thống khởi động lại, hãy thay thế trường ngày và giờ bằng @reboot. Lệnh mới sẽ là:

@ khởi động lại / đường dẫn / đến / backup.sh



Trong lệnh trước, @reboot chỉ định rằng cron sẽ thực thi lệnh được chỉ định sau mỗi lần khởi động. Một lần nữa, chúng ta phải thêm lệnh vào tệp crontab.

Sử dụng lệnh sau để mở tệp crontab và chỉnh sửa nó để thêm công việc mới của chúng tôi.

crontab -và

Lưu ý rằng chúng tôi đang tạo công việc cho người dùng hiện tại. Ví dụ: nếu bạn cần lập lịch tác vụ cho một người dùng khác, một người dùng có tên linuxhint1 , lệnh sau sẽ là:

crontab -và -Trong linuxhint1

Khi tệp crontab mở ra, hãy thêm lệnh ở dòng dưới cùng. Lưu file và thoát.

Ngoài ra, hãy lưu ý rằng chúng tôi đang sử dụng nano trình soạn thảo, trình soạn thảo của bạn có thể khác, nhưng lệnh thì giống nhau.

Nếu công việc được lên lịch thành công, bạn sẽ nhận được một thông báo như hiển thị trong hình ảnh sau để cho biết cài đặt thành công crontab mới:

Tuy nhiên, bạn có thể sử dụng lệnh sau để liệt kê các công việc đã lên lịch.

crontab -l

Nếu bạn không muốn thực hiện lệnh tại thời điểm khởi động nữa, bạn có thể xóa nó bằng cách chỉnh sửa tệp crontab hoặc sử dụng lệnh được cung cấp bên dưới. Lưu ý rằng lệnh sau sẽ xóa tất cả các công việc đã lên lịch. Nếu đó không phải là những gì bạn muốn đạt được, hãy cuộn xuống crontab và xóa công việc theo cách thủ công bằng trình chỉnh sửa.

crontab -r

@Reboot thực thi một lệnh ngay sau thời gian khởi động. Tuy nhiên, bạn có thể chỉ định khoảng thời gian ngủ trước khi lệnh chạy. Ví dụ: nếu bạn cần lệnh thực thi 10 phút sau khi khởi động, bạn phải đặt thời gian bằng giây.

Lệnh sẽ là.

@ khởi động lại ngủ 600 / đường dẫn / đến / backup.sh

600 đại diện cho 10 phút được biểu thị bằng giây và ngủ là tùy chọn để sử dụng khi chỉ định thời gian trước khi thực thi.

Tệp crontab mới của chúng tôi sẽ được thiết lập, như hình dưới đây:

Lần tiếp theo khi bạn khởi động lại máy chủ của mình, tập lệnh sao lưu hoặc lệnh đã đặt sẽ thực thi sau 10 phút.

Cuối cùng, chúng tôi có thể xác minh rằng công việc đã lên lịch sẽ chạy bằng cách kiểm tra trạng thái cho dịch vụ crond . Nó nên được tích cực . Sử dụng lệnh sau để kiểm tra trạng thái của nó:

sudo trạng thái systemctl cron.service

Bạn có thể sử dụng nếu bạn nhận được đầu ra như đầu ra sau:

Nếu trạng thái của crond không hoạt động, bạn có thể kích hoạt nó bằng lệnh sau, sau đó kiểm tra trạng thái:

sudo systemctl cho phép cron.service

Đó là nó. Lệnh của bạn sẽ thực thi tại thời điểm khởi động.

Sự kết luận

Biết cách lên lịch công việc tại thời điểm khởi động là điều cần thiết đối với các quản trị viên Linux. May mắn thay, hướng dẫn này bao gồm một hướng dẫn thực hành toàn diện về cách sử dụng tiện ích cron Linux. Ngoài ra, chúng tôi đã thảo luận về cách bạn có thể đặt thời gian ngủ trước khi lệnh thực thi.