ทั้งสองcronและanacronเป็น daemons ที่สามารถกำหนดเวลาการดำเนินการงานที่เกิดซ้ำตามเวลาที่กำหนดโดยผู้ใช้
ความแตกต่างที่สำคัญระหว่างcronและanacronคืออดีตถือว่าระบบทำงานอย่างต่อเนื่อง หากระบบของคุณปิดและคุณมีงานที่กำหนดไว้ในช่วงเวลานี้งานจะไม่ถูกดำเนินการ
ในอีกทางหนึ่งanacronคือ 'สมัย' และถูกออกแบบมาสำหรับระบบที่ไม่ได้ทำงานตลอด 24 ชั่วโมงทุกวัน เพื่อให้anacronใช้งานได้ใช้ไฟล์ที่มีการประทับเวลาเพื่อค้นหาว่าเมื่อใดที่คำสั่งนั้นถูกดำเนินการครั้งล่าสุด นอกจากนี้ยังเก็บรักษาไฟล์/etc/anacrontabเช่นเดียวกับที่cronทำ นอกจากนี้cron.dailyทำงาน anacron ทุกวัน ดังนั้นanacronสามารถทำงานได้วันละครั้ง แต่cronสามารถทำงานได้บ่อยเท่าทุกนาที
จากman anacrontab:
เมื่อดำเนินการ Anacron จะอ่านรายการงานจากไฟล์กำหนดค่าปกติ / etc / anacrontab (ดูที่ anacrontab (5)) ไฟล์นี้มีรายการงานที่ Anacron ควบคุม แต่ละรายการงานระบุช่วงเวลาเป็นวัน, ความล่าช้าเป็นนาที, ตัวระบุงานที่ไม่ซ้ำกัน, และคำสั่งเชลล์
สำหรับแต่ละงาน Anacron ตรวจสอบว่างานนี้ถูกดำเนินการใน n วันล่าสุดหรือไม่โดยที่ n คือระยะเวลาที่ระบุสำหรับงานนั้น ถ้าไม่ใช่ Anacron จะรันคำสั่งเชลล์ของงานหลังจากรอจำนวนนาทีที่ระบุไว้เป็นพารามิเตอร์การหน่วงเวลา
หลังจากที่คำสั่งออกแล้ว Anacron จะบันทึกวันที่ในไฟล์ประทับเวลาพิเศษสำหรับงานนั้นเพื่อให้สามารถทราบได้ว่าเมื่อใดที่จะเรียกใช้งานอีกครั้ง ใช้เฉพาะวันที่สำหรับการคำนวณเวลา ไม่ได้ใช้ชั่วโมง
ซึ่งหมายความว่าหากมีการจัดตารางงานให้เรียกใช้ทุกวันและปิดคอมพิวเตอร์ในช่วงเวลานั้นเมื่อมีการเรียกใช้ anacron จะเห็นว่างานนั้นถูกเรียกใช้มานานกว่า 24 ชั่วโมงแล้วและดำเนินงานอย่างถูกต้อง
ตัวอย่างเช่นหากคุณระบุสิ่งต่อไปนี้ใน/etc/anacrontab:
7 15 test.daily /bin/sh /home/username/script.sh
และในวันที่script.shงานควรจะถูกดำเนินการหากระบบไม่ทำงานanacronจะดำเนินการscript.sh15 นาทีหลังจากระบบกลับมาทำงาน
อ้างอิงน้อย: