Cron Job Là Gì? Cách Thiết Lập Cron Job Trong Linux | BKHOST
Có thể bạn quan tâm
Trang chủ / Blog / Cron Job là gì? Cách thiết lập Cron Job trong Linux
# Cron Job là gì? Cách thiết lập Cron Job trong Linux 19/05/2022 - 09:11 Trịnh Duy Thanh Theo dõi bkhost trênCron là một công cụ hẹn giờ có công dụng rất lớn cho phép người dùng lên lịch các lệnh và chạy chúng một cách thường xuyên trên hệ thống Linux. Bạn có thể tạo Cron Job bằng lệnh crontab để chạy một ứng dụng hay thực thi một script bất kỳ.

Vậy làm thế nào để xây dựng các ứng dụng trên máy chủ Linux bằng công cụ Cron thông qua lệnh crontab? Câu trả lời sẽ có ngay sau đây.
Cron Job là gì?
Cron là chương trình được tích hợp sẵn trong hệ thống Linux, cho phép chạy các lệnh tự động tại một thời điểm cụ thể.
Cron Jobs là một tập hợp các lệnh và tập lệnh thực thi theo lịch trình có sẵn. Các nhà quản trị lựa chọn công cụ này để tự động hóa các tác vụ sao lưu, dọn dẹp thư mục, thông báo trên hệ điều hành Linux.
Điều kiện tiên quyết để sử dụng Cron Job:
- Hệ thống máy tính chạy Linux.
- Truy cập vào cửa sổ dòng lệnh / dòng lệnh (Ctrl-Alt-T hoặc Ctrl-Alt-F2).
- Tài khoản người dùng có đặc quyền root hoặc sudo
Cú pháp Crontab cơ bản trong Linux
Chương trình Cron sử dụng cú pháp cụ thể để diễn giải các dòng lệnh trong tệp chứa lịch trình crontab.
Dòng lệnh crontab bao gồm:
{{EJS0}}Lệnh cron gồm có:
- Trường thời gian a b c d e xác định lịch trình của công việc.
- Trường user-name /directory/command xác định vị trí và tập lệnh được phép chạy.
- Tác vụ output là tùy chọn, giúp xác định cách hệ thống thông báo công việc đã hoàn thành.
1. Định dạng thời gian công việc Cron
Trường thời gian a b c d e đại diện cho thời điểm và tần suất chạy lệnh của Cron và mỗi khoảng phân tách là một giá trị cụ thể.
Một số giá trị cho trường và cú pháp:
| Field | Giá trị khả thi | Cú pháp | Ý nghĩa |
| [a] – phút | 0 – 59 | 7 * * * * | Cron job được bắt đầu khi đồng hồ hệ thống hiển thị số 7 ở vị trí của phút. |
| – Giờ | 0 – 23 | 0 7 * * * | Cron Job chạy bất kỳ lúc nào đồng hồ hệ thống hiển thị 7 giờ |
| [c] – Ngày | 0 – 31 | 0 0 7 * * | Cron Job sẽ bắt đầu chạy vào ngày thứ 7 của tháng. |
| [d] – Tháng | 0 = không cóvà 12 = tháng 12 | 0 0 0 7 * | Cron Job sẽ chỉ được chạy trong tháng 7 |
| [e] – Ngày trong tuần | 0 = Chủ nhậtvà 7 = Chủ nhật | 0 0 * * 7 | Cron Job sẽ chỉ chạy vào Chủ nhật. |
2. Lệnh thực thi
Lệnh thực thi của cron đại diện cho thư mục và tên tệp trong các tập lệnh mà bạn muốn hoàn thành.
Ví dụ: Trong lệnh backup.sh, bạn có thể xem thư mục gốc trong bất kỳ tập lệnh nào:
{{EJS1}}3. Output (Có thể thực hiện hoặc không)
Lệnh cron sẽ gửi email đến chủ sở hữu của crontab để thuận tiện theo dõi các nhiệm vụ trong quá trình làm việc của tệp.
Tính năng tùy chọn này giúp hạn chế hộp thư đến bị đầy do công việc quá thường xuyên bằng cách thêm chuỗi >/dev/null 2>&1 sau trường thời gian và lệnh để tắt email output:
{{EJS2}}4. Sử dụng các toán tử (Có thể thực hiện hoặc không)
Toán tử là một công cụ thao tác các dữ liệu bao gồm các ký tự đặc biệt thực hiện các phép toán của giá trị trong trường cron:
- Dấu sao (*) chỉ định tất cả các giá trị trong phạm vi thời gian như giờ, ngày, tháng.
- Dấu phẩy (,) chỉ định danh sách các giá trị riêng lẻ.
- Dấu gạch ngang (–) cho biết phạm vi của các giá trị.
- Dấu gạch chéo (/) chia giá trị thành các bước nhỏ.
Thiết lập Cron Job
Để thiết lập cron job, bạn cần mở crontab bằng trình soạn thảo văn bản và nhập cú pháp cho lệnh bạn muốn chạy.
Cách chỉnh sửa tệp crontab
Mở tệp crontab với lệnh:
{{EJS3}}Bạn có thể thêm bất kỳ số lượng tác vụ đã lên lịch vào các dòng lệnh:

Sau khi hoàn tất, hãy lưu lại tệp và thoát. Không cần khởi động lại, các lệnh cron sẽ đọc và thực thi các tác vụ đã được cung cấp.
Chỉnh sửa crontab cho một người dùng khác
Để chỉnh sửa crontab cho người dùng khác, nhập lệnh:
{{EJS4}}Lưu ý: Trong trường hợp này, bạn có thể lựa chọn khởi động lại hoặc không.
Ví dụ về Cron Job
Sử dụng dấu sao để chỉ định các giá trị trong các trường của lệnh cron. Ví dụ:
{{EJS5}}Cron Job sẽ được chạy vào lúc 2 giờ với điều kiện ngày đầu tiên của tháng rơi vào thứ 4. Hoặc nếu đặt:
{{EJS6}}Cron Job sẽ được chạy vào lúc 2 giờ và vào các ngày đầu tiên hàng tháng.
Bảng sau cung cấp một số lệnh cơ bản sử dụng tệp /root/backup.sh:
| Cron Job | Yêu cầu |
| Chạy Cron Job mỗi phút | * * * * * /root/backup.sh |
| Chạy Cron Job cứ sau 30 phút | 30 * * * * /root/backup.sh |
| Chạy Cron Job mỗi giờ | 0 * * * * / root / backup.sh |
| Chạy Cron Job mỗi ngày vào lúc nửa đêm | 0 0 * * * /root/backup.sh |
| Chạy Cron Job lúc 2 giờ sáng mỗi ngày | 0 2 * * * /root/backup.sh |
| Chạy công việc Cron mỗi ngày 1 tháng | 0 0 1 * * /root/backup.sh |
| Chạy Cron Job vào ngày 15 hàng tháng | 0 0 15 * * /root/backup.sh |
| Chạy Cron Job vào ngày 1 tháng 12 – Nửa đêm | 0 0 0 12 * /root/backup.sh |
| Chạy Cron Job vào Thứ Bảy lúc Nửa đêm | 0 0 * * 6 /root/backup.sh |
Sử dụng các ký tự đặc biệt
1. Sử dụng dấu gạch chéo để chia chuỗi thời gian thành các bước khác nhau.Ví dụ: Cài đặt chạy bản sao cứ sau 15 phút:
{{EJS7}}Dấu * có nghĩa là tất cả các giá trị và /15 là đếm và lặp lại sau mỗi 15 phút.
2. Sử dụng ký tự gạch ngang để chỉ định một phạm vi nhất định.
Ví dụ: Cài đặt chạy mã vào 4 giờ sáng mỗi ngày trong tuần:
{{EJS8}}1-5 có nghĩa là công việc được chạy từ thứ hai – thứ 6.
3. Sử dụng dấu phẩy để liệt kê các giá trị khi chạy.
Ví dụ:
{{EJS9}}Điều này có nghĩa là công việc sẽ chạy vào lúc 4 giờ sáng trong hai ngày thứ ba và thứ năm.
4. Một số ký tự đại diện có thể được kết hợp.
Ví dụ: Cài đặt thực hiện lệnh chạy cách ngày lúc 37 phút:
{{EJS10}}1-23 chỉ định phạm vi giờ, /2 đặt khoảng thời gian cách nhau một giờ.
Liệt kê Cron Job đang hoạt động

