Comprobación física completa de HD

17

Me gustaría ejecutar una verificación física completa, sector por sector, en algunos discos duros externos. Que yo sepa, chkdskno ofrece esta opción.

¿Hay alguna solución alternativa chkdsko un buen reemplazo? Estoy usando Windows 7 en esta máquina, pero las soluciones de Linux aplicables desde un CD en vivo también son bienvenidas.

Gracias,

Adam Matan

Adam Matan
fuente
¿Qué sistema operativo estás ejecutando? Como mencionó chkdsk, supongo que es Windows NT, XP, Vista, 7, Server 2003 o Server 2008.
robe el

Respuestas:

28

En Windows NT / XP / Vista / 7, puede abrir un indicador CMD y usar

chkdsk /r x:

donde x es la letra de la unidad USB, suponiendo que la unidad está particionada y tiene asignada una letra de unidad.

Sugeriría obtener un CD en vivo de Ubuntu e iniciar en Linux, luego usar bloques defectuosos para buscar defectos físicos.

Use sudo fdisk -lpara enumerar todas las unidades y sus particiones. Para cada unidad :

sudo badblocks -nvs /dev/sdx

donde está tu disco duro / dev / sdx. Esto realizará una prueba de lectura / escritura no destructiva en el disco sin hacer una verificación del sistema de archivos.

Si no le importan los datos, puede hacerlo en su lugar, para hacer un análisis más exhaustivo:

sudo badblocks -wvs /dev/sdx

La opción -w le dice a badblocks que escriba un patrón conocido, luego lea los datos para asegurarse de que coincida con el patrón. Lo hace 4 veces, usando los patrones 0xaa, 0x55, 0xff y 0x00 (alternando 0 y 1, luego todos los 1, luego todos los 0). Tenga en cuenta que esto sobrescribirá todos los datos en el disco y borrará todas las particiones también.

Si tiene un sistema de archivos Linux en la unidad, puede verificar si hay errores en el sistema de archivos y ejecutar bloqueos defectuosos al mismo tiempo. Primero, obtenga la lista de todas las unidades y sus particiones:

sudo fdisk -l

Luego para cada partición :

sudo e2fsck -fcc /dev/sdx#

Nuevamente, / dev / sdx es el disco duro que desea escanear. # es el número de la partición (por ejemplo, / dev / sdb1). Especificar c dos veces forzará a fsck a ejecutarse, y usará bloques defectuosos para hacer una prueba de lectura-escritura no destructiva. Si solo usa la opción c una vez, badblocks hará una prueba de solo lectura.

Ejecuto badblocks -wvs en cada disco duro nuevo que compro antes de ponerlo en servicio.

robar
fuente
1
No creo que chkdsk / r realmente escanee cada bloque ... se ejecuta mucho más rápido de lo que esperaría para algo que lea cada bloque. Es posible que desee tener en cuenta la opción de prueba no destructiva de badblocks, en caso de que ya tenga datos en los discos.
davr el
@davr: Gracias; Ya mencioné la prueba no destructiva de badblocks en el comando fsck, pero agregué un badblocks explícito -vs para que sea exhaustivo. chkdsk / r comprueba si hay bloques defectuosos y tarda bastante cuando lo ejecuto, pero probablemente no sea tan completo como badblocks -w. ¿Estás seguro de que no estás pensando en chkdsk / f o chkdsk / p, que solo reparará los errores del sistema de archivos pero no buscará bloques defectuosos?
robar el
@davr: Pensé en una cosa ... chkdsk probablemente no verifica el registro de arranque o la tabla de particiones. Como solo toma un nombre de volumen (es decir, letra de unidad, punto de montaje o nombre de volumen) como argumento, eso sugiere que solo puede verificar un volumen lógico en busca de errores de medios, y todo lo que esté fuera del volumen especificado (partición) se ignora. Sin embargo, eso no debería hacer una gran diferencia en términos de velocidad de escaneo. ¿De eso estás hablando?
robar el
1
Su uso de fsck es en realidad una referencia a e2fsck. El stock fsck no incluye una -clínea de comando arg. Aparte de, buena respuesta.
DaveParillo el
Tienes razón, Dave. Gracias; He movido las instrucciones de badblocks por adelantado ya que está ejecutando Windows, pero arreglé las instrucciones de e2fsck y las moví hasta el final para cualquiera que se encuentre con esto y ejecute Linux.
robar
5

