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.
Cài đặt crontab bằng yum
yum install crontabs.noarchCron làm việc thế nào?
yum install vixie-cron ( sử dụng lệnh này nếu lệnh trên không hoạt động)
Một cron schedule đơn giản là một text file. Mỗi người dùng có một cron schedule riêng, file này thường nằm ở /var/spool/cron. Crontab files không cho phép bạn tạo hoặc chỉnh sửa trực tiếp với bất kỳ trình text editor nào, trừ phi bạn dùng lệnh crontab. Một số lệnh thường dùng:
crontab -e: tạo hoặc chỉnh sửa file crontabCấu trúc của crontab
crontab -l: hiển thị file crontab
crontab -r: xóa file crontab
Một crontab file có 5 trường xác định thời gian, cuối cùng là lệnh sẽ được chạy định kỳ, cấu trúc như sau:
* * * * * command to be executedNếu một cột được gán ký tự *, nó có nghĩa là tác vụ sau đó sẽ được chạy ở mọi giá trị cho cột đó.
– – – – –
| | | | |
| | | | +—– day of week (0 – 6) (Sunday=0)
| | | +——- month (1 – 12)
| | +——— day of month (1 – 31)
| +———– hour (0 – 23)
+————- min (0 – 59)
Ví dụ
Giả sử một đoạn script backup database MySQL như sau:
#!/bin/bashSau đó cho script này chạy định kỳ vào 4h sáng hàng ngày bằng cách tạo một file crontab như sau:
DB=db_gocit_bk_`date +%Y%m%d-%H%M`.sql
/usr/bin/mysqldump -u root –password=’password_gocit’ –databases gocit -R > /backup/database/$DB
gzip /backup/database/$DB
# crontab -eCuối cùng, nhớ kiểm tra dịch vụ cron daemon
0 4 * * * /bin/sh /backup/backup.sh >/dev/null
# /etc/init.d/crond statusNếu crontab chưa khởi động thì khởi động bằng lệnh
# /etc/init.d/crond start
# chkconfig crond on
Nguồn : http://www.gocit.vn/bai-viet/crontab-linux/
No comments:
Post a Comment