Công cụ cho phép bạn liệt kê tất cả các Cron Job trên hệ thống máy chủ mà không cần mở tệp crontab. Nhập lệnh sau vào cửa sổ dòng lệnh:
{{EJS11}}Tổng kết về cách thiết lập Cron Job trong Linux
Hy vọng qua những thông tin mà chúng tôi đã chia sẻ trên đây có thể giúp cho bạn hiểu thêm về cơ chế hoạt động và cách sử dụng Cron Job trong Linux.
Nếu có thắc mắc về những vấn đề khác của Linux, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.
2022-05-19
Thuê Server Vật Lý tại BKHOST
Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay:
thuê server
- Kiến thức server
Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp. Follow: Facebook Twitter Linkedin Symlink là gì? Sử dụng lệnh Ln để tạo Symbolic Link trong Linux Bài trước AJAX là gì? Cách sử dụng AJAX trong PHP và jQuery Bài sauBài viết liên quan- WordPress Performance – Cách tối ưu hiệu suất WordPress
- VPS US là gì? Nên lựa chọn VPS US hay VPS VN
- Vị trí đặt máy chủ ảnh hưởng thế nào đến tốc độ website?
- So Sánh OpenLiteSpeed và Nginx – Hai Web Server Phổ Biến
- Private Cloud là gì? Khái niệm và lợi ích của Private Cloud
- So sánh VPS và Cloud Server – Tìm hiểu và lựa chọn giải pháp phù hợp
- Lựa Chọn Máy Chủ Cho Doanh Nghiệp Nhỏ: Bước Quan Trọng Đối Với Sự Phát Triển Của Bạn
- MySQL Workbench là gì? Cách cài đặt & thiết lập cực đơn giản
- MySQL là gì? Tại sao nó quan trọng trong lĩnh vực công nghệ?
- Điện toán đám mây là gì? Tìm hiểu chi tiết về công nghệ lưu trữ đám mây.
Bạn cần đăng nhập để đăng bình luận.
Tên miền đang khuyến mại
345K304K Đăng ký
340K265K Đăng ký
399K309K Đăng ký
890K750K Đăng ký
370K325K Đăng ký
TIN ĐƯỢC ĐỌC NHIỀU NHẤT
Bao nhiêu MB bằng 1GB? Công thức tính như thế nào?
08/01/2022 - 09:13 20078Làm thế nào để trở thành một Hacker chuyên nghiệp?
08/01/2022 - 08:10 16002Cổng Port là gì? Có chức năng và phân loại như thế nào?
10/01/2022 - 07:01 155935 cách tìm địa chỉ IP máy tính của người khác chính xác nhất
26/05/2022 - 16:24 14485Err_ssl_version_or_cipher_mismatch là gì? Cách sửa ra sao?
20/03/2022 - 12:30 14416
THÔNG BÁO
×
Close Trượt lên đầu trang Góp ý Miễn phí cước gọi Chat ngay qua Zalo Chat ngay qua Messenger Góp ý cho chúng tôi Góp ý -
Rất không hài lòng -
Không hài lòng -
Bình thường -
Hài lòng -
Rất hài lòng
Từ khóa » Sử Dụng Lệnh Crontab
-
Crontab Là Gì? Hướng Dẫn Sử Dụng Crontab Linux - Vietnix
-
Sử Dụng Cron Crontab Tự động Chạy Script Trên Server Linux
-
Tìm Hiểu Crontab Trên Linux - Viblo
-
Crontab Là Gì? Hướng Dẫn Sử Dụng Crontab Linux - Tino Group
-
Crontab Là Gì? Cách Cài đặt & Sử Dụng Crontab Linux Từ A - Z
-
Những Lệnh Crontab Thường Dùng | TopDev
-
Toàn Tập Cách Sử Dụng Crontab Trên Server Linux - VNTALKING
-
Hướng Dẫn Sử Dụng CronJob/CronTab Thực Hiện Các Tác Vụ định Kỳ ...
-
Làm Việc Với CRONTAB Trên LINUX - Hybrid Technologies
-
Crontab Linux Là Gì? Hướng Dẫn Cài Đặt, Sử Dụng Chuẩn Chỉ Từ A
-
Crontab Trong Linux: Cách Tạo Và Quản Lý Cron Jobs - Freetuts
-
Hướng Dẫn Sử Dụng Cron Job
-
Cách Sử Dụng Cron để Tự động Hóa Công Việc Trên CentOS 8
-
Crontab Là Gì? Một Số Câu Lệnh Cơ Bản. - HOSTVN
-
Hướng Dẫn Cài đặt Và Sử Dụng Crontab Linux Chi Tiết - Mua Key
-
Linux Crontab Với Các Ví Dụ Về Cron Jobs
-
Linux Cron Là Gì? Hướng Dẫn Cài Đặt Linux Cron - VinaHost
-
Crontab Trong Linux: VÍ DỤ Lập Lịch Công Việc - SoftGeek
-
Cách Sử Dụng CronTab Linux Update 2020 - Ciscolinksys