Tải bản đầy đủ (.pdf) (7 trang)

Tài liệu Thiết lập chế độ tự động trong Linux với Crontab pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.29 MB, 7 trang )

Thiết lập chế độ tự động trong Linux với
Crontab
Tính năng Cron trong Linux thực chất là 1 chế độ sắp xếp tự động các
chương trình, ứng dụng và kích hoạt chúng tại 1 thời điểm nhất định trong hệ
thống, tương tự với Task Scheduler của Windows. Tất cả những gì chúng ta
cần làm tại đây là gán các chương trình cần thực thi tới file crontab của hệ thống
và sử dụng cấu trúc lệnh phù hợp, cron sẽ tự động thực hiện các ứng dụng đó vào
thời điểm đã được thiết lập sẵn trước đó. Do vậy, tính năng này rất phù hợp trong
quá trình tự động sao lưu dữ liệu, bảo dưỡng hệ thống và các công việc tương tự
khác.
Mở Crontab:
Trước tiên, các bạn hãy mở Terminal từ menu chính:

Sử dụng cấu trúc crontab -e để mở file crontab của tài khoản đang sử dụng. Các
câu lệnh tại đây sẽ được thực hiện với quyền của tài khoản hiện tại, còn nếu bạn
muốn thực thi lệnh trong toàn bộ hệ thống thì hãy áp dụng cấu trúc sudo crontab -
e để mở tính năng crontab của tài khoản root. Sử dụng lệnh su -c “crontab -e”
nếu distributor Linux của bạn không dùng sudo. Sau đó, hệ thống sẽ hiển thị các
tùy chọn editor, chọn Nano nếu có (vì đây là trình editor đơn giản, dễ sử dụng và
phù hợp với nhiều người):

Các bạn sẽ thấy trình chỉnh sửa text Nano với thông tin GNU nano ở phần header
trên cửa sổ Terminal. Và nếu không chọn thì crontab sẽ được mở bằng Vi:

Nếu không muốn sử dụng Vi thì các bạn gõ lệnh :quit và nhấn Enter để thoát
khỏi Vi. Sau đó gõ export EDITOR=nano và crontab -e để mở file crontab
bằng Nano.
Gán tác vụ mới:
Sử dụng phím mũi tên lên xuống hoặc Page Down để di chuyển xuống phía cuối
file crontab trong Nano. Tất cả các dòng bắt đầu bằng # nghĩa là đã được cron bỏ
qua, bên cạnh đó chúng còn giữ chức năng lưu trữ thông tin gợi ý khi người dùng


chỉnh sửa đoạn mã bất kỳ nào đó.

Cụ thể, cấu trúc lệnh được viết trong crontab phải tuân theo quy chuẩn và chấp
nhận những giá trị sau:
minute(0-59) hour(0-23) day(1-31) month(1-12)
weekday(0-6) command
Và nếu muốn áp dụng bất kỳ giá trị nào, các bạn chỉ cần thay bằng ký tự đặc biệt
*. Ví dụ nếu muốn thực hiện câu lệnh /usr/bin/example vào lúc 12:30 AM hàng
ngày thì sử dụng lệnh:
29 0 * * * /usr/bin/example

Tại đây chúng ta sử dụng giá trị 29 thay vì phút thứ 30 và 0 thay cho 12h AM, bởi
vì đơn vị thời gian tính theo phút, giờ và ngày sẽ bắt đầu bằng 0. Tuy nhiên, các
bạn cần lưu ý rằng ngày và tháng lại bắt đầu bằng 1.
Sử dụng cấu trúc ngăn cách bằng dấu phẩy để chỉ định nhiều khoảng thời gian
khác nhau. Ví dụ:
0,14,29,44 * * * * /usr/bin/example2
sẽ thực hiện lệnh /usr/bin/example2 vào phút thứ 15 mỗi giờ trong ngày. Mặt
khác, chúng ta có thể sử dụng cấu trúc lệnh như dưới đây để áp dụng trong 1
khoảng thời gian nhất định nào đó:
0 11 * 1-6 * /usr/bin/example3
thì hệ thống sẽ chạy lệnh /usr/bin/example3 trưa chiều mỗi ngày, nhưng chỉ từ
tháng 1 tới tháng 6.

Sau khi chỉ định toàn bộ các tham số cần thiết tại đây, chúng ta nhấn Ctrl + O và
nhấn Enter để lưu file crontab trong Nano. Sau đó nhấn Ctrl + X để đóng Nano,
các bạn sẽ thấy dòng thông báo:
“crontab: installing new crontab”
nghĩa là file crontab và các tác vụ đi kèm đã được thiết lập hoàn tất.


Chúc các bạn thành công!

×