Przydatność HFS Plus
Podczas gdy Time Machine musi używać HFS Plus do większości rzeczy, warto zauważyć, że system plików nie idealnie nadaje się do tego zadania .
Przykład
Zbieg okoliczności: kilka godzin po mojej pierwszej edycji tej odpowiedzi mój własny wolumin kopii zapasowych Time Machine (rzadki obraz dysku pakietu) poniósł awarię systemu plików. Jestem pewien, że podstawowa pamięć jest w porządku - pula ZFS została wyczyszczona bez błędów przed i po awarii HFS Plus. Dla przypomnienia:
2013-06-07 18:02:54.332 com.apple.backupd[18433] Starting automatic backup
2013-06-07 18:02:56.292 com.apple.backupd[18433] Resizing backup disk image from 2.65 TB to 2.6 TB
2013-06-07 18:03:34.119 com.apple.backupd[18433] Disk image /Volumes/tall/com.apple.backupd/GPES3E-gjp4-1.sparsebundle mounted at: /Volumes/Time Machine Backups
2013-06-07 18:03:35.244 com.apple.backupd[18433] Backing up to: /Volumes/Time Machine Backups/Backups.backupdb
2013-06-07 18:03:44.013 com.apple.backupd[18433] Inherited root volume OS, UUID: C5C41F95-133B-3EB0-9013-F94DAAA0D99B
2013-06-07 18:03:44.147 com.apple.backupd[18433] Forcing deep traversal on source: "OS" (mount: '/' fsUUID: 03AF4C8A-66E8-3DE2-B30F-176C0C2337C3 eventDBUUID: BDCB9532-A4A8-4B94-A6C1-928FD741B07A)
2013-06-07 18:03:44.148 com.apple.backupd[18433] Event store UUIDs don't match for volume: spare
2013-06-07 18:03:44.150 com.apple.backupd[18433] Event store UUIDs don't match for volume: disk0s3
2013-06-07 18:03:47.612 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-103948 does not contain spare. Skipping it.
2013-06-07 18:03:47.663 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215311 does not contain spare. Skipping it.
2013-06-07 18:03:47.714 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-075155 does not contain spare. Skipping it.
2013-06-07 18:03:47.764 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-055748 does not contain spare. Skipping it.
2013-06-07 18:03:47.827 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-220121 does not contain spare. Skipping it.
2013-06-07 18:03:47.888 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-081211 does not contain spare. Skipping it.
2013-06-07 18:03:47.966 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215312 does not contain spare. Skipping it.
2013-06-07 18:03:48.025 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-235752 does not contain spare. Skipping it.
2013-06-07 18:03:48.087 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-140311 does not contain spare. Skipping it.
2013-06-07 18:03:48.145 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215718 does not contain spare. Skipping it.
2013-06-07 18:03:48.202 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-005749 does not contain spare. Skipping it.
2013-06-07 18:03:48.261 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-235753 does not contain spare. Skipping it.
2013-06-07 18:03:48.321 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-160310 does not contain spare. Skipping it.
2013-06-07 18:03:48.558 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-074020 does not contain spare. Skipping it.
2013-06-07 18:03:48.619 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-025748 does not contain spare. Skipping it.
2013-06-07 18:03:48.709 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-015751 does not contain spare. Skipping it.
2013-06-07 18:03:48.904 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-025749 does not contain spare. Skipping it.
2013-06-07 18:03:48.954 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-015752 does not contain spare. Skipping it.
2013-06-07 18:03:49.004 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-130310 does not contain spare. Skipping it.
2013-06-07 18:03:49.055 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-045748 does not contain spare. Skipping it.
2013-06-07 18:03:49.162 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215950 does not contain spare. Skipping it.
2013-06-07 18:03:49.211 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-092036 does not contain spare. Skipping it.
2013-06-07 18:03:49.273 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-035751 does not contain spare. Skipping it.
2013-06-07 18:03:49.321 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-225752 does not contain spare. Skipping it.
2013-06-07 18:03:49.371 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-065747 does not contain spare. Skipping it.
2013-06-07 18:03:49.420 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-045749 does not contain spare. Skipping it.
2013-06-07 18:03:49.470 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-213710 does not contain spare. Skipping it.
2013-06-07 18:03:49.519 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-091305 does not contain spare. Skipping it.
2013-06-07 18:03:49.589 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-150310 does not contain spare. Skipping it.
2013-06-07 18:03:49.639 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-065748 does not contain spare. Skipping it.
2013-06-07 18:03:49.688 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-074521 does not contain spare. Skipping it.
2013-06-07 18:03:49.776 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-220105 does not contain spare. Skipping it.
2013-06-07 18:03:49.838 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-225749 does not contain spare. Skipping it.
2013-06-07 18:03:49.899 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-092118 does not contain spare. Skipping it.
2013-06-07 18:03:50.119 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-120311 does not contain spare. Skipping it.
2013-06-07 18:03:50.388 com.apple.backupd[18433] Mobile backup /Volumes/MobileBackups/Backups.backupdb/GPES3E-gjp4-1/2013-06-07-035749 does not contain spare. Skipping it.
2013-06-07 18:03:51.141 com.apple.backupd[18433] Deep event scan at path:/ reason:must scan subdirs|require scan|
2013-06-07 18:03:51.141 com.apple.backupd[18433] Finished scan
2013-06-07 18:16:29.077 com.apple.backupd[18433] Deep event scan at path:/Volumes/spare reason:must scan subdirs|new event db|
2013-06-07 18:16:29.086 com.apple.backupd[18433] Finished scan
2013-06-07 18:16:29.570 com.apple.backupd[18433] Deep event scan at path:/Volumes/disk0s3 reason:must scan subdirs|new event db|
2013-06-07 18:16:29.786 com.apple.backupd[18433] Finished scan
2013-06-07 18:16:30.310 com.apple.backupd[18433] Found 1695685 files (84.93 GB) needing backup
2013-06-07 18:16:31.053 com.apple.backupd[18433] 109.44 GB required (including padding), 2 TB available
2013-06-07 18:54:10.918 com.apple.backupd[18433] Unexpected result from MDBackupIndexFile (1) for: /Applications/Freenet/datastore/CHK-cache.hd, /Volumes/Time Machine Backups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215332.inProgress/9086512E-E386-475E-AE99-34BAA1D2E485/OS/Applications/Freenet/datastore/CHK-cache.hd
2013-06-07 18:54:24.848 com.apple.backupd[18433] Unexpected result from MDBackupIndexFile (1) for: /Applications/Freenet/datastore/CHK-store.hd, /Volumes/Time Machine Backups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215332.inProgress/9086512E-E386-475E-AE99-34BAA1D2E485/OS/Applications/Freenet/datastore/CHK-store.hd
2013-06-07 19:03:44.609 com.apple.backupd[18433] Copied 18.81 GB of 84.93 GB, 460244 of 1695685 items
2013-06-07 20:03:44.827 com.apple.backupd[18433] Copied 34.12 GB of 84.93 GB, 815234 of 1695685 items
2013-06-07 21:03:54.004 com.apple.backupd[18433] Copied 40.73 GB of 84.93 GB, 1013214 of 1695685 items
2013-06-07 22:03:54.678 com.apple.backupd[18433] Copied 67.55 GB of 84.93 GB, 1508426 of 1695685 items
2013-06-07 22:28:43.226 com.apple.backupd[18433] Copied 1786731 files (77.59 GB) from volume OS.
2013-06-07 22:28:49.157 com.apple.backupd[18433] Unexpected result from MDBackupIndexFile (1) for: /Volumes/spare/Tocar y Luchar JAA.cdr, /Volumes/Time Machine Backups/Backups.backupdb/GPES3E-gjp4-1/2013-06-06-215332.inProgress/9086512E-E386-475E-AE99-34BAA1D2E485/spare/Tocar y Luchar JAA.cdr
2013-06-07 22:28:51.508 com.apple.backupd[18433] Error: Flushing index to disk returned an error: 1
2013-06-07 22:28:51.508 com.apple.backupd[18433] Copied 1786746 files (77.59 GB) from volume spare.
2013-06-07 22:29:11.108 com.apple.backupd[18433] Backup canceled.
2013-06-07 22:29:23.227 com.apple.backupd[18433] Ejected Time Machine disk image: /Volumes/tall/com.apple.backupd/GPES3E-gjp4-1.sparsebundle
2013-06-07 23:10:44.791 com.apple.backupd[28884] Starting automatic backup
2013-06-07 23:10:45.269 com.apple.backupd[28884] Backup failed with error: 1002
2013-06-07 23:10:45.382 com.apple.backupd[28884] Starting automatic backup
2013-06-07 23:10:46.446 com.apple.backupd[28884] Resizing backup disk image from 2.6 TB to 2.6 TB
2013-06-07 23:10:50.162 com.apple.backupd[28884] Runtime corruption detected on /Volumes/tall/com.apple.backupd/GPES3E-gjp4-1.sparsebundle (fsck_hfs -q termination status: 3)
wiadomość z dnia 2013-06-07 22:28:49 jest przyciągająca wzrok, ale w moim przypadku oczekiwana (objaw błędu związanego z HFS Plus; uszkodzenie polegające na kompresji AppleFS) - prawdopodobnie nieistotna w kontekście tej odpowiedzi
komunikat z dnia 2013-06-07 22:28:51 może być bardziej odpowiedni w przypadku awarii systemu plików.
/private/var/log/fsck_hfs.log
następnie pokazał:
/dev/rdisk7s2: fsck_hfs run at Fri Jun 7 23:10:48 2013
/dev/rdisk7s2: ** /dev/rdisk7s2 (NO WRITE)
/dev/rdisk7s2: Executing fsck_hfs (version diskdev_cmds-557.3.1~5).
QUICKCHECK ONLY; FILESYSTEM DIRTY
/dev/rdisk7s2: fsck_hfs run at Fri Jun 7 23:10:49 2013
/dev/rdisk7s2: ** /dev/rdisk7s2 (NO WRITE)
/dev/rdisk7s2: Executing fsck_hfs (version diskdev_cmds-557.3.1~5).
QUICKCHECK ONLY; FILESYSTEM DIRTY
Potwierdzenie, że żaden błąd nie wpłynął wówczas na pamięć bazową:
GPES3E-gjp4-1:~ gjp22$ date
Sat 8 Jun 2013 06:57:46 BST
GPES3E-gjp4-1:~ gjp22$ uptime
6:57 up 21:51, 5 users, load averages: 0.92 1.27 1.37
GPES3E-gjp4-1:~ gjp22$ zpool status
pool: gjp22
state: ONLINE
scan: scrub repaired 0 in 24h8m with 0 errors on Sat May 25 23:25:38 2013
config:
NAME STATE READ WRITE CKSUM
gjp22 ONLINE 0 0 0
GPTE_71B8BDA2-3EBA-4B91-9E1C-2AE2B1DAAD06 ONLINE 0 0 0 at disk3s2
cache
GPTE_2605CCB0-67B7-4C93-A4B1-83EF764CE617 OFFLINE 1.48Ki 0
errors: No known data errors
pool: tall
state: ONLINE
scan: scrub repaired 0 in 28h10m with 0 errors on Sun May 26 18:47:22 2013
config:
NAME STATE READ WRITE CKSUM
tall ONLINE 0 0 0
GPTE_78301A52-4AFF-4D96-8DE9-E76ABC14909C ONLINE 0 0 0 at disk2s2
GPTE_99056308-F5E2-4314-852C-4DA04732A2D0 ONLINE 0 0 0 at disk6s2
errors: No known data errors
GPES3E-gjp4-1:~ gjp22$
W prostych słowach
Chociaż chcielibyśmy rozwiązania, takie awarie systemu plików wydają się:
- nieobliczalny
- nieunikniony
- czasami nieodwracalne.
W przypadku braku dobrego rozwiązania, moja najlepsza rada to nie polegać na jednej kopii zapasowej Time Machine. Ryzyko ewentualnej awarii i niemożności naprawy jest po prostu zbyt wysokie.
Stopnie niepowodzenia
W przeszłości czasami zmuszałem fsck_hfs
(8) do odbudowywania plików b-drzewa… z ograniczonym sukcesem, ale bez pewności. Chociaż system plików może wydawać się być sprawny (w Narzędziu dyskowym itp.), Nie ufałbym mu już w przypadku tworzenia kopii zapasowych lub przywracania Time Machine.
W najnowszym przypadku (powyżej) wielokrotne zastosowanie siły (wielokrotne przebudowy katalogu b-drzewa, przebudowa rozszerzonych atrybutów b-drzewa i przebudowa zakresu b-drzewa) nie doprowadziły do sprawdzalnego systemu plików. Mam dzienniki debugowania z tych prób, których nie zacznę tutaj streszczać; są ogromne.
W przypadku dysków podłączonych lokalnie (USB 2.0) próby naprawy woluminów kopii zapasowych Time Machine mogą być wyjątkowo czasochłonne. Wireless - over AFP - wymagany czas może być nie do zniesienia .
Wehikuł czasu - Rozwiązywanie problemów - C13. „… Time Machine musi utworzyć dla ciebie nową kopię zapasową”. (James Pond) zawiera wiele przydatnych informacji. Głównie:
… Kopie zapasowe są uszkodzone i nie są w stanie naprawić Narzędzia dyskowego…
Gdy OS X zgłasza, że system plików HFS Plus wydaje się być w porządku, mogą występować poważne problemy z dyskiem - problemy, których OS X po prostu nie może wykryć.
Ponieważ korupcja wystąpiła więcej niż jeden raz, może występować problem z:
- sprzęt, oprogramowanie układowe i / lub oprogramowanie NAS.
Jaką marką i modelem jest NAS?
Dyski twarde NAS
Jeśli system operacyjny NAS umożliwia weryfikację integralności bloków na jego dyskach : zrób to.
Jeśli system operacyjny NAS nie ma takiej możliwości, spróbuj uruchomić sprzęt z innym systemem operacyjnym, który jest bardziej odpowiedni do testowania. Opcje mogą obejmować Ubuntu i szereg złych bloków .
Kontrole tego typu:
- będzie czasochłonne; ale
- powinien pomóc ci ustalić, czy stan dysku (dysków) przyczynia się do wielu awarii.
Najbardziej zwięzła instrukcja (zadziałała i odzyskała mój zapasowy pakiet TM), którą znalazłem na
http://jd-powered.net/notes/fixing-your-time-machine-backup
i
http://tonylawrence.com/post/unix/fixing-corrupt-time-machine-backups/, który wydaje się być oryginalnym artykułem (2012)
źródło
Ta odpowiedź ma na celu podzielenie się z nami swoimi doświadczeniami i zaproszenie do wyrażenia opinii.
Miałem błąd zepsutych kopii zapasowych, więc bezskutecznie wypróbowałem rozwiązanie podane przez Ronalda Pottola. Zawsze występowałem
hdiutil: create failed - ...
błąd podczas tworzenia pakietu Sparsbundle na moim serwerze NAS (domowym serwerze NAS z systemem Debian Wheezy i partycją ext4).Więc po pewnym googlowaniu spróbowałem ( stamtąd ):
Uzyskaj identyfikator komputera:
$ ifconfig en0 | grep ether | sed s/://g | sed s/ether//
b88d120afd6c
Użyj tego identyfikatora, aby utworzyć pakiet sparse (w katalogu domowym) z parametrami Ronalda Pottola (nazwa_komputera należy zastąpić rzeczywistą nazwą komputera)
sudo hdiutil create -size 190g -type SPARSEBUNDLE -nospotlight -volname "Backup of ComputerName" -fs "Case-sensitive Journaled HFS+" -imagekey sparse-band-size=262144 -verbose ~/ComputerName_b88d120afd6c
„Kopia zapasowa nazwy komputera” należy zastąpić ciągiem zgodnym z ustawieniami języka. W języku francuskim: „Copies de sauvegarde Time Machine”
Dodaj
-encryption AES-128 -stdinpass
(np. Po-verbose
), aby włączyć szyfrowanie kopii zapasowej. Zostaniesz poproszony o podanie hasła szyfrowania. Możesz także użyćAES-256
zamiastAES-128
.Zamontuj dysk NAS, który będzie zawierał kopie zapasowe Time Machine.
Za pomocą Findera skopiuj utworzony Sparsbundle z katalogu domowego na ten dysk.
Skonfiguruj Time Machine do korzystania z napędu NAS. Jeśli szyfrowanie zostało włączone, wybierz te same pliki kopii zapasowej i potwierdź hasło ustawione wcześniej.
Uruchom pierwszą kopię zapasową.
W narzędziu konsoli należy napisać komunikat wskazujący, że zmieniono nazwę pakietu sparsebundle. Ma więc prawidłowy parametr wielkości pasma rzadkiego, który powinien unikać przyszłych błędów:
Nie miałem żadnych błędów, odkąd rozpocząłem nową kopię zapasową, ale to nie znaczy, że to rozwiązanie jest naprawdę niezawodne. Mam nadzieję, że to pomoże. Wszelkie opinie są mile widziane.
źródło