Trong bài viết này, chúng tôi sẽ xem xét và xem cách chúng tôi có thể lên lịch và chạy các tác vụ trong nền tự động trong khoảng thời gian đều đặn bằng cách sử dụng Crontab yêu cầu.

Xử lý công việc thường xuyên theo cách thủ công là một nhiệm vụ khó khăn đối với quản trị viên hệ thống và những tác vụ đó có thể được lên lịch và chạy tự động trong nền mà không cần con người can thiệp bằng cách sử dụng cron daemon trong hệ điều hành giống như Linux hoặc Unix.

[ You might also like: How to Create and Manage Cron Jobs on Linux ]

Ví dụ: bạn có thể tự động sao lưu hệ thống Linux, cập nhật lịch trình, và đồng bộ hóa các tệp và nhiều hơn nữa bằng cách sử dụng Cron daemon, được sử dụng để chạy các tác vụ đã lên lịch từ dòng lệnh hoặc sử dụng các công cụ trực tuyến để tạo các công việc cron.

Cron thức dậy mỗi phút và kiểm tra các nhiệm vụ theo lịch trình có thể đếm được – Crontab (CRON TABle) là một bảng mà chúng ta có thể lập lịch các loại tác vụ lặp đi lặp lại như vậy.

Lời khuyên: Mỗi người dùng có thể có crontab của riêng họ để tạo, sửa đổi và xóa các tác vụ. Theo mặc định cron được bật cho người dùng, tuy nhiên, chúng tôi có thể hạn chế người dùng bằng cách thêm một mục vào /etc/cron.deny tập tin.

See also  20 lệnh Linux YUM (Yellowdog Updater, đã được sửa đổi) để quản lý gói

Tệp Crontab bao gồm lệnh trên mỗi dòng và thực sự có sáu trường và được phân tách bằng dấu cách hoặc tab. Năm trường đầu đại diện cho thời gian để chạy các tác vụ và trường cuối cùng là cho lệnh.

  • Minute (giữ các giá trị giữa 0-59)
  • Giờ (giữ các giá trị giữa 0-23)
  • Ngày trong tháng (giữ các giá trị giữa 1-31)
  • Tháng trong năm (giữ các giá trị giữa 1-12 hoặc là Tháng 1-Tháng 12, bạn có thể sử dụng ba chữ cái đầu tiên của tên mỗi tháng, tức là Tháng 1 hoặc tháng 6.)
  • Ngày trong tuần (giữ các giá trị giữa 0-6 hoặc là CN-T7, Ở đây, bạn cũng có thể sử dụng ba chữ cái đầu tiên của tên mỗi ngày, tức là Chủ nhật hoặc Thứ tư. )
  • Lệnh – Lệnh / path / to / hoặc tập lệnh bạn muốn lập lịch.

1. Liệt kê các mục nhập Crontab

Liệt kê hoặc quản lý nhiệm vụ bằng lệnh crontab với -l tùy chọn cho người dùng hiện tại.

# crontab -l

00 10 * * * /bin/ls >/ls.txt

2. Chỉnh sửa các mục nhập Crontab

Để chỉnh sửa mục nhập crontab, hãy sử dụng -e tùy chọn như được hiển thị bên dưới. Trong ví dụ dưới đây sẽ mở lịch công việc trong VI người biên tập. Thực hiện các thay đổi cần thiết và bỏ nhấn :wq các phím tự động lưu cài đặt.

# crontab -e

3. Liệt kê công việc Cron đã lên lịch

Để liệt kê các công việc đã lên lịch của một người dùng cụ thể được gọi là tecmint sử dụng tùy chọn như -u (Người dùng) và -l (Danh sách).

# crontab -u tecmint -l

no crontab for tecmint

Ghi chú: Chỉ có nguồn gốc người dùng có đầy đủ đặc quyền để xem các mục nhập crontab của người dùng khác. Người dùng bình thường không thể xem những người khác.

See also  35 Ví dụ thực tế về lệnh Find trong Linux

4. Xóa mục nhập Crontab

Thận trọng: Crontab với -r tham số sẽ xóa các công việc đã lên lịch hoàn chỉnh mà không cần xác nhận từ crontab. Sử dụng -i trước khi xóa crontab của người dùng.

# crontab -r

5. Nhắc trước khi xóa Crontab

crontab với -i tùy chọn sẽ nhắc bạn xác nhận từ người dùng trước khi xóa crontab của người dùng.

# crontab -i -r

crontab: really delete root's crontab?

6. Các ký tự đặc biệt được phép (*, -, /,?, #)

  • Dấu hoa thị
  • – Khớp tất cả các giá trị trong trường hoặc bất kỳ giá trị nào có thể. Dấu gạch nối (-)
  • – Để xác định phạm vi. Gạch chéo (/)
  • – Trường thứ nhất / 10 nghĩa là cứ sau mười phút hoặc khoảng tăng dần của phạm vi. Các Dấu phẩy (,)

– Để tách các mục.

7. Lịch trình Cron toàn hệ thống

  • Người quản trị hệ thống có thể sử dụng thư mục cron xác định trước như hình dưới đây.
  • /etc/cron.d
  • /etc/cron.daily
  • /etc/cron.hourly
  • /etc/cron.monthly

/etc/cron.weekly

8. Lên lịch công việc cho thời gian cụ thể Các công việc dưới đây xóa các tệp và thư mục trống khỏi / tmp tại 12:30 sáng hàng ngày. Bạn cần phải đề cập đến tên người dùng để thực hiện lệnh crontab. Trong ví dụ dưới đây nguồn gốc

# crontab -e

30 0 * * *   root   find /tmp -type f -empty -delete

người dùng đang thực hiện một công việc cron.

9. Chuỗi đặc biệt cho lịch trình chung Dây
Ý nghĩa @reboot
Lệnh sẽ chạy khi hệ thống khởi động lại. @hằng ngày
Mỗi ngày một lần hoặc có thể sử dụng @midnight. @weekly
Một tuần một lần. @yearly
See also  10 ví dụ về lệnh sFTP để truyền tệp trên máy chủ từ xa trong Linux

Mỗi năm một lần. chúng ta cũng có thể sử dụng từ khóa @annently.

Cần thay thế năm trường của lệnh cron bằng các từ khóa nếu bạn muốn sử dụng tương tự.

10. Nhiều Lệnh với Dấu đôi và (&&)

# crontab -e

@daily <command1> && <command2>

Trong ví dụ dưới đây, command1 và command2 chạy hàng ngày.

11. Tắt thông báo qua email. Theo mặc định, cron sẽ gửi thư đến tài khoản người dùng đang thực thi cronjob. Nếu bạn muốn vô hiệu hóa nó, hãy thêm công việc cron của bạn tương tự như ví dụ dưới đây. Sử dụng > / dev / null 2> & 1 tùy chọn ở cuối tệp sẽ chuyển hướng tất cả đầu ra của kết quả cron trong/ dev / null

[[email protected] ~]# crontab -e
* * * * * >/dev/null 2>&1

. phần kết luận:Tự động hóa các nhiệm vụ có thể giúp chúng tôi thực hiện các nhiệm vụ của mình theo những cách tốt hơn, không có lỗi và hiệu quả. Bạn có thể tham khảo trang hướng dẫn sử dụng crontab để biết thêm thông tin bằng cách gõ ‘người đàn ông crontab

‘trong thiết bị đầu cuối của bạn.

By admin

Leave a Reply