2008-08-24

Wehikuł Czasu i panikujący kelner

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.

Brak komentarzy

© The Useful Pot To Keep Things In
Maira Gall