cron คืออะไร?
cron เป็น utilities ตัวหนึ่งทำงานบนระบบปฏิบัติการ linux ทําหน้าที่ช่วยจัดการให้ software ของเรารันโดยอัตโนมัติ ตาม scheduling ที่เรา config ไว้
crontab คืออะไร?
crontab เป็นไฟล์ที่เก็บตาราง scheduling และรายละเอียดต่างๆ ที่เราตั้งเวลาไว้เพื่อที่จะสั่งให้ cron ทํางานอีกทีนึง
วิธีใช้งาน crontab
การใช้งานก็ง่ายๆครับ เปิดไฟล์ “/etc/crontab” ขึ้นมาแล้วแก้ไขตามที่เราต้องการ ใช้คําสั่งนี้ได้เลยครับ
sudo nano /etc/crontab
หรือ
crontab -e
จะพบเนื้อหาไฟล์ดังนี้
crontab หลังจากนั้นให้เราเพิ่มบรรทัดคําสั่งต่อท้ายเข้าไป โดยรูปแบบของบรรทัดคําสั่งคือ [นาที] [ชั่วโมง] [วัน] [เดือน] [วันในสัปดาห์] [user] [โปรแกรมที่ต้องการรัน]
- [นาที] คือ นาที ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-59 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
- [ชั่วโมง] คือ ชั่วโมง ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-23 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
- [วัน] คือ วัน ที่จะรัน Script ค่าที่เป็นไปได้คือ 1-31 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
- [เดือน] คือ เดือน ที่จะรัน Script ค่าที่เป็นไปได้คือ 1-12 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
- [วันในสัปดาห์] คือ วันในสัปดาห์ ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-7 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
- [user] คือ user ที่รันคําสั่ง
- [โปรแกรมที่ต้องการรัน] คือ โปรแกรมที่ต้องการรัน เมื่อตรงตามเวลาที่กําหนด
crontab
Example1
ถ้าเราต้องการจะสั่งให้รันคําสั่ง xxx ทุกๆ 5 นาที่ เราจะต้องเขียนแบบนี้
*/5 * * * * root xxx
Example2
ถ้าเราต้องการจะสั่งให้รันคําสั่ง yyy ทุกๆ 1 ชั่วโมง เราจะต้องเขียนแบบนี้
0 * * * * root yyy
รูปตัวอย่างการแก้ไข
crontab เมื่อแก้ไขไฟล์เสร็จ ก็ Save ให้เรียบร้อย แล้ว Reboot เครื่อง 1 ครั้ง เป็นอันเสร็จพิธี :)