Napraw dysk z trybu pojedynczego użytkownika (fsck nie powiedzie się)


21

Wcześniej dzisiaj iMac w 2009 r. Emitował błędy we / wy podczas próby skopiowania plików. Więc uruchomiłem narzędzie dyskowe, sprawdź dysk, aby zobaczyć, czy coś jest nie tak. To było. Ale ponieważ jest to mój dysk startowy, nie mogłem go naprawić, więc wypróbowałem tryb awaryjny. Tryb awaryjny zadziałał za pierwszym razem, ale po ponownym uruchomieniu pokazuje pasek postępu, zanim się zatrzyma. Za każdym razem, gdy go włączam, następuje ten sam pasek postępu, po którym następuje awaria. Uruchamianie w trybie pełnym ujawnia, że ​​fsck kończy się niepowodzeniem z sygnałem 8.

Używając trybu pojedynczego użytkownika, ponieważ o ile wiem, jedyny sposób, aby uzyskać dostęp do systemu, uruchomiłem fsck_hfs. Jednak zawsze zawodzi. Poniżej znajduje się wyjście z fsck_hfs -d / dev / disk0s2.

** /dev/rdisk0s2
        Using cacheBlockSize=32K cacheTotalBlock=65536 cacheSize=2097152K.
** Root file system
   Executing fsck_hfs (version diskdev_cmds-491.6~3).
** Verifying volume when it is mounted with write access.
** Checking Journaled HFT Plus volume.
** Checking extents overflow file.
** Checking catalog file.
   Missing thread record (id = 9931104)
   Missing thread record (id = 16434146)
   Missing thread record (id = 19370458)
disk0s2: I/O error
hfs_swap_BTNode: offsets 10 and 11 out of order (0x0000, 0x0000)
   Invalid node structure
(4, 115897)
** The volume Macintosh HD could not be verified completely.
        volume check failed with error 7
        volume type is pure HFS+
        primary MDB is at block 0 0x00
        alternate MDB is at block 0 0x00
        primary VHB is at block 2 0x02
        alternate VHB is at block 1952491198 0x74622d5e
        sector size = 512 0x200
        VolumeObject flags = 0x07
        total sectors for volume = 1952591200 0x74622d60
        total sectors for embedded volume = 0 0x00

Absolutnie muszę mieć możliwość rozruchu, aby używać go jako monitora zewnętrznego.


Z której wersji OS X korzystasz?
nohillside

Przepraszam, powinienem był powiedzieć. To działa Snow Leopard.
Max.

1
Jeśli nadal masz Instalacyjną płytę DVD, możesz ją uruchomić i uruchomić Napraw dysk.
nohillside

Nigdy nie miał instalacyjnej płyty DVD, został fabrycznie zainstalowany. Zastanawiałem się nad próbą wypalenia jednego za pomocą tego starego laptopa, który wykopałem. Zastanawiałem się również nad DiskWarrior, czy jest w stanie to naprawić?
Max

1
Oraz „launchd'ing” mam na myśli: launchctl load /System/Library/LaunchDaemons/com.apple.kextd.plist launchctl load /System/Library/LaunchDaemons/com.apple.notifyd.plist launchctl load /System/Library/LaunchDaemons/com.apple.configd.plist launchctl load /System/Library/LaunchDaemon/com.apple.DirectoryServices.plist I potem zrobił kilka innych rzeczy, nie wiem, czy to było konieczne, a następnie shutdown -h now, a gdy to nie pomogło, exit.
Max.

Odpowiedzi:


4

Jakieś trzy lata temu napotkałem dokładnie ten sam problem, który masz. Problem dotyczy samego dysku twardego - nic nie jest związane z oprogramowaniem. Zabierz go do najbliższego / najlepszego sklepu Apple i poproś o wymianę dysku twardego. Następnie możesz przywrócić wszystkie informacje z kopii zapasowej. Ci zrobić kopię zapasową komputera, prawda?

