พิเศษ! เพียงใช้โค้ด freehosting1y รับฟรีโฮสติ้ง 1 ปี เฉพาะออเดอร์ที่มียอดซื้อตั้งแต่ 25,000 บาทขึ้นไปที่มีโฮสติ้ง

anacron เริ่มทำงานวันไหน ถ้าไฟล์ weekly เพิ่มในโฟลเดอร์ cron

  • 0:25 min

  • 0 comments

หากคุณเพิ่มไฟล์สคริปต์เข้าไปใน /etc/cron.weekly/ วันนี้ การทำงานของมันจะขึ้นอยู่กับ “ประวัติการรัน” ของระบบครับ โดยมีรายละเอียดดังนี้:

1. มันจะทำงานเมื่อไหร่?

anacron จะตรวจสอบไฟล์ใน /var/spool/anacron/ เพื่อดูว่าสคริปต์นั้นๆ ถูกรันครั้งล่าสุดเมื่อไหร่:
* ถ้ายังไม่เคยรันเลย: anacron มักจะมองว่ามัน “ถึงเวลาที่ต้องรันแล้ว” และจะรันสคริปต์นั้น ภายในเวลาไม่นานหลังจากที่คุณเพิ่มไฟล์เข้าไป (โดยปกติจะรอประมาณ 5-10 นาทีตามค่า START_HOURS_RANGE ในไฟล์กำหนดค่า เพื่อไม่ให้รบกวนการทำงานช่วงบูตเครื่อง)
* ถ้าเคยรันมาแล้ว: มันจะนับถอยหลังไปอีก 7 วันนับจากครั้งล่าสุดครับ

2. กลไกการทำงานเบื้องหลัง

ระบบ Linux ของคุณจะมีไฟล์ที่ชื่อว่า /etc/crontab ซึ่งมักจะมีบรรทัดนี้อยู่:
bash
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )

* หมายความว่า ระบบจะพยายามรัน anacron ทุกวันเวลา 06:25 (หรือ 06:47 ในวันอาทิตย์)
* แต่ถ้าเครื่องของคุณปิดอยู่ตอน 6 โมงเช้า anacron จะทำงานทันทีที่เครื่องเปิด โดยจะตรวจสอบว่าไฟล์ใน cron.weekly ถูกรันไปหรือยังในรอบ 7 วันที่ผ่านมา

3. วิธีตรวจสอบว่ามันจะรันเมื่อไหร่ (หรือรันไปหรือยัง)

คุณสามารถเช็คไฟล์ Timestamp ได้ว่าระบบบันทึกไว้ว่ารันครั้งล่าสุดเมื่อไหร่ โดยใช้คำสั่ง:
bash
ls -l /var/spool/anacron/

คุณจะเห็นไฟล์ชื่อ cron.weekly อยู่ข้างใน ถ้าคุณลอง cat ดูไฟล์นั้น:
bash
cat /var/spool/anacron/cron.weekly

คุณจะเห็น วันที่ล่าสุดที่มันรันไป ถ้าวันที่นั้นผ่านไปไม่ถึง 7 วัน มันจะไม่รันใหม่จนกว่าจะครบกำหนดครับ

สรุปคำแนะนำ:

  • ถ้าคุณเพิ่งเพิ่มไฟล์วันนี้: ระบบจะมองว่านี่คือการรันครั้งแรก (หรือรันครั้งถัดไปที่ยังไม่เกิดขึ้น) มันจะรันให้คุณในวันนี้หรือเช้าวันพรุ่งนี้ (ขึ้นอยู่กับจังหวะที่ตัวจัดการ Cron ของระบบเรียกใช้ anacron)
  • ถ้าคุณใจร้อน: อยากเทสต์ว่าสคริปต์ทำงานถูกต้องไหม ให้รันผ่าน Terminal ตรงๆ ได้เลยครับ:

    bash

    sudo run-parts --test /etc/cron.weekly


    (คำสั่งนี้จะแสดงรายชื่อไฟล์ที่จะถูกรันออกมาให้เห็นโดยที่ยังไม่รันจริง เพื่อเช็คว่าชื่อไฟล์ถูกต้องและระบบมองเห็นไฟล์นั้นหรือไม่)

ข้อควรระวังสำคัญ: อย่าลืม chmod +x /etc/cron.weekly/ชื่อไฟล์ของคุณ เสมอ เพราะถ้าไม่มี Permission นี้ anacron จะข้ามไฟล์นั้นไปอย่างเงียบๆ ครับ!

Outsource.Men รับพัฒนาเว็บไซต์ Shopify, Wordpress, Wix, ดูแลระบบ ERP, SaaS, Cloud, เขียนโปรแกรม Tradingview, Liquid, Google และดูแลระบบธุรกิจออนไลน์ โดยทีมผู้เชี่ยวชาญอิสระ

รับคำปรึกษาฟรี >>คลิกที่นี่<<

แชร์โพสต์นี้:

04

Sep

การสลับภาษาด้วย “~” Linux Mint 18.2 64 bit

Written by maliwan.s         สำหรับใครที่ในช่วงนี้เบื่อๆเซ็งๆระบบปฎิบัติการ Windows อยากลองอะไรใหม่ๆให้กับชีวิตบ้าง ใจก็อยากไป macOS แหละ ครั้นจะเอามาลงที่เครื่องเรา มันได้เหรอ(คิดในใจเบาๆ) ว่าแล้วก็หันไปซบอก OpenSource อย่าง linux ดีกว่า linux ก็จะประสบปัญหาการเปลี่ยนภาษาเหมือนตอนที่เราลง Windows ใหม่ๆ ต้องกด…

27

Jul

ไม่ง้ออินเตอร์เน็ต! ใช้ Ubuntu Linux Mint แบบ Offline ยังไงดี

ถ้าคุณต้องการดาวน์โหลดแพ็กเกจไว้ติดตั้งเองแบบ Offline (ไม่ต้องต่ออินเทอร์เน็ต) ขนาดพื้นที่ที่ต้องใช้จะขึ้นอยู่กับ วิธี ที่คุณเลือกใช้งานครับ โดยแบ่งออกเป็น 3 แนวทางหลักๆ ดังนี้: 1. โหลดเฉพาะแพ็กเกจที่ระบุและ dependencies (แนะนำที่สุด) วิธีนี้คือการเลือกดาวน์โหลดเฉพาะโปรแกรมที่คุณต้องการจริงๆ ควบคู่กับไฟล์เสริมที่จำเป็น (Dependencies) ไปติดตั้ง โดยไม่ต้องโหลดมาทั้งคลังระบบ 2. ทำคลังเฉพาะส่วน (Partial Mirror / Local…

19

Jul

เตรียมตัวให้พร้อม! Google อัปเดตเงื่อนไขใหม่ Android Backup เริ่มนับรวมพื้นที่เก็บข้อมูลแล้ว

Google ประกาศเปลี่ยนนโยบาย Android Backup ใหม่! ข้อมูลเครื่องเริ่มนับรวมในพื้นที่ Google Account แล้ว เช็กผลกระทบและวิธีตั้งค่าปิด-เปิดสำรองข้อมูลแอปที่นี่ก่อนเริ่มจริงใน 45 วัน