คำตอบสั้นๆ: ตรวจวันที่ของไฟล์ใหม่ที่สุดในข้อมูลสำรอง ไม่ใช่วันที่ของโฟลเดอร์ เวลาประทับของโฟลเดอร์เปลี่ยนด้วยเหตุผลที่ไม่เกี่ยวกับการสำรองข้อมูลที่เสร็จ
หากไฟล์ใหม่ที่สุดข้างในเก่ากว่าเมื่อวาน ข้อมูลสำรองไม่ได้ทำงาน ไม่ว่าเครื่องมือจะบอกอะไร
คำแนะนำการสำรองข้อมูลส่วนใหญ่พูดถึงหายนะผิดแบบ มันนึกถึงแบบดราม่า: ดิสก์ตาย แล็ปท็อปถูกขโมย น้ำท่วม สิ่งเหล่านั้นเกิดยากและทุกคนเข้าใจ
แบบที่พบบ่อยนั้นน่าเบื่อ ไดรฟ์ถูกถอดเพื่อเสียบอย่างอื่นแล้วไม่ได้เสียบกลับ NAS รีบูตหลังไฟดับและแชร์ไม่เมานต์ใหม่ แล็ปท็อปถูกปิดตอนที่งานถึงเวลา ทุกคืน เป็นเดือน สคริปต์จบด้วยข้อผิดพลาดที่ไม่มีใครอ่าน เพราะไม่มีใครอ่านล็อกที่ปกติมาทั้งปี
ในทุกกรณีนั้น ไม่มีอะไรพัง ไม่มีข้อผิดพลาดปรากฏในที่ใดที่คนจะดู โฟลเดอร์สำรองยังอยู่ ยังเต็มไปด้วยไฟล์ ยังมีขนาดถูกต้อง สิ่งเดียวที่เปลี่ยนคือมันหยุดใหม่ขึ้น และไม่มีอะไรในระบบที่คิดว่าเรื่องนั้นควรบอก
ชี้สิ่งนี้ไปที่ปลายทางสำรองข้อมูล มันจะหาไฟล์ที่แก้ไขล่าสุดที่ใดก็ได้ภายในและพิมพ์วันที่:
find /Volumes/Backup -type f -print0 | xargs -0 stat -f '%m %N' | sort -rn | head -5
คอลัมน์แรกคือเวลาประทับแบบ Unix หากต้องการอ่านโดยตรง:
find /Volumes/Backup -type f -newermt '-2 days' | head
หากไม่พิมพ์อะไรออกมา แปลว่าไม่มีอะไรถูกเขียนในสองวัน นั่นคือคำตอบ และเชื่อถือได้มากกว่าหน้าจอสถานะใดๆ เพราะเป็นคุณสมบัติของตัวไฟล์เอง
สำหรับ Time Machine โดยเฉพาะ:
tmutil latestbackup
ซึ่งพิมพ์พาธของสแนปช็อตใหม่ที่สุด พร้อมวันที่ในชื่อ หรือข้อผิดพลาดหากไม่มี
สัญชาตญาณคือดูโฟลเดอร์สำรองใน Finder แล้วอ่านคอลัมน์ วันที่แก้ไข ตัวเลขนั้นไม่ใช่สิ่งที่คุณคิด
เวลาแก้ไขของไดเรกทอรีเปลี่ยนเมื่อมีสิ่งใดถูกเพิ่มหรือลบออก ไม่ใช่เมื่อเนื้อหาของไฟล์ข้างในเปลี่ยน การทำดัชนี Spotlight การเขียน .DS_Store ใหม่ โปรแกรมสแกนไวรัส ไคลเอนต์คลาวด์ที่แตะเมทาดาทาของตัวเอง: สิ่งใดเหล่านี้ก็ทำให้โฟลเดอร์สำรองที่ค้างดูเหมือนถูกเขียนเมื่อเช้านี้ได้
ไฟล์ข้างในคือบันทึก โฟลเดอร์ไม่ใช่
launchd ที่มี StartCalendarInterval ไม่ทำงานขณะ Mac หลับ และไม่ตามทำภายหลังเว้นแต่คุณสั่ง แล็ปท็อปที่ปิดตอนเที่ยงคืนมีการสำรองตอนเที่ยงคืนที่ไม่เคยเกิดขึ้นสักครั้งlaunchd เขียนคำบ่นลงไฟล์ และไฟล์นั้นคือสิ่งเดียวที่รู้หากคุณทำเอง วิธีแก้คือสวิตช์คนตาย: สิ่งที่บ่นเมื่อการสำรองข้อมูลไม่ได้เกิดขึ้น ซึ่งเป็นเหตุการณ์คนละแบบกับการล้มเหลว และมีแค่แบบแรกที่ครอบคลุมกรณีข้างต้น
แบบที่ง่ายที่สุดคืองานที่ตรวจอายุของไฟล์ใหม่ที่สุดแล้วเตือนดังๆ หากเก่าเกินไป:
if [ -z "$(find /Volumes/Backup -type f -newermt '-2 days' 2>/dev/null | head -1)" ]; then
osascript -e 'display notification "No backup in two days" with title "Backup"'
fi
รันมันตามกำหนดเวลาของตัวเอง แยกจากการสำรองข้อมูล เพื่อที่กำหนดเวลาสำรองที่พังจะไม่ทำให้สิ่งที่เฝ้าดูพังไปด้วย จุดสุดท้ายนี้คือที่คนทำผิด: การตรวจที่ทำงานภายในงานสำรองข้อมูลรายงานไม่ได้ว่างานสำรองไม่ได้ทำงาน
สิ่งที่คุณต้องการจริงๆ คือให้การไม่มีเป็นสัญญาณเตือน และให้เครื่องมือบอกชื่อสิ่งที่หายไป
Copy Shelter สร้างขึ้นบนหลักนั้น มันติดตามว่าแต่ละปลายทางถูกเขียนและถูกตรวจครั้งล่าสุดเมื่อไร และส่งเสียงเตือนหลังเจ็ดวันที่ไม่มีการสำรองที่สำเร็จ มันบอกชื่อตำแหน่ง คุณจึงได้ข้อความแบบ "ไดรฟ์ในลิ้นชักไม่ถูกพบตั้งแต่ 14 สิงหาคม" และเพราะมันอ่านข้อมูลสำรองกลับและตรวจทุกชิ้นกับแฮชที่ใช้จัดเก็บ ข้อมูลสำรองที่ทำงานอยู่แต่ได้ผลลัพธ์ที่อ่านไม่ได้ก็จะถูกจับได้ด้วย ซึ่งคือความล้มเหลวที่ไกลกว่าหน้านี้หนึ่งขั้น
คะแนนที่แสดงนับเฉพาะสิ่งที่ตรวจสอบเมื่อเร็วๆ นี้ ข้อมูลสำรองที่ไม่ได้ทำงานไม่ใช่ข้อมูลสำรองที่คุณมี และตัวเลขก็บอกแบบนั้น
คุณไม่ควรต้องทำ นั่นคือประเด็นของหน้านี้: การตรวจที่คุณทำด้วยมือคือการตรวจที่คุณจะเลิกทำ ปกติราวสามสัปดาห์หลังตั้งค่า ทำให้สัญญาณเตือนเมื่อไม่มีการสำรองเป็นอัตโนมัติ และให้การตรวจด้วยมือเป็นสิ่งที่คุณทำเมื่อมันบอก
ช่วยได้ แต่มีขอบเขต Time Machine เตือนหลังไม่ได้สำรองสำเร็จสิบวัน และการแจ้งเตือนนั้นปิดง่ายและเลิกสังเกตง่าย มันยังบอกไม่ได้ว่าข้อมูลสำรองที่ทำเสร็จแล้วอ่านไม่ได้ เพราะบนดิสก์ในเครื่องมันไม่ได้ตรวจ
นั่นคือกรณีสิทธิ์ และแย่กว่าเพราะตัวบ่งชี้สถานะทุกตัวบอกว่าสำเร็จ เปรียบเทียบจำนวนไฟล์ที่ปลายทางกับต้นทาง หากข้อมูลสำรองที่ควรมีไฟล์หลายหมื่นไฟล์มีแค่สี่สิบ macOS กำลังปฏิเสธการเข้าถึงโฟลเดอร์และงานไม่ได้รับแจ้ง
ต่างออกไป และมี ไคลเอนต์ซิงค์ออกจากระบบ โควตาเต็ม และหยุดตัวเอง และป้ายที่จะบอกคุณคือไอคอนเล็กๆ ในแถบเมนูที่คุณไม่ได้มอง ไฟล์ก็ยังอยู่ที่เดิม จึงไม่มีอะไรดูผิดปกติ
ส่วนใหญ่ใช่ ปลายทางสองแห่งที่ล้มเหลวด้วยเหตุผลต่างกันและตรวจแยกกัน มีค่ามากกว่าการเฝ้าดูที่เดียวมากแค่ไหนก็ตาม การเฝ้าดูบอกคุณว่าสำเนาหายไป สำเนาที่สองหมายความว่ามันไม่สำคัญ ดูกฎ 3-2-1
ที่เกี่ยวข้อง: การตรวจว่าข้อมูลสำรองอ่านได้จริง และ กฎ 3-2-1