Làm thế nào để lên lịch một công việc Crontab cho mỗi giờ

How Schedule Crontab Job



Hầu hết người dùng Linux đều quen thuộc với bộ lập lịch công việc Crontab, nó hoạt động như một daemon im lặng thực hiện tất cả các tác vụ được giao cho nó một cách tự động mà không cần bất kỳ sự can thiệp nào của con người. Bộ lập lịch công việc này làm cho cuộc sống của người dùng Linux dễ dàng hơn nhiều, vì người dùng có thể giao tất cả các tác vụ thường xuyên xảy ra cho bộ lập lịch Crontab để các tác vụ này có thể được thực thi tự động theo một lịch trình cụ thể.

Đôi khi, bạn có thể muốn thực hiện một nhiệm vụ cụ thể mỗi giờ một lần. Đây có thể là một nhiệm vụ cực kỳ khó khăn đối với người dùng nếu tác vụ được thực hiện theo cách thủ công, vì người dùng sẽ phải có mặt hàng giờ để thực hiện tác vụ đó. Nếu nhiệm vụ cực kỳ quan trọng và bằng cách nào đó người dùng bỏ lỡ thời gian để thực hiện nó, điều này có thể dẫn đến hậu quả nghiêm trọng.







Bộ lập lịch công việc Crontab có thể là một may mắn trong những tình huống như vậy. Với Crontab, bạn có thể thêm các tác vụ vào tệp Crontab để được thực thi như một công việc tại những thời điểm cụ thể. Bài viết này sẽ hướng dẫn bạn cách lên lịch công việc Crontab xảy ra mỗi giờ một lần trong Linux Mint 20.



Phương pháp lập lịch công việc Crontab cho mỗi giờ

Để lên lịch công việc crontab xảy ra mỗi giờ một lần trong Linux Mint 20, hãy làm theo các bước được liệt kê bên dưới.



Bước 1: Tạo công việc để lên lịch làm công việc Crontab

Đầu tiên, chúng ta sẽ xác định một nhiệm vụ mà chúng ta muốn chạy như một công việc Crontab mỗi giờ một lần. Tác vụ này có thể là bất cứ thứ gì, từ tạo bản sao lưu đến chạy một tập lệnh bash đơn giản. Trong ví dụ này, chúng tôi sẽ tạo một tập lệnh bash sẽ chạy mỗi giờ. Chúng tôi sẽ tạo một tệp bash trong Thư mục chính của chúng tôi và thêm một tập lệnh để in một thông báo ngẫu nhiên trong thiết bị đầu cuối trong tệp bash này, như thể hiện trong hình sau. Sau đó, chúng tôi sẽ chỉ cần lưu tệp này và đóng nó. Chúng tôi sẽ xác định công việc để tập lệnh bash này được thực thi mỗi giờ.





Bước 2: Khởi động Dịch vụ Crontab

Như bạn có thể thấy trong ảnh chụp màn hình bên dưới, chúng tôi đã khởi chạy một cửa sổ đầu cuối mới trước khi bắt đầu dịch vụ crontab mới.

Trước khi thêm tập lệnh này như một công việc vào tệp Crontab, trước tiên chúng ta cần khởi động dịch vụ Crontab, việc này có thể được thực hiện bằng cách thực hiện lệnh sau:

$sudosystemctl start cron


Chạy lệnh này sẽ bắt đầu dịch vụ Crontab ngay lập tức mà không hiển thị bất kỳ đầu ra nào trên thiết bị đầu cuối.



Bước 3: Kiểm tra trạng thái của dịch vụ Crontab

Mặc dù lệnh trên tự động khởi động dịch vụ Crontab, bạn có thể kiểm tra dịch vụ Crontab trước khi tiếp tục bằng cách xác minh trạng thái của nó thông qua lệnh sau:

$sudotrạng thái systemctl cron


Nếu dịch vụ Crontab đã khởi động thành công, thì việc chạy lệnh trên sẽ hiển thị cho bạn trạng thái Hoạt động (Đang chạy), như thể hiện trong hình dưới đây. Trạng thái này sẽ xác nhận rằng dịch vụ Crontab đang chạy chính xác.

Bước 4: Khởi chạy tệp Crontab

Khi bạn đã xác nhận rằng dịch vụ Crontab đang chạy bình thường, bạn có thể mở tệp Crontab để thêm công việc mong muốn vào đó, được lên lịch hàng giờ. Tệp Crontab có thể được mở bằng cách chạy lệnh sau trong terminal:

$crontab -e


Lệnh này sẽ mở tệp Crontab trong thiết bị đầu cuối.

Bước 5: Thêm nhiệm vụ vào tệp Crontab để được thực hiện mỗi giờ

Khi tệp Crontab được mở, bạn sẽ cần nhấn Ctrl + O để chỉnh sửa nó. Tiếp theo, thêm dòng được đánh dấu trong hình ảnh sau vào tệp Crontab của bạn. Trong dòng này, tham số 0 * * * * sẽ yêu cầu trình nền Cron thực hiện công việc mỗi giờ một lần. Chúng tôi đã viết đường dẫn của tệp bash của chúng tôi trong dòng này để daemon Cron có thể dễ dàng truy cập tệp bash bất cứ khi nào công việc được thực thi. Theo cách tương tự, bạn cũng có thể thêm bất kỳ lệnh nào khác mà bạn muốn thực hiện hàng giờ thay vì đưa ra đường dẫn tệp. Sau khi thêm dòng này, bạn có thể lưu tệp này và đóng nó.

Sau khi bạn đóng tệp này, trình nền Cron sẽ tự động cài đặt Crontab mới, như thể hiện trong hình dưới đây. Bằng cách này, bạn không cần phải thông báo rõ ràng cho hệ thống của mình rằng bạn đã thêm một công việc Crontab mới vào tệp Crontab vì bản thân daemon Cron thực hiện công việc này bất cứ khi nào bạn thực hiện bất kỳ sửa đổi nào đối với tệp. Khi tệp Crontab mới đã được cài đặt, công việc sẽ được thực hiện mỗi giờ.

Phần kết luận

Trong hướng dẫn này, bạn đã học được một phương pháp đơn giản để lên lịch công việc Crontab mỗi giờ. Trong ví dụ được thảo luận trong bài viết này, chúng tôi đã tạo một công việc Crontab để tệp bash được thực thi mỗi giờ. Bạn có thể tạo bất kỳ tác vụ nào khác được thực hiện mỗi giờ như một công việc Crontab bằng cách làm theo cùng một quy trình. Hơn nữa, nếu bạn muốn công việc Crontab của mình được thực hiện tại một thời điểm cụ thể trong giờ, ví dụ: lúc 10:30, sau đó 11:30, v.v., thì bạn có thể thực hiện việc này bằng cách thay đổi trường 0 phút thành 30 Bằng cách này, bạn có thể chơi nhiều thứ hơn với việc lên lịch công việc bằng cách sử dụng daemon Cron.