¿Cómo verificar si hay un sector defectuoso en un disco duro USB externo en OS X?

Respuestas:

5

Preguntas relacionadas

  1. Solucione los bloques defectuosos en el disco duro de Mac : incluye software no gratuito y de código cerrado
  2. ¿Qué software gratuito o de código abierto puedo usar con el hardware de Mac para verificar la integridad de cada bloque de un disco ...?

A veces es inapropiado usar las capacidades de reubicación automática del sector de una unidad, por lo que la pregunta planteada por ohho se vuelve distintiva:

  • Se trata de descubrimiento .

Esencialmente

Si hay un sector defectuoso, entonces:

  • preocuparse por los datos dentro de ese sector; o
  • no importa

- considere esto antes de realizar cualquier acción que pueda causar la reubicación (o reasignación o preservación, o como lo llame).

¿Por qué importa?

Si bien SpinRite 6 no es para Mac, una página de 2003 para la versión 5 es esclarecedora:

Tenga en cuenta la sección sobre reubicación automática y el riesgo asociado de daños.

SpinRite a un lado, avance rápido una década de 2003 a 2013:


A la pregunta aquí ...

¿Cómo verificar si hay un sector defectuoso en un disco duro USB en OS X?

Para Mac, para OS X, no conozco nada tan capaz y cuidadoso como SpinRite (nada para deshabilitar la reubicación automática).

Por lo tanto, tal como están las cosas: para verificar los sectores de un disco en USB con OS X , es probable que estemos limitados a usar utilidades que puedan causar la reubicación . No puedo estimar el grado de riesgo de daños asociados, pero si ese riesgo es aceptable , primero debo dirigirme hacia:

  • las utilidades que se votaron o recomendaron en las preguntas relacionadas (1) y (2) anteriores.

Sugerencia: lo que está bajo la pregunta relacionada (1) es más fácil de usar de inmediato.

INTELIGENTE

El sistema operativo por sí solo no puede usar tecnologías SMART en unidades que son externas en buses como USB 2.0 y FireWire.

En otros lugares hay una gran cantidad de información (y malentendidos), así que enfocaré esta parte de la respuesta en solo un punto:

  • conseguir OS de Apple para trabajar con tecnología SMART con externa USB y unidades FireWire.

Controlador OS X SAT SMART

Kasbert / OS-X-SAT-SMART-Driver en GitHub:

... un controlador de kernel para unidades externas USB o FireWire de Mac OS X. Extiende el comportamiento estándar del controlador al proporcionar acceso a los datos SMART de la unidad. La interfaz con los datos SMART es la misma que con el controlador de la familia ATA, por lo que la mayoría de las aplicaciones existentes deberían funcionar. El controlador requiere una caja de unidad externa compatible con SAT (traducción SCSI ATA). ...

Si prueba este KEXT con Lion, al igual que con cualquier extensión de kernel de terceros, proceda con precaución.

Graham Perrin
fuente
14

El comando incorporado de OS X fsck_hfstiene una opción -Sque aparentemente verificará si hay un bloqueo defectuoso en un disco duro USB en OS X.

Desde la página de manual oficial :

-S Causa que fsck_hfs escanee todo el dispositivo buscando errores de E / S. Intentará asignar los bloques con errores a los nombres, similar a la opción -B .

Ejemplo:

fsck_hfs -fy -S /dev/disk3s11

Parece estar haciendo que cuando se ejecuta en particiones sin bloques defectuosos, pero todavía tengo que comprobar / documento de lo que hace cuando no hay bloques defectuosos.

Matthew Elvey
fuente
1
Además, podemos obtener las rutas de disco disponibles con la lista diskutil
Freeman
Si. O df. ¡Prefiero su salida para esto!
Matthew Elvey
2

Abra el Terminal.app en Aplicaciones / Utilidades.

Corta y pega esto dentro para instalar Brew: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Instale e2fsprogs con brew: brew install e2fsprogs

Escriba diskutil listpara encontrar su dispositivo (/ dev / diskX)

Ejecutar badblocksen su dispositivo: (reemplace la X con el número de su dispositivo)

/usr/local/Cellar/e2fsprogs/1.44.3/sbin/badblocks -v /dev/diskX

brunobhr
fuente
Es posible que desee ajustar con su número de versión (1.44.3 aquí) en la línea: '/usr/local/Cellar/e2fsprogs/1.44.3/sbin/badblocks -v / dev / diskX'
brunobhr
En macOS High Sierra 10.13.6: Operation not permitted while trying to determine device size(con / sin sudo)
bonh
¿Podría estar vinculado a la protección SIP? osxdaily.com/2015/10/05/…
brunobhr 01 de
0

Dependiendo del sistema de archivos en la unidad, puede ejecutar

fsck_msdos /dev/disk1s1

Esto verificaría un FAT FS. Tal vez eso es lo que quieres? Los comandos posibles son:

fsck_cs
fsck_exfat
fsck_hfs
fsck_msdos
fsck_udf
Mose
fuente
3
Estos comandos verifican (y opcionalmente reparan) las estructuras de datos de volumen, no escanean el disco en busca de legibilidad / escritura de la superficie del disco.
Gordon Davisson
1
fsck_hfs -Sescanea todo el contenido del sistema de archivos y asigna bloques con errores de E / S a los nombres.
siefca
0

La única forma de saber realmente es escribir en cada sector y volver a leerlo para ver si recupera lo mismo, buscando errores en el camino.

badblocksbajo Linux hace esto. badblockstiene un modo de prueba de lectura / escritura no destructiva.

Bajo Windows, creo que si se invoca chkdskcon el /F, /By /Rlas opciones que pondrá a prueba cada sector para los sectores defectuosos. Tampoco es destructivo, pero no estoy seguro de si realmente escribe en cada sector para probar.

Esta respuesta de Superusuario sugiere que SpinRite 6 también puede hacer lo mismo, pero no lo he probado.

LawrenceC
fuente
0

Permítame aconsejarle en qué orden debe proceder si sospecha / sabe que tiene sectores defectuosos:

1) Haga una copia de su partición completa a otro dispositivo usando dd (busque el nombre de su partición usando df). Esto puede llevar un tiempo, tal vez más de un día en un disco USB2 para 400 Gb. bs=lo acelera (factor 5 o más), syncllena los bloques de entrada con ceros si hubo errores de lectura.

dd if=/dev/disk3s8 of=/dev/disk4s9 bs=1024k conv=noerror,sync

2) Luego verifique si realmente funcionó, no solo la estructura de la carpeta sino también el contenido.

3) Si no fuera así, intente copiar el contenido de su partición a nivel de archivo.

cp -Rp /Volumes/<source>/ /Volumes/<destination>/

4) Solo ahora, que ha intentado guardar todo lo que puede sin tocar el sistema de archivos, ejecute una verificación en la partición. -fLa opción forzará incluso si parece estar bien, -Sbusca bloques defectuosos. No se garantiza que esta operación no sea restrictiva, pero podría salvar su disco.

fsck_hfs -fS /dev/disk3s8
Damian Vogel
fuente