Jak uruchomić fsck na dysku zewnętrznym w systemie OS X?

21

Otrzymuję ten błąd podczas próby partycjonowania dysku zewnętrznego: „”.

Chcę uruchomić fsck -fyna dysku, ale nie znam odpowiedniej składni, aby to zrobić na dysku zewnętrznym?

Czy ktoś może mi pomóc z tym problemem?

PETERV
źródło

Odpowiedzi:

34

W rzeczywistości chcesz zrobić:

% sudo fsck_hfs -fy /dev/disk1s1 (w zależności od partycji, którą chcesz sprawdzić).

To nie zadziała z tym, fsckże musisz uruchomić fsck_hfspolecenie.

Paweł
źródło
3
To najlepsza odpowiedź. Zanim go uruchomisz, wyświetl listę wszystkich dysków z diskutil list kartą My SD to disk2. Następnie chcesz znaleźć numer partycji, więc zrób coś takiego ls /dev/disk2*. To powoduje disk2s1. Tak więc ostatnie polecenie, które wykonuję, jest takie sudo fsck_hfs -f /dev/disk2s1. UWAGA: Celowo sformatowałem kartę SD jako HFS. Zwykle używają jak tłuszcz czy coś.
portforwardpodcast
8

Otrzymuję ten błąd podczas próby partycjonowania dysku zewnętrznego: „”

To naprawdę bardzo opisowy błąd.


Aby uruchomić fsckna dysku zewnętrznym, musisz najpierw znaleźć identyfikator dysku. Uruchom diskutil listi sprawdź nazwę woluminu wymienionego poniżej IDENTIFIER- będzie to disk3s4na przykład coś takiego .

Użyj tej nazwy, aby uruchomić fsck. Możesz także przekazać -fopcję wymuszenia sprawdzenia czystego systemu plików.

sudo fsck /dev/disk3s4

fsck ma skróty dla różnych typów systemów plików:

  • fsck_hfsw przypadku HFS użyj -fopcji wymuszenia sprawdzenia kronikowanych systemów
  • fsck_exfatdla ExFAT ( -ftutaj nie ma opcji)
  • fsck_msdosdla FAT ( -ftutaj nie ma opcji)
slhck
źródło
Wygląda na to, że od 10.9 nie można używać fsckbez jakiejś flagi. Użycie podanej tu komendy powoduje wyświetlenie wyniku pomocy / użycia.
ray
Zobacz odpowiedź Pawła - musisz użyć fsck_hfs.
Zev Eisenberg,
2

Musiałem biec z flagą -l:

diskutil list # find your identifier
/sbin/fsck_hfs -l -f /dev/disk16

-lFlaga mówi fsck aby sprawdzić dysk w trybie tylko do odczytu.

Robert Steward
źródło
1

To nie jest bezpośrednia odpowiedź na pierwotne pytanie, ale ściśle powiązane.

Inną opcją jest użycie samego diskutil do weryfikacji lub naprawy dysku zewnętrznego.
Nie jestem pewien, jak to się ma do fsck, ale naprawił mój zewnętrzny dysk, który nie montował się po tym, jak przypadkowo zostawiłem go podłączonego podczas restartu w celu aktualizacji systemu.

diskutil list  # to find the IDENTIFIER
  (some internal disks listed first)
  /dev/disk2 (external, physical):                                              
    #:                    TYPE NAME                    SIZE       IDENTIFIER
    0:   GUID_partition_scheme                        *500.1 GB   disk2     
    1:                     EFI EFI                     209.7 MB   disk2s1   
    2:               Apple_HFS FreeAgent GoFlex Drive  499.8 GB   disk2s2   

a następnie polecenia takie jak

diskutil verifyDisk disk2
diskutil verifyVolume disk2s1
diskutil verifyVolume disk2s2

z jakiegoś powodu po prostu uruchomienie komend weryfikujących rozwiązuje mój problem, ale jeśli musisz iść dalej, są też komendy naprawcze

diskutil repairDisk disk2
diskutil repairVolume disk2s1
diskutil repairVolume disk2s2
jk7
źródło