Me gustaría ejecutar una verificación física completa, sector por sector, en algunos discos duros externos.

Descargue y ejecute HD Tune , elija la unidad que desea escanear en el menú desplegable, haga clic en la pestaña Escaneo de errores (asegúrese de que la casilla Escaneo rápido esté vacía) y presione Iniciar .

ingrese la descripción de la imagen aquí

HD Tune es gratuito para uso personal y portátil (no requiere instalación).

Garfio
fuente
1
Freeware ?? ¡Prueba de 15 días! Solo HD Tune es un programa gratuito.
Loren Pechtel, el
disculpas, edité la publicación ... sin embargo, no hace mucha diferencia porque la característica a la que me refiero está disponible en la versión gratuita, como se puede ver en la captura de pantalla.
1

Muchos fabricantes de unidades como Western Digital y Seagate proporcionan herramientas que harán este tipo de verificación. Por lo general, una herramienta de Windows.

Dave M
fuente
Hasta donde sé, esto solo ejecuta la autocomprobación SMART, que no es un escaneo completo del disco.
endolito el
endolito- Las pruebas de WD semm van más allá de SMART. Descarga gratuita, así que pruébalo si tienes una unidad WD
Dave M
1

En Windows, usaré la versión gratuita de HDTune para buscar sectores defectuosos. Sin embargo, el programa Linux BadBlocks es mucho mejor, ya que le brinda una lista exacta de cada bloque defectuoso y admite la comprobación de lectura y escritura (aunque la escritura es destructiva).

Dentrasi
fuente
2
badblocks también tiene una prueba de escritura no destructiva. lee el bloque, escribe un nuevo valor, verifica el nuevo valor y luego vuelve a escribir el bloque original. por lo que no destruirá ningún dato válido en el disco. La desventaja es que las operaciones adicionales hacen que funcione mucho más lento.
davr el
1

Cualquier unidad moderna reasignará automáticamente bloques ilegibles / dudosos. Un sistema operativo normalmente no obtendrá una falla de lectura para un bloque a menos que el bloque sea realmente ilegible, y escribir sobre ese bloque hará que la unidad lo reasigne. ¡Eso solo fallará si la unidad no tiene bloques de repuesto, en cuyo caso es hora de reemplazar la unidad!

El resultado es que un sistema operativo que marca "bloques defectuosos" en el estilo de scandisk generalmente no tiene sentido.

Dicho esto, usaría una autoevaluación extendida SMART. Smartmontools debería funcionar. También puede obtener el número de bloques reasignados.

Tenga en cuenta que en Linux, un plano dd if=/dev/sdx of=/dev/null, donde sdx es el dispositivo de bloque del disco, realizará una lectura lógica completa del disco. Si algún bloque es ilegible, obtendrá un error. Si no le importa cambiar datos, puede dd if=/dev/zero of=/dev/sdxsobrescribir todo el disco, haciendo que la unidad se reasigne según sea necesario.

Capitán Segfault
fuente
1
En lugar de usar 'dd', es mejor usar el comando de Linux 'badblocks', que está específicamente diseñado para esta tarea.
davr el
1
Mi punto es que "esta tarea" es tan obsoleta como el concepto de un "bloque malo".
Capitán Segfault el
El disco duro no repara los bloques defectuosos hasta que los escribe. Una buena forma de escribirles es usar bloques defectuosos en modo no destructivo. : D
endolito
Desearía que esto fuera cierto. Confunde los discos internos con los discos externos USB. Los receptáculos de unidades USB necesitan un mejor firmware con informes SMART, de los cuales la mayoría carece.
Nicolay77
@endolith Algunos discos duros también reubican bloques sospechosos al leerlos. Al menos algunos HDD-s empresariales.
Roland Pihlakas
-1

Nunca he estado demasiado interesado en las unidades externas USB, porque realmente no existían cuando algunas de las mejores herramientas como se escribieron ScanDisk . Me gusta especialmente la versión de ScanDisk que viene con Windows 98 SE.

Por lo tanto, si se trata de una unidad externa, probablemente debería colocarla en una computadora y luego ejecutarla fsck -fen la unidad desde un LiveCD de Linux como el CD de rescate PLD .

once81
fuente
1
ScanDisk está obsoleto. fsck -f obligará a fsck a ejecutarse, pero no hará una prueba de medios físicos.
robar el