¿Cómo puedo saber la cantidad de sectores defectuosos en mi disco duro?

10

Sé cómo verificar / reparar mi disco duro, pero no sé cómo ver la cantidad de sectores defectuosos en mi disco duro.

PD: Parece que mi disco duro morirá pronto :-(

Alfa Sísifo
fuente

Respuestas:

12

Hay dos formas de detectar sectores defectuosos en Linux: puede usar la utilidad de disco (gui), o puede usar el comando badblocks para verificar si su disco duro tiene sectores defectuosos:

sudo badblocks -v /dev/{device}

Eso debería responder la pregunta, pero para cualquier persona interesada en cómo marcarlos, se puede hacer con 2 comandos simples ...

Agrega los bloques defectuosos a un archivo ...

sudo badblocks /dev/sdb > {/dir/to/filename}

y luego diga fsckque marque estos como inutilizables con ...

sudo fsck -l {/dir/to/filename} /dev/{device}
Rinzwind
fuente
2
Parece que e2fscktiene una -copción que se llama a badblockssí misma y se encarga del tamaño del bloque. Al parecer, hay que tener mucho cuidado de que coincidan si lo haces a tu manera.
Martin Ueding
3
Este uso de badblocks+ fsckpara marcar bloques defectuosos podría ser peligroso. De la badblockspágina de manual: "Nota importante: si la salida de badblocks se va a alimentar a los programas e2fsck o mke2fs, es importante que el tamaño del bloque se especifique correctamente, ya que los números de bloque que se generan dependen mucho del tamaño del bloque en uso por el sistema de archivos. Por esta razón, se recomienda encarecidamente que los usuarios no ejecuten bloques malos directamente, sino que usen la opción -c de los programas e2fsck y mke2fs ". Ver @ john-mehorter respuesta.
sierrasdetandil
Gracias, me preguntaba sobre esto ayer. +1
WinEunuuchs2Unix
8

Use fsck.ext3 (e2fsck) por ejemplo y use la opción -cc

-c     This option causes e2fsck to use badblocks(8) program to do a read-only scan of the device in  order  to  find  any  bad
          blocks.   If  any  bad blocks are found, they are added to the bad block inode to prevent them from being allocated to a
          file or directory.  If this option is specified twice, then the bad block scan will  be  done  using  a  non-destructive
          read-write test.`

fsck -cc / dev / sda1

John Mehorter
fuente
1
Lo he leído varias veces en los últimos años, pero no sé qué es una prueba no destructiva. ¿No cambia nada en el disco? ¿Es solo informativo?
Robert Vila
Supongo que intentará escribir en cada bloque, pero volverá a escribir los datos originales.
Martin Ueding