(Uwaga: jeśli niedawno zapomniałeś wykonać kopię zapasową komputera lub w inny sposób nie możesz uzyskać dostępu do starych plików, warsztat najprawdopodobniej będzie w stanie odzyskać większość, jeśli nie wszystkie dane. Jeśli jednak dysk twardy jest naprawdę bardzo uszkodzony, najlepiej jest wysłać go do DriveSavers w celu demontażu pomieszczeń czystych i odzyskiwania danych. Jeśli jednak wybierzesz tę opcję, przygotuj się na kilkaset dolarów).


iFixit ma procedury samodzielnej wymiany dysku twardego. Ale potrzebujesz zainstalować dysk DVD lub USB, który możesz pożyczyć od znajomego.
mouviciel

Masz rację, to był źle działający dysk twardy, a nie tylko podejrzane wpisy w systemie plików. Mam kopie zapasowe, w szczególności Time Machine, ale ostatecznie wykorzystałem DiskWarrior do stworzenia „podglądu” dysku twardego, klonowania go na dysk zewnętrzny i rozruchu z dysku zewnętrznego. Jest to tymczasowe, dopóki nie mam okazji wymienić wewnętrznego dysku twardego, ale w tej chwili wszystko działa płynnie.
Maks.

14

Możesz spróbować wymusić fsck_hfsprzebudowę katalogu, uruchamiając

fsck_hfs -Rc -d /dev/disk0s2

lub (jeśli chcesz uniknąć konieczności udzielania odpowiedzi na monity)

fsck_hfs -y -Rc -d /dev/disk0s2

Oczywiście naprawi to tylko logiczne uszkodzenia i będzie nadal działać, jeśli dysk zostanie uszkodzony.


1
Właściwie wypróbowałem to z opcją -r (-Rc wydaje się nie działać). Zawsze podawał błąd „niepoprawna struktura węzła”, a „niepoprawna długość klucza” tylko w 75% przypadków.
Max.

To nie wróży dobrze :-(
nohillside

1
Uratowałeś mi dzień!
カ オ ナ シ

Dwukrotne uruchomienie tego polecenia naprawiło mój dysk, gdy Narzędzie dyskowe nie mogło. Chociaż Narzędzie dyskowe nadal zgłasza błędy w systemie plików, przynajmniej wolumin zamontowany przy ponownym uruchomieniu. Dzięki!
zyggurizm

8

Znalazłem tę stronę przez Google i upuszczam ją tutaj. Cierpiąc na tę samą „nieprawidłową strukturę węzła” i odmowę uruchomienia, udało mi się przejść przez szary ekran i uruchomić komputer na pulpicie, wykonując następujące czynności:

  1. Uruchom system w trybie pojedynczego użytkownika (cmd + s na starcie)

  2. Zamontuj uszkodzony dysk twardy

    /sbin/mount -uw /

  3. Wyjdź z trybu pojedynczego użytkownika, wpisując „exit” w monicie

  4. (Nie wiem, czy ten krok jest konieczny.) Naciśnij raz przycisk włączania / wyłączania.

W ten sposób uruchomiłem mojego Macbooka (z systemem Snow Leopard) na pulpit, omijając nieudane sprawdzenie fsck i umożliwiając mi wykonanie aktualnej kopii zapasowej wehikułu czasu. YMMV, ale mam nadzieję, że to komuś pomoże.


1
W połączeniu z siłą fsck_hfs działało na mnie
rfabbri

1
System może uruchomić się na pulpit z powyższymi instrukcjami i wyglądać normalnie, ale partycja prawdopodobnie nadal będzie uszkodzona i nie będzie można jej naprawić. Po sugerowanym utworzeniu kopii zapasowej wehikułu czasu przywróć ją z tego trybu w trybie odzyskiwania.
rfabbri

Jesteś
ratownikiem

3

O ile mogę powiedzieć:

fsck_hfs -Rc -d /dev/disk0s2

… Nie jest prawidłowym poleceniem - Rpowinno być r. Więc:

fsck_hfs -rc -d /dev/disk0s2

zamiast.


5
Strona fsck_hfspodręcznika dla (przynajmniej 10.9) mówi, że -rjest to synonim -Rc.
mhucka

3
powinien to być tylko komentarz do drugiej odpowiedzi
rfabbri

1
ta odpowiedź powinna zdecydowanie zostać usunięta i wpisana jako komentarz do oryginalnego faceta, który zasugerował -Rc.
esaruoho
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.