Site icon LCDUNG

Những lệnh crontab thường dùng

Tổng quan

Crontab trên Server

Crontab (cron table)

crontab -e: tạo hoặc chỉnh sửa file crontab
crontab -l: hiển thị file crontab
crontab -r: xóa file crontab
# Install:
yum install cronie
# Start crontab và tự động chạy mỗi khi reboot:
systemctl start crond
chkconfig crond on
* * * * * owner command to execute 1
* * * * * owner command to execute 2
* * * * * owner command to execute 3
┌───────────── minute (0 - 59)
│ ┌───────────── hour (0 - 23)
│ │ ┌───────────── day of month (1 - 31)
│ │ │ ┌───────────── month (1 - 12)
│ │ │ │ ┌───────────── day of week (0 - 6) (Sunday to Saturday;
│ │ │ │ │                                       7 is also Sunday)
│ │ │ │ │
│ │ │ │ │
* * * * * owner command to execute

Setup schedule for cron tab

ScheduleDescriptionFormat
yearlyRun once a year at midnight of 1 January0 0 1 1 *
monthlyRun once a month at midnight of the first day of the month0 0 1 * *
weeklyRun once a week at midnight on Sunday morning0 0 * * 0
dailyRun once a day at midnight0 0 * * *
hourlyRun once an hour at the beginning of the hour0 * * * *

Example

# Run a task for every Friday at 17:01pm
1 17 * * 5 /var/cron/pkgtabs/shutdown_server_and_go_drinking
 
# Run db_export_dump at 23:45 (11:45 PM) every Saturday
45 23 * * 6 /var/cron/pkgtabs/db_export_dump
 
# Run task for every hours
0 * * * * /var/cron/pkgtabs/send_mail

Config crontab

Để crontab tự động chạy cần kích hoạt và cấu hình crontab như sau:

crontab -e
 
# Sau đó nhập nội dung
# Chạy cron đơn giản, repeat theo từng giờ
crontab 0 * * * * $(OWNER) /var/share/point_tool/task1.sh
  
# Chạy cron tab theo từng phút, đồng thời tại lock để tránh trường hợp task chạy chồng lên nhau (task xữ lý chưa hết thời gian thì task sau đến thời điểm chỉ định sẽ không được chạy
crontab * * * * * $(OWNER) /usr/bin/flock -n /var/point_tool/cron/task2.lockfile php /var/share/point_tool/task2.php --minutely >> /var/log/cron/task2.log

Trong đó

Execute crontab

Có thể start crontab ở console như sau:

# Run a task for every Friday at 17:01pm
1 17 * * 5 /var/cron/pkgtabs/shutdown_server_and_go_drinking
 
# Run db_export_dump at 23:45 (11:45 PM) every Saturday
45 23 * * 6 /var/cron/pkgtabs/db_export_dump
 
# Run task for every hours
0 * * * * /var/cron/pkgtabs/send_mail


Exit mobile version