¿Cómo ejecutar fsck en una unidad externa con OS X?

21

Recibo este error al intentar volver a particionar una unidad externa: "".

Quiero ejecutar fsck -fyen la unidad, pero no sé la sintaxis adecuada para hacerlo en una unidad externa.

¿Alguien puede ayudarme con este problema?

PETERV
fuente

Respuestas:

34

En realidad quieres hacer:

% sudo fsck_hfs -fy /dev/disk1s1 (dependiendo de qué partición desea verificar).

No funcionará solo con lo fsckque tiene que poner fsck_hfscomo comando para ejecutar.

Paul
fuente
3
Esta es la mejor respuesta. Antes de ejecutarlo, la lista de todos sus discos con diskutil list Mi tarjeta SD es disk2. Entonces desea encontrar el número de partición, así que haga algo como ls /dev/disk2*. Esto da como resultado disk2s1. Entonces el comando final que ejecuto es este sudo fsck_hfs -f /dev/disk2s1. NOTA: Formateé mi tarjeta SD a propósito como hfs. Normalmente están usando como grasa o algo así.
portforwardpodcast
8

Recibo este error al intentar volver a particionar una unidad externa: ""

Ese es un error muy descriptivo de hecho.


Para ejecutarse fscken una unidad externa, primero debe encontrar el identificador de la unidad. Ejecute diskutil listy verifique el nombre del volumen que se detalla debajo , por ejemplo, IDENTIFIERserá algo así disk3s4.

Usa ese nombre para correr fsck. También puede pasar la -fopción de forzar la comprobación de un sistema de archivos limpio.

sudo fsck /dev/disk3s4

fsck tiene shorthands para diversos tipos de sistemas de archivos:

  • fsck_hfspara HFS, use la -fopción para forzar la comprobación de los sistemas registrados
  • fsck_exfatpara ExFAT (no hay -fopción aquí)
  • fsck_msdospara FAT (no hay -fopción aquí)
slhck
fuente
En realidad, parece que a partir de 10.9, no se puede usar fscksin algún tipo de bandera. El uso del comando como se indica aquí da como resultado la salida de ayuda / uso.
Ray
Vea la respuesta de Paul: tiene que usar fsck_hfs.
Zev Eisenberg
2

Tuve que correr con la bandera -l:

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

La -lbandera le dice a fsck que verifique la unidad en modo de solo lectura.

Robert Steward
fuente
1

Esta no es una respuesta directa a la pregunta original, sino que está estrechamente relacionada.

Otra opción es usar diskutil para verificar o reparar una unidad externa.
No estoy seguro de cómo se compara con fsck, pero reparó mi unidad externa que no se estaba montando después de que accidentalmente lo dejé enchufado durante un reinicio para una actualización del sistema.

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   

y luego comandos como

diskutil verifyDisk disk2
diskutil verifyVolume disk2s1
diskutil verifyVolume disk2s2

por alguna razón, solo ejecutar los comandos de verificación resuelve mi problema, pero si necesita ir más allá también hay comandos de reparación

diskutil repairDisk disk2
diskutil repairVolume disk2s1
diskutil repairVolume disk2s2
jk7
fuente