เมื่อคอมพิวเตอร์ของคุณถูกปิด (หรือ cron daemon ไม่ทำงาน), งาน cron จะไม่เริ่มทำงาน
หากคุณมีงานที่คุณต้องการเรียกใช้หลังจากข้อเท็จจริงในช่วงเวลาดังกล่าวเมื่อคอมพิวเตอร์ถูกปิดให้ใช้ anacron ติดตั้งโดยค่าเริ่มต้นให้ดู "man anacron", "man anacrontab" หรือไฟล์ / etc / anacrontab สำหรับข้อมูลเพิ่มเติม
Ubuntu ใช้ anacron เป็นค่าเริ่มต้นสำหรับรายการ crontab ใน:
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
ปล่อย crontabs ที่เหลือให้จัดการโดย cron daemon หลักโดยเฉพาะ:
/etc/crontab
/etc/cron.d
/var/spool/cron
หมายเหตุ
Anacron ไม่ได้ทำงานเป็น daemon แต่อาศัยสคริปต์การเริ่มต้นระบบและ cron เองที่จะเรียกใช้
ในกล่อง Ubuntu 8.04 ที่ฉันกำลังดูอยู่ /etc/init.d/anacron จะถูกเรียกใช้ตอนบูตและอีกครั้งโดย cron ทุกเช้าเวลา 07:30 น.
README ที่ /usr/share/doc/anacron/README.gz มีข้อมูลมากกว่าเล็กน้อยอยู่ใน manpages เล็กน้อย
ตัวอย่าง
สำหรับงานแบบง่าย "รายวัน", "รายสัปดาห์", "รายเดือน" ให้ใส่สำเนาหรือลิงก์ไปยังสคริปต์ในหนึ่งในไดเรกทอรี Anacron จะดูแลการทำงานทุกวัน / สัปดาห์ / เดือนและหากคอมพิวเตอร์ของคุณปิดในวันที่สคริปต์ "รายสัปดาห์" จะทำงานตามปกติมันจะทำงานในครั้งต่อไปที่เปิดเครื่องคอมพิวเตอร์
เป็นอีกตัวอย่างหนึ่งสมมติว่าคุณมีสคริปต์ที่นี่: /usr/local/sbin/maint.sh
และคุณต้องการเรียกใช้มันทุกสามวันรายการมาตรฐานใน / etc / crontab จะมีลักษณะดังนี้:
# m h dom mon dow user command
0 0 */3 * * root /usr/local/sbin/maint.sh
หากคอมพิวเตอร์ของคุณไม่ได้เปิดเวลา 00:00 นในวันที่ 3 ของเดือนงานจะไม่ทำงานจนกว่าจะถึงวันที่ 6
หากต้องการให้งานรันในอันดับที่ 4 เมื่อคอมพิวเตอร์ปิดอยู่และ "คิดถึง" การรันในลำดับที่ 3 คุณจะต้องใช้สิ่งนี้ใน / etc / anacrontab (อย่าลืมลบบรรทัดออกจาก / etc / crontab):
# period delay job-identifier command
3 5 maint-job /usr/local/sbin/maint.sh
"การหน่วงเวลา" ของ "5" ด้านบนหมายความว่า anacron จะรอ 5 นาทีก่อนที่จะทำงานนี้ ความคิดคือการป้องกันไม่ให้ anacron ยิงสิ่งออกทันทีในเวลาบูต