Arreglar bloques defectuosos en el disco duro de Mac [cerrado]

24

Tengo un disco duro que escaneé con TechTool e informa un bloqueo defectuoso. Por lo que puedo decir, TechTool solo escanea e informa una falla. No arregla nada.

En el pasado, Norton Disk Doctor hizo el trabajo de escanear y marcar (reasignar) bloques defectuosos en la Mac. Hoy tenemos varias herramientas para reparar errores de directorio HFS + (Disk Utility, fsck, DiskWarrior, TechTool), pero no conozco ninguna herramienta que haga un escaneo de superficie y también repare los bloques defectuosos.

¿Qué software está disponible para esto?

Si conozco la dirección del bloque defectuoso, ¿hay una utilidad de terminal de bajo nivel para marcarlo?

Andrew Vit
fuente
3
Los discos duros modernos reasignan los bloques defectuosos automáticamente al fallar las operaciones de lectura. El único problema es perder datos en ese bloque, lo que puede hacer que un archivo sea ilegible / roto, o tal vez introducir un error en FS; para eso, use el checkdisk / fsck de su sistema (no estoy tan familiarizado con las Mac). [A veces, los bloques defectuosos son el resultado de la pérdida de energía y no el problema del hardware; esto es reparable, pero es un tema diferente.]
cronos
55
@chronos Hay un montón de discos duros modernos que solo reasignan automáticamente los bloques defectuosos en operaciones de ESCRITURA fallidas, no leídas. He trabajado con muchos discos duros recientes que no podrán leer el mismo bloque defectuoso una y otra vez, pero tan pronto como lo escribas, el problema está solucionado.
Spiff
2
@Spiff: tiene razón, cometí un error al tratar de evitar una larga explicación de cómo los datos de bloque y los campos CRC trabajan juntos para garantizar la integridad de los datos, y por lo tanto, requiero una operación de escritura para verificar si es un problema de bloque físico o simplemente CRC dañado (que es reparable) En realidad, no conozco ningún disco duro moderno que realice una reasignación en la lectura ...
cronos
1
Hay algo a tener en cuenta: mi experiencia de 'arreglar' el sector pendiente en una partición NTFS consistió en 1) identificar el sector de datos exacto, 2) escribir en él y 3) restablecer el contador interno de sectores defectuosos de NTFS (que era el único paso Lo documenté en bogdan.org.ua/2010/03/01/… ). No estoy seguro de si HFS + también mantiene un contador de bloques defectuosos; si lo hace, puede ser un problema adicional, si desea recuperar ese sector único.
cronos

Respuestas:

9

No conozco ninguna herramienta que haga un escaneo de superficie y repare los bloques defectuosos también.

¿Con qué tipo de Mac y con qué tipo de disco duro tiene problemas?

Dudo que encuentre herramientas de software para "reparar" bloques defectuosos, al menos para hardware reciente. No sé cuándo comenzó, pero hace algún tiempo la capacidad de reasignar un sector defectuoso se fusionó con el firmware del disco duro.

Si observa los registros SMART de su unidad con una herramienta como SMARTReporter , debería ver una entrada con el número de identificación 05 y el título "Recuento de sectores reasignados". Este es el número de sectores defectuosos que la unidad ha reasignado.

¿Quizás "Bad Block" de Disk Warrior se refiere a algo más? (No podía adivinar qué podría ser eso).


Actualización en respuesta al comentario (abajo):

SMARTReporter parece ser una utilidad bastante "peculiar". De hecho, puede consultar y mostrar el contenido de los registros SMART de una unidad, solo tiene que saltar a través de aros inesperados para hacerlo.

En las preguntas frecuentes de SMARTReporter puede encontrar este dato :
¿Puede SMARTReporter decirme exactamente qué prueba SMART está fallando?
¡Sí, comenzando con la versión 2.4.5! Haga clic derecho en la unidad en la lista de unidades en la ventana de preferencias y seleccione "Verificar atributos SMART".

Otra peculiaridad de SMARTReporter es que cortar y pegar aparentemente solo funciona en estas ventanas de visualización cuando usa las entradas de la barra de menú. Los atajos de teclado y la ventana de contexto de "clic derecho" del mouse no lo harán. Por otro lado, SMARTReporter ES gratis. ;-)

Pero yo divago ...

Curiosamente, SMART Utility llama a la unidad "Failing" cuando todas las demás utilidades lo muestran como "Verificado". Muestra 1 sectores defectuosos pendientes. Entonces, ¿cómo se cambia un sector defectuoso "pendiente" a uno "eliminado" o "reasignado"?

Tengo entendido que no lo harías. Se supone que el firmware de la unidad lo hace automáticamente por sí solo. Tenga en cuenta lo que dice en la tabla en el artículo SMART de Wikipedia .

  • 05
    Recuento de sectores reasignados Recuento de sectores reasignados. Cuando el disco duro encuentra un error de lectura / escritura / verificación, marca este sector como "reasignado" y transfiere datos a un área reservada especial (área de reserva). Este proceso también se conoce como reasignación, y los sectores "reasignados" se denominan reasignaciones.
    Es por eso que, en los discos duros modernos, no se pueden encontrar "bloques defectuosos" mientras se prueba la superficie : todos los bloques defectuosos están ocultos en sectores reasignados. Sin embargo, a medida que aumenta el número de sectores reasignados, la velocidad de lectura / escritura tiende a disminuir.
    El valor bruto normalmente representa un recuento del número de sectores defectuosos que se han encontrado y reasignado. Por lo tanto, cuanto mayor sea el valor del atributo, más sectores ha tenido que reasignar la unidad.

  • C5 Recuento de sector pendiente actual
    Número de sectores "inestables" (en espera de ser reasignados, debido a errores de lectura). Si un sector inestable se escribe o lee posteriormente con éxito, este valor disminuye y el sector no se reasigna. Los errores de lectura en un sector no reasignarán el sector (ya que podría leerse más adelante); en cambio, el firmware de la unidad recuerda que el sector necesita ser reasignado y lo reasigna la próxima vez que se escriba.

Entonces, si lo anterior es cierto, entonces aparentemente el recuento del sector pendiente debe interpretarse con cautela. El error de lectura del sector probablemente ocurrió durante la exploración del disco que realizó anteriormente con TechTool. (Por cierto, ¿te refieres a TechTool Deluxe 3.1.3 ?) Dado que TechTool probablemente no intentó escribir el sector, (aún) no se reasignó.

¿Se puede hacer eso sin un reformateo?

Creo que un "reformateo" solo lograría algo si el formato se escribiera en cada sector de la unidad. No sé si un borrado estándar (no seguro) con la Utilidad de Discos ... que es lo que creo que quieres decir con un reformateo en el contexto de un MAC ... lograría esto.

Si hicieras esto, sería una tarea muy lenta. Recientemente hice algo como esto con una unidad portátil de 500 GB y tardó un poco menos de 2 1/2 horas en completarse. Por supuesto, tendría que agregar el tiempo para (con suerte) restaurar su sistema desde su copia de seguridad (con suerte confiable).

Para mí no está claro que sea necesario que intentes forzar activamente a que esto se "corrija". Supuestamente, el firmware de la unidad debería manejar esto por sí mismo la próxima vez que se intente escribir en un sector defectuoso. Además, me parece probable que el sector infractor no se esté utilizando actualmente como parte de ningún archivo. TechTool simplemente "tropezó" mientras escaneaba todos los sectores de su unidad.

Pero si quisieras intentar forzar una corrección, entonces supongo que tendrías que hacer algo que obligaría a escribir en ese sector. Sin embargo, no parece que valga la pena el esfuerzo. Simplemente continuaría haciendo una copia de seguridad de sus archivos y vigilando su unidad en caso de que comience a degradarse aún más.

John irracional
fuente
1
Esto es para mi iMac SATA HD interno. SMARTReporter no dice mucho más allá de "Verificado", pero otra herramienta llamada SMART Utility tiene toda la información. Curiosamente, SMART Utility llama a la unidad "Failing" cuando todas las demás utilidades lo muestran como "Verificado". Muestra 1 sectores defectuosos pendientes. Entonces, ¿cómo se cambia un sector defectuoso "pendiente" a uno "eliminado" o "reasignado"? ¿Se puede hacer eso sin un reformateo? (Sí, estoy respaldado, pero en aras de ahorrar tiempo.)
Andrew Vit
1
Además de lo que dije en mi actualización anterior, mi preferencia personal es ejecutar los diagnósticos del fabricante de la unidad. Quizás sea más de lo que realmente se necesita, pero me imagino "¿Por qué no?" Pero me supera muchísimo cómo hacer esto para un iMac. Por lo general, los diagnósticos se distribuyen como una imagen de CD de arranque, pero no creo que ninguno de ellos arranque en una Mac Intel. Para solucionar esto, generalmente extraigo la unidad y la monto en una PC con Windows. Sin embargo, creo que quitar la unidad de disco de un iMac puede ser una verdadera PITA que no recomendaría a la mayoría. <sigh>
irracional John
@ Andrew Vit: podría ser el caso de que escribir en ese sector malo pendiente lo arregle (elimine el sector de la lista de pendientes sin agregarlo a la lista de reasignados).
cronos
3
Para el registro, terminé haciendo exactamente eso: reformateado con la opción "escribir ceros" que tomó un tiempo, luego clonado de nuevo desde mi copia de seguridad. Mi bloqueo "pendiente" que se informaba en SMART Utility desapareció: simplemente desapareció y la unidad no muestra bloques defectuosos ahora ... / encogiéndose de hombros /
Andrew Vit
1
@ Andrew Vit: Gracias por actualizar con su estado. Siempre aprecio saber cómo termina la historia. Si te hace feliz, entonces sin duda valió la pena. Pero en mi opinión, el reformateo de "escribir ceros" fue excesivo. El sector probablemente no se estaba utilizando activamente y (probablemente) se habría reasignado si / cuando lo usó. Por curiosidad, ¿podría verificar sus valores SMART nuevamente y ver si el sector fue reasignado? (¿El recuento de reasignación cambió de 0 a 1?) ¿O si fue "solo un CRC corrupto", una posibilidad que los cronos mencionaron en un comentario anterior?
irracional John
12

Si ve bloques defectuosos cuando ejecuta una verificación de integridad del sistema de archivos, lo más probable es que el disco duro ya haya excedido el número de bloques que puede reasignar, y ha agotado sus sectores "de repuesto". Debe hacer una copia de seguridad de sus datos de inmediato (si aún no lo ha hecho) y reemplazar la unidad antes de que el problema empeore y pierda sus datos.

Sugeriría descargar smartmontools y GSmartControl para ver los diagnósticos SMART como otra comprobación, si no está seguro en qué diagnósticos SMART confiar.

Si los diagnósticos SMART informan que no hay sectores reasignados (o si la columna VALOR para "Recuento de sectores reasignados" todavía está muy por debajo de UMBRAL), hay una manera fácil de realizar un escaneo de superficie y reasignar los bloques defectuosos al mismo tiempo. (Nota: ¡asegúrese de hacer una copia de seguridad de sus datos primero!)

La forma más fácil de forzar a la unidad a hacer su propia reasignación de bloques defectuosos es arrancar desde un CD de Ubuntu Live , luego abrir una terminal y ejecutar este comando:

sudo badblocks -nvs /dev/sda

Esto hará una prueba de lectura y escritura aleatoria no destructiva en la primera unidad, reasignando sectores defectuosos en el camino.

Si tiene más de un disco duro, puede reemplazar / dev / sda con / dev / sdX, donde X es letra minúscula. Puede obtener una lista de todos los discos duros (dispositivos / dev / sdX) escribiendo este comando:

sudo fdisk -l

Como está utilizando Mac OS X, que se basa en BSD, es posible que también desee leer sobre badsect y bad144 , que son las utilidades de línea de comandos BSD incorporadas para tratar con bloques defectuosos.

robar
fuente
Esto llevará un tiempo:Testing with random pattern: 0.15% done, 27:02 elapsed. (0/0/0 errors)
neu242
Alternativamente, si tiene herramientas Unix instaladas en un disco de inicio diferente, puede descargar y compilar e2fsprogs.sourceforge.net que contiene bloques defectuosos. Luego simplemente desmonte el disco que desea verificar y ejecute bloques defectuosos en él.
user8128167
6

Mi experiencia con SpinRite de grc.com ha sido muy positiva. He logrado recuperar al menos 4 discos que han fallado en cualquier otro intento de repararlos. El único inconveniente es que requiere una máquina basada en BIOS, lo que significa que no funcionará en Macs modernos basados ​​en EFI. Lo bueno es que casi cualquier otra PC de poc lo ejecutará, desde disquete, CD o unidad flash. No he encontrado nada más que se acerque en términos de inspeccionar realmente el contenido de sectores individuales y recuperar los datos en lo que cualquier otra utilidad descarta como un bloque defectuoso.

Alphaman
fuente
6

El comando incorporado OS X fsck_hfs tiene una opción -S que aparentemente escaneará y rectificará los bloques defectuosos en un disco duro en OS X.

De la documentación:

-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 un un disco sin los bloques dañados, pero todavía tengo que comprobar / documento de lo que hace cuando no hay bloques defectuosos.

Matthew Elvey
fuente
No creo que esto lea y reescriba por bloque como badblocks -n, que a menudo es necesario para que el firmware del disco ahorre el bloque.
Taryn
3

Es una pregunta un poco vieja, pero sigue siendo válida. Lo que funcionó para mí es lo siguiente:

  • Si es posible, inicie desde una partición o unidad que no sea la principal. Asegúrese de que no sea la opción de recuperación de Mac si desea utilizar una aplicación de terceros para identificar los archivos corruptos
  • Identifique todos los archivos en su disco duro que están dañados debido a bloques defectuosos. Resulta que uso Carbon Copy Cloner para crear un espejo de mi disco como copia de seguridad (le da una lista de archivos corruptos). Probablemente hay otras herramientas que pueden hacer esto.
  • Localice estos archivos en su unidad y elimínelos (¡ vacíe la basura también! )
  • Abra la Utilidad de Discos y borre espacio en disco vacío escribiendo '0'. (solo tienes que escribir una vez, así que elige la opción más rápida). Tenga en cuenta que esto puede llevar algo de tiempo, especialmente si tiene mucho espacio libre.

Esto identifica los bloques defectuosos y los marca como tales para que no se vuelvan a usar. Como se mencionó anteriormente, los errores solo se mostrarán al intentar ESCRIBIRLO. Al escribir 0, haces exactamente eso.

  • Si tiene una copia de seguridad de estos archivos en algún lugar, reemplácelos manualmente desde su copia de seguridad (si desea reemplazarlos en primer lugar).

Me imagino que esto puede llevar mucho tiempo, especialmente si hay muchos errores y, por lo tanto, muchos archivos para reemplazar. Si ese es el caso, considere reemplazar la unidad, empeorará ...

Gerbie
fuente
0

Escuché cosas buenas sobre SpinRite de GRC , pero nunca lo intenté yo mismo.

fredden
fuente
Lamentablemente, SpinRite probablemente haría más daño que bien en un disco que ya está fallando. :(
robar
@rob daño de qué manera? SpinRite parece combinar varios enfoques, con énfasis en una atención extraordinariamente buena ...
Graham Perrin
2
@GrahamPerrin para uno, no tiene sentido intentar recuperar sus datos y volver a escribirlos en los mismos medios defectuosos conocidos . Pero ignorando eso, tan pronto como SpinRite encuentra un bloqueo ilegible, lo intenta y vuelve a intentarlo repetidamente antes de continuar. Mientras tanto, la unidad puede continuar degradándose hasta el punto de falla total (ya sea "naturalmente" o posiblemente como resultado del desgaste adicional causado por los constantes reintentos de SpinRite). He ejecutado SpinRite en un disco duro defectuoso de 250 GB en el pasado, y funcionó durante más de un mes sin completarse. En resumen: pruebe ddrescue y otras herramientas primero.
robar el
2
@rob gracias, no me di cuenta de eso. El Soporte Técnico de GRC me confirmó que la recuperación a algo diferente al disco desde el que se intenta la recuperación no es compatible con la versión actual de SpinRite.
Graham Perrin
el tipo controvertido que hizo spinrite ha sido sorprendido diciendo muchas tonterías a principios de la década de 2000; Lo recuerdo escribiendo sobre 'partes débiles' que es algo que simplemente no existe, por ejemplo.
Thomas
0

Parece que la mayoría de las unidades solo reasignarán un bloque defectuoso en una escritura, así que así es como todos los procesos 'arreglan' los bloques defectuosos. Si está dispuesto a formatear, mucha gente habla de hacer un formato de bajo nivel que escriba ceros (la Utilidad de Disco lo hará).

La única herramienta en la Mac que encontré que hará esto es "Speed ​​Tools". Cuando encuentra un bloque malo, escribirá un cero en el bloque (incluso si está en un archivo ... el pensamiento es que ya está mal).

http://www.intechusa.com/

aerickson
fuente
Eso no es lo que hace un formato de bajo nivel, o incluso cualquier tipo de formato, ya que el formato no significa borrar, significa poner la unidad en un formato que permita su uso. Un formato de bajo nivel decide dónde colocar las pistas y sectores en el disco , y solo se necesita una vez cuando se fabrica la unidad.
Chai T. Rex
Si lees un poco más, verás que el artículo que vinculaste menciona que "formateo de bajo nivel" ahora significa escribir el mismo valor en todos los bloques. en.wikipedia.org/wiki/Disk_formatting#Disk_reinitialization
aerickson
Si lees un poco más, verás que sigue siendo incorrecto.
Chai T. Rex
0

Atención primero al comentario de @chronos ... piense: dataloss. En un caso extremo, una solución puede hacer que la recuperación de datos sea imposible.


Entre las utilidades que he usado en Macs, una es excepcional para alertas inconfundibles como esta:

ingrese la descripción de la imagen aquí

Advertencia

La operación que está a punto de realizar puede causar la pérdida de datos.

Para ahorrar un bloque defectuoso ... escriba datos en la unidad. Lo más probable es que esto provoque daños en el volumen o en los datos si se encuentra un bloque defectuoso y se ahorra.

Puede obtener información sobre tales cosas antes de comprar el producto, de una manera absolutamente honesta.

(Para apreciar el riesgo de daños, consulte, por ejemplo, la documentación de SpinRite vinculada a la parte ¿Por qué me importa? De mi respuesta en Cómo verificar si hay un sector defectuoso en un disco duro USB en OS X? )

Por sus advertencias inconfundibles, por la satisfacción previa a la compra y más, esta respuesta es mi voto de confianza en:

Drive Genius 3

Graham Perrin
fuente
En Ask Different hay un comentario de @BSDGuy
Graham Perrin el
-1

Horrible, horrible consejo anterior. Me refiero a WOW-horrible consejo. :sacude la cabeza:

  1. No conozco ninguna utilidad moderna para Mac OS X que realmente repare (marque) los bloques defectuosos y le permita continuar con su día. Dicho esto, debe encontrar una versión anterior de Norton Utilities para Mac OS para corregir los bloques defectuosos en el HD en cuestión. Como la versión 7.0 o 8.0.

  2. Como supongo que está usando una PC con ropa de Mac (computadora Post PPC que usa una CPU Intel y ejecuta Unix [Mac OS X]), necesitará encontrar un buen PPC Macintosh (o tal vez se ejecutará en emulación en ¿una PC con Intel?) que aún puede iniciar el sistema operativo 9. Obtenga una tarjeta PCI SATA (¿supongo que tiene un SATA HD?) que funcione con el sistema operativo 9. Luego, inicie el Norton CD, ejecute Disk Doctor y escanee / repare El HD en cuestión.

  3. Esto suena difícil de hacer, pero no lo es. Siendo un técnico de Mac "REAL" y fanático de los últimos 20 años, tengo máquinas desde 128k hasta un Dual G5, por lo que el hardware simplemente me está dando vueltas. En otras palabras, es súper fácil para mí.

  4. ¿Por qué sueno grosero? Porque yo soy. Estoy muy enfadado con la Apple actual, y odio especialmente a Steve Jobs por destruir Apple Computer para los usuarios de Macintosh de los años 80 y 90, y convertir la Mac en nada más que una PC que ejecuta una versión suave de Unix. Él, y las personas que piensan como él, son la razón por la que Mac ya no tiene las utilidades que necesita para reparar su HD "correctamente".

  5. Cualquier persona que le diga que mire datos SMART, o confíe en los datos SMART de alguna manera, no debe escucharlos. SMART es extremadamente defectuoso.

  6. Los HD casi siempre han reasignado los bloques defectuosos automáticamente, al menos desde que tengo memoria y soy viejo para un técnico. ¡PERO! Hacen un trabajo horrible y si está viendo bloques defectuosos, eso se debe a que el HD se ha quedado sin la pequeña cantidad de espacio reservado para volver a asignar automáticamente los bloques defectuosos. Es decir, debe ejecutar una utilidad que lo haga mejor.

NotAnMSFan
fuente