Time Machine กำลังทำอะไร


18

บางครั้ง OS X บอกฉันว่ามันเป็น "การเตรียมการสำรองข้อมูล ... " เป็นเวลานานมาก เวลาที่ใช้ดูเหมือนจะไม่มีความสัมพันธ์กับปริมาณข้อมูลที่จะสำรอง เช่นเดียวกับขั้นตอน "การสิ้นสุดการสำรองข้อมูล ... "

คำถาม: OS X กำลังทำอะไรอยู่เมื่อ "กำลังเตรียมการสำรองข้อมูล ... " และ "กำลังทำการสำรองข้อมูล ... "

ฉันรู้ว่ามันกำลังหาข้อมูลสำรองแล้วบันทึกการเปลี่ยนแปลง แต่แน่นอนว่าเวลานี้ควรเป็นสัดส่วนกับปริมาณข้อมูลที่เปลี่ยนแปลง มีพื้นที่ว่างบนดิสก์มากมาย (ดังนั้นฉันคิดว่ามันไม่ได้ลบข้อมูลสำรองเก่า ๆ ) ฉันใช้ TimeCapsule ถ้ามันสร้างความแตกต่าง ไม่มีอะไรผิดปกติกับมันฉันแค่อยากรู้อยากเห็น

คำตอบ:


20

นี่คือคำตอบจากฟอรั่มอื่น (โปสเตอร์ต้นฉบับไม่รู้จักกับฉัน):

ขั้นตอน "การเตรียม" ใน Time Machine นั้นรวดเร็วเนื่องจาก Time Machine ใช้บันทึกกิจกรรมของระบบไฟล์เพื่อให้ทราบว่าจะค้นหาการเปลี่ยนแปลงที่ต้องสำรองไว้ที่ไหน

แต่มีหลายสิ่งที่คุณสามารถทำได้เพื่อทำให้บันทึกนั้นไม่น่าเชื่อถือ เมื่อ Time Machine พบว่าบันทึก MIGHT ไม่ถูกต้องจะทำการสแกนระบบไฟล์ของคุณอย่างเต็มรูปแบบเพื่อตรวจสอบว่าต้องสำรองข้อมูลใดจริงๆ อาจใช้เวลาสักครู่ ใน Powerbook ของฉัน (และด้วยไดรฟ์ TimeWire Time Machine ภายนอก) มันสามารถส่งผลให้เกิดการ "เตรียม" ซึ่งใช้เวลา 20 นาที หากคุณปล่อยให้ Time Machine ดำเนินการต่อในที่สุดมันจะคิดออกว่าจำเป็นต้องเพิ่มอะไรในดิสก์สำรองข้อมูลและจะดำเนินการต่อ แน่นอนว่าดีกว่าการเล่นการพนันบันทึกถูกต้องหรือเพียงแค่สำรองข้อมูลทุกอย่างอีกครั้งแม้ว่าอาจมีการเปลี่ยนแปลงเพียงไม่กี่ไฟล์เท่านั้น (ซึ่งอาจใช้เวลานานกว่าและใช้พื้นที่ดิสก์ Time Machine มากขึ้น)

ในวันแรก ๆ ของการติดตั้ง Leopard หนึ่งในสิ่งที่พบได้บ่อยที่สุดที่คุณสามารถทำได้นั่นจะทำให้บันทึกที่ไม่น่าเชื่อถือคือการบูตจาก Leopard install DVD ทุกครั้งที่คุณทำเช่นนั้นในครั้งถัดไปที่ Time Machine ทำงานจะพบว่าฮาร์ดไดรฟ์ของคุณอาจได้รับการแก้ไขโดยไม่มีการเปลี่ยนแปลงใด ๆ ในบันทึก ดังนั้นจึงเป็นการสแกนเต็มรูปแบบ - ขั้นตอน "เตรียมการ" ที่ยาวนาน - เพื่อประกันว่าจะทำให้ถูกต้อง


จริงๆแล้วบันทึกไม่ได้ถูกใช้โดย Time Machine เท่านั้น และเป็น Mac ของคุณที่สามารถประกาศบันทึกเก่าที่ไม่ถูกต้อง คุณสามารถค้นหา Console fseventsdเพื่อดู"บันทึกเหตุการณ์ใน / Volumes / .. ซิงค์กับไดรฟ์ข้อมูลทำลายบันทึกเก่า" บันทึกที่สร้างขึ้นใหม่จะมีตัวระบุใหม่ซึ่งจะไม่ตรงกับรหัสที่เก็บไว้กับข้อมูลสำรองอีกต่อไป นี่เป็นการบอก Time Machine เพื่อเปรียบเทียบฮาร์ดดิสก์ของคุณกับข้อมูลสำรองล่าสุด หากมีการใช้ดิสก์สำรองหลาย ๆ ชุดหากfseventsdสร้างบันทึกใหม่แล้ว Time Machine จะทำงานเป็น"UUID ของที่จัดเก็บกิจกรรมไม่ตรงกัน"สำหรับดิสก์สำรองแต่ละแผ่น
Arjan

การติดตั้งไดรฟ์ใน Windows โดยใช้ไดรเวอร์ระบบอ่าน / เขียนเช่น MacDrive จะทำให้ระบบไฟล์ทั้งหมดสแกนในครั้งต่อไปที่ Time Machine สำรองข้อมูล (การติดตั้งไดรฟ์โดยใช้ไดรเวอร์ระบบไฟล์แบบอ่านอย่างเดียวใน Boot Camp ในทางกลับกันไม่ได้)
Brant

10

เพื่อเป็นการชมเชยคำตอบของผู้บัญชาการ Keen ฉันขอแนะนำให้อ่านเชิงลึกเกี่ยวกับTime Machineโดย Earthling Soft นอกจากนี้ข้อมูลเพิ่มเติมถูกบันทึกไว้ที่ system.log โดย backupd (ซึ่งจะบอกว่าทำไมสถานะการเตรียมการจึงยาวนานและเช่นนั้น)


1
+1 - บทความที่ยอดเยี่ยม!
ผู้บัญชาการ Keen

บทความดีๆ หวังว่าฉันจะทำเครื่องหมายสองคำตอบว่าเป็นที่ยอมรับ!
Stephen Darlington

Ars Technica มีบทความที่ดีอีกเรื่องหนึ่ง แต่ฉันเดาว่าลิงก์ Earthling Soft ครอบคลุมทั้งหมด: arstechnica.com/apple/reviews/2007/10/mac-os-x-10-5.ars/14และสำหรับนักพัฒนาที่อ่านสิ่งนี้: ดู บนมือที่developer.apple.com/mac/articles/cocoa/filesystemevents.html
Arjan

10

หากต้องการดูbackupdบันทึกอย่างง่ายดายให้ดูที่วิดเจ็ตTime Machine Buddy โปรดทราบว่ามีอีกบันทึกในดิสก์สำรองตัวเองในไฟล์ที่ซ่อนอยู่.Backup.logซึ่งสามารถพบได้ในโฟลเดอร์ของการสำรองข้อมูลแต่ละครั้ง สิ่งนี้ให้ข้อมูลอื่นนอกเหนือจากbackupdบันทึก

โปรดทราบว่าบ่อยครั้งที่บันทึกแสดงตัวเลขที่ดูเหมือนจะไม่ตรงกัน:

ไม่ต้องการการทำให้ผอมบางสำรองล่วงหน้า: ร้องขอ 821.4 MB (รวมถึงช่องว่างภายใน) [.. ]
คัดลอกไฟล์ 1630 (3.8 MB) จากไดรฟ์ข้อมูล Macintosh HD

ด้านบนมีการคัดลอกไฟล์น้อยกว่าที่คาดการณ์ไว้ก่อน เนื่องจาก Time Machine ใช้FSEventsซึ่งรายงานเฉพาะไดเรกทอรีที่มีการเปลี่ยนแปลงฉันคิดว่าในตัวอย่างข้างต้นไดเรกทอรีเหล่านี้มีขนาดรวม 821.4 MB ในไฟล์ ขณะทำการคัดลอกไฟล์จริง ๆ แล้ว Time Machine จะเปรียบเทียบไดเรกทอรีที่ถูกเปลี่ยนแปลงบนฮาร์ดดิสก์กับการสำรองข้อมูลและพบว่ามีการเปลี่ยนแปลงไฟล์จริงเพียง 3.8 MB

หากต้องการดูสิ่งที่เขียนไปยังข้อมูลสำรองโปรดดูTimeTracker (GUI) หรือtimedog (บรรทัดคำสั่ง) โปรดทราบว่าแม้ในขณะที่ทำงานในฐานะผู้ใช้ที่เป็นผู้ดูแลระบบบางครั้งโปรแกรมเหล่านี้จำเป็นต้องถูกเรียกใช้เป็นรูทเพื่อดูไฟล์ทั้งหมด เมื่อไม่ทำเช่นนั้นเครื่องมือเหล่านี้อาจไม่ได้ทำการสำรองข้อมูลบันทึก MySQL และข้อมูลไว้ในบัญชีโดย_mysqlในกลุ่มล้อ :

cd "/ ไดรฟ์ข้อมูล / สำรองของ XX / Backups.backupdb / XX / ล่าสุด"
sudo ls -l "Macintosh HD / usr / local / mysql-5.0.51a-osx10.5-x86"
[ .. ]
drwxr-x --- @ 6 _mysql wheel 374 Jul 2 20:05 data

ในกรณีเหล่านี้เครื่องมือทั้งสองจะ (เงียบ ๆ ) รายงานขนาดการสำรองข้อมูลโดยรวมที่ต่ำกว่าและไฟล์น้อยกว่าการbackupdบันทึกในคอนโซล ดังนั้นหากตัวเลขไม่ตรงกับบันทึกดังนั้นสำหรับ TimeTracker:

sudo ~ / ดาวน์โหลด / TimeTracker.app / เนื้อหา / MacOS / TimeTracker

เช่นเดียวกันสำหรับ timedog:

cd "/ ปริมาณ / สำรองของ XX / Backups.backupdb / XX" 
sudo ~ / ดาวน์โหลด / timedog

สามารถค้นหาไฟล์ขนาดใหญ่บนฮาร์ดดิสก์ของคุณดูดิสก์สินค้าคงคลัง X โปรแกรมนี้ไม่มีส่วนเกี่ยวข้องกับ Time Machine แต่อาจช่วยตรวจสอบปัญหาเช่นเมื่อคุณสงสัยว่าเหตุใดการสำรองข้อมูลของคุณจึงมีขนาดเล็กกว่าพื้นที่ที่ใช้บนฮาร์ดดิสก์ของคุณ โปรดทราบว่าโปรแกรมนี้อาจรายงานพื้นที่ดิสก์ทั้งหมดน้อยกว่าในชื่อหน้าต่างของมันเสมอกว่าในหน้าจอที่หนึ่งสามารถเลือกดิสก์ที่จะตรวจสอบ (แม้ในขณะที่ทำงานเป็นรากและเลือกมุมมองเมนูแสดงขนาดไฟล์ทางกายภาพ) แต่หากขนาดรวมที่รายงานมีขนาดเล็กกว่าจำนวนจริงทั้งหมดที่ใช้บน Mac ของคุณจริง ๆ แล้วอาจช่วยให้ทำงานเป็นรูทได้:

sudo "$ HOME / ดาวน์โหลด / Disk Inventory X.app/Contents/MacOS/Disk Inventory X"

ในการลบไฟล์ออกจากการสำรองข้อมูล (เช่นถ้าคุณบังเอิญพบว่า Time Machine กำลังทำการสำรองไฟล์ขนาดใหญ่เช่นไฟล์บันทึก MySQL ที่รันอะเวย์) Apple เขียน :

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

ทีนี้ถ้าไฟล์ที่คุณต้องการลบนั้นสามารถมองเห็นได้เฉพาะรูทคุณควรเรียกใช้ "Enter Time Machine" เป็นรูทเช่นกัน และนั่นต้องให้ Finder เริ่มต้นเป็นรูทก่อน:

sudo /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder

สิ่งนี้ดูเหมือน Finder ปกติ แต่คุณจะสังเกตเห็นรูตถัดจากไอคอนโฮมโฟลเดอร์ในแถบด้านข้างของ Finder's ตอนนี้ใช้ Shift-Cmd-G (เมนูไป, ไปที่โฟลเดอร์) เพื่อไปที่, /usr/localและค้นหาโฟลเดอร์ที่คุณต้องการลบไฟล์ออกจากดิสก์สำรอง ถัดไปป้อน Time Machine (และตรวจสอบอีกครั้งว่ารูทนั้นปรากฏถัดจากไอคอนโฮมโฟลเดอร์) และทำตามคำแนะนำของ Apple เมื่อทำการลบไฟล์ออกจากข้อมูลสำรองให้กด Ctrl-C ใน Terminal เพื่อหยุด root-Finder (ฉันต้องออกจากระบบ Mac เพราะดิสก์ระยะไกลไม่สามารถถอดออกได้อย่างถูกต้อง)

หากคุณกำลังใช้ชุดกระจัดกระจาย (เช่นเมื่อใช้การสำรองข้อมูลบนเครือข่าย)พื้นที่ว่างใด ๆ จะไม่ถูกเรียกคืนโดยอัตโนมัติ (หรือ: ไม่จนกว่าจะมีที่ว่าง) ในการบังคับใช้นี้ดูวิธีการเรียกคืนทั้งหมด / พื้นที่ว่างมากที่สุดจาก sparsebundle บน OS X นี้ไม่ได้ใช้เฉพาะกับไฟล์ที่คุณลบออกด้วยตนเอง แต่ยังรวมถึงไฟล์ที่ถูกลบออกโดยใช้เวลาในเครื่องหมดอายุการสำรองข้อมูลรายชั่วโมงหรือรายวันในช่วงผอมบางหลังการสำรองข้อมูล

Time Machine จะบีบอัดชุด sparse เองเมื่อเนื้อที่ว่างในดิสก์หมด แต่ดูเหมือนว่ามันอาจลบการสำรองข้อมูลเก่าบางส่วนในระหว่างการทำให้ผอมบางก่อนการสำรองข้อมูลดังนั้นอาจเป็นการกระชับด้วยตนเองหากคุณเคยลบไฟล์ขนาดใหญ่บางไฟล์หรือถ้าการสำรองข้อมูลหมดอายุอาจรวมไฟล์ขนาดใหญ่ด้วย:

การเริ่มการทำให้ผอมบางสำรองล่วงหน้า: ร้องขอ 53.57 GB (รวมถึงช่องว่างภายใน) 
    มี 9.90 GB 
ไม่มีข้อมูลสำรองที่หมดอายุ - ลบข้อมูลสำรองที่เก่าที่สุดเพื่อให้มีที่ว่าง 
ลบข้อมูลสำรอง / ปริมาณ / สำรองของ XX / Backups.backupdb / XX / 2007-12-20-172543:
    มี 9.90 GB 
ลบข้อมูลสำรอง / ปริมาณ / สำรองของ XX / Backups.backupdb / XX / 2007-12-31-005523:
    มี 9.90 GB 
ลบข้อมูลสำรอง 2 รายการ: ข้อมูลสำรองที่เก่าที่สุดคือ 8 มกราคม 2551 
การหยุดการสำรองข้อมูล 
การสำรองข้อมูลถูกยกเลิก 
อิมเมจของดิสก์ Time Machine 
การกระชับอิมเมจดิสก์สำรองเพื่อกู้คืนพื้นที่ว่าง 
การบดอัดอิมเมจดิสก์การสำรองข้อมูลเสร็จสมบูรณ์ 
เริ่มต้นการสำรองข้อมูลมาตรฐาน
[ .. ]
การเริ่มการทำให้ผอมบางสำรองล่วงหน้า: ร้องขอ 53.57 GB (รวมถึงช่องว่างภายใน) 
    มี 12.75 GB

ขอขอบคุณอดัมโคเฮน - โรสสำหรับการทดสอบด้านบน ดูบล็อกของเขาสำหรับรายละเอียดเพิ่มเติม!


ซอฟต์แวร์บางตัวอาจแยกตัวเองออกจากการสำรองข้อมูล Time Machine โดยการตั้งค่าคุณสมบัติเพิ่มเติมcom.apple.metadata:com_apple_backup_excludeItemในไฟล์ เช่นเดียวกับรุ่นก่อนหน้า 1.1.2 ของ VMware Fusion: blogs.vmware.com/teamfusion/2008/04/vmware-fusion-1.htmlดูเพิ่มเติมที่10.5: แสดงไฟล์ที่ Time Machine ไม่ได้สำรองไว้ที่macosxhints.com/article php? story = 20080328025026826ซึ่งรวมลิงค์ไปยังการยกเว้นของ Time Machineที่shiftedbits.org/2007/10/31/time-machine-exclusions
Arjan

ดูsuperuser.com/questions/35152/…สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการใช้งาน Time Machine ในฐานะ root ใน Snow Leopard
Arjan

1

เมื่อติดอยู่ใน "กำลังเตรียม" (ThinningPreBackup)

root# tmutil status
Backup session status:
{
    BackupPhase = ThinningPreBackup;
    ClientID = "com.apple.backupd";
    DateOfStateChange = "2018-10-20 12:02:54 +0000";
    DestinationID = "XXXXXX0A-1XB7-4X3B-A791-6XXXXX4325D89B";
    DestinationMountPoint = "/Volumes/TimeMachineXXX";
    Percent = "-1";
    Running = 1;
    Stopping = 0;
}

ใช้ lsof เพื่อดูว่าไฟล์ใดที่การสำรองข้อมูลเข้าถึง - ไฟล์สุดท้ายควรมีการเปลี่ยนแปลง:

root# ps -ef | grep backupd
    0    91     1   0  9:39pm ??         0:00.15 /System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd-helper -launchd
    0   552     1   0  9:59pm ??         0:49.54 /System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd
    0  1244  1156   0 10:30pm ttys003    0:00.01 grep backupd
root# lsof -p 552
COMMAND PID USER   FD   TYPE DEVICE   SIZE/OFF     NODE NAME
backupd 552 root  cwd    DIR    1,4       1292        2 /
backupd 552 root  txt    REG    1,4     769168 67640888 /System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd
backupd 552 root  txt    REG    1,4   26771408 67698052 /usr/share/icu/icudt59l.dat
backupd 552 root  txt    REG    1,4     236208 67730774 /private/var/db/timezone/tz/2018e.1.0/icutz/icutz44l.dat
backupd 552 root  txt    REG    1,4     841456 67695858 /usr/lib/dyld
backupd 552 root  txt    REG    1,4 1174183936 69140457 /private/var/db/dyld/dyld_shared_cache_x86_64
backupd 552 root    0r   CHR    3,2        0t0      306 /dev/null
backupd 552 root    1u   CHR    3,2        0t0      306 /dev/null
backupd 552 root    2u   CHR    3,2        0t0      306 /dev/null
backupd 552 root    3w   REG    1,9        686  5515544 /Volumes/TimeMachine2/Backups.backupdb/XXXXXXXXXX/2018-10-20-220254.inProgress/.Backup.561729775.162983.log
backupd 552 root    4r   DIR    1,4        136 68977542 /Applications/Xcode.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/CoreLocation.framework/English.lproj

สิ่งนี้บ่งชี้ว่ากำลังทำอะไรบางอย่าง - และต้องอดทน ...

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.