Po raz pierwszy odkąd mam Maka zawiesił mi się system. Jabłkowy odpowiednik blue screen of death jest szary i w kilku językach sugeruje wciśnięcie i przytrzymanie przycisku zasilania, co też niezwłocznie uczyniłem. Mac OS wstał bez problemu, a następnie zasugerował poinformowanie o błędzie Apple'a. Przed wysłaniem raportu zerknąłem na zakładkę Problem Details i okazało się, że panika miała miejsce w kodzie obsługującym system plików:

panic(cpu 0 caller 0x00321C20): "hfs_UNswap_BTNode: invalid forward link (0xC647002C)\n"@/SourceCache/xnu/xnu-1228.5.20/bsd/hfs/hfs_endian.c:254

W momencie padu Time Machine właśnie zaczynał tworzenie backupu, więc uznałem że chodzi o zewnętrzny dysk podpięty do AirPorta. Aby zyskać pewność wybrałem z menu Back Up Now i rzeczywiście po kilkunastu sekundach system znowu się wywrócił. Nie pozostało nic innego jak wyłączyć Time Machine, odpiąć dysk od routera i podłączyć bezpośrednio do Maka aby można go było sprawdzić przy pomocy Disk Utility. Po kliknięciu przycisku Repair Disk rzeczywiście został znaleziony i naprawiony jakiś błąd, jednak po podłączeniu dysku z powrotem do AirPorta i rozpoczęciu backupu kernel znowu spanikował... Tym razem Disk Utility nic nie znalazł, więc konieczne okazało się sprawdzenie obrazu dysku (sparse disk image ) stanowiącym backup. Tu już nie było tak prosto jak z partycją - Disk Utility nie potrafi go zamontować. Po chwili googlania znalazłem informację o narzędziu hdiutil , które umożliwia dołączenie obrazu dysku jako urządzenia. A konkretnie:

sudo hdiutil attach -nomount -readwrite /Volumes/Backup/nazwa_obrazu_dysku.sparsebundle

... wyświetla listę urządzeń odpowiadających obrazowi z backupem, na przykład:

/dev/disk1 Apple_partition_scheme
/dev/disk1s1 Apple_partition_map
/dev/disk1s2 Apple_HFSX

Interesuje nas trzecie z tych urządzeń, wpisujemy więc w terminalu:

sudo fsck_hfs -f /dev/disk1s2

i po dość długim czasie obraz dysku zostanie naprawiony. Albo i nie, ponieważ polecenie fsck_hfs nie zawsze jest w stanie poprawić wszystkie błędy w jednym przebiegu. U mnie trzeba było uruchomić je dwukrotnie aby w końcu wyświetlony został komunikat

** The volume ... was repaired successfully.

Cały czas nie wiem co było przyczyną uszkodzenia backupu, na szczęście jak dotąd problemy się nie powtórzyły.

0 komentarze: