Cómo verificar sectores defectuosos o bloques defectuosos en el disco duro en Linux


Comencemos por definir un sector/bloque defectuoso, es una sección en una unidad de disco o memoria flash que ya no se puede leer ni escribir, como resultado de un daño físico fijo en la superficie del disco o transistores de memoria flash fallidos.

A medida que los sectores defectuosos continúan acumulándose, pueden afectar de manera indeseable o destructiva su unidad de disco o la capacidad de la memoria flash o incluso provocar una posible falla de hardware.

También es importante tener en cuenta que la presencia de bloques defectuosos debería alertarlo para que comience a pensar en obtener una nueva unidad de disco o simplemente marcar los bloques defectuosos como inutilizables.

Por lo tanto, en este artículo, realizaremos los pasos necesarios que pueden permitirle determinar la presencia o ausencia de sectores defectuosos en su unidad de disco Linux o memoria flash utilizando ciertas utilidades de escaneo de disco.

Dicho esto, a continuación se muestran los métodos:

Verifique los sectores defectuosos en los discos de Linux con la herramienta badblocks

Un programa de badblocks permite a los usuarios escanear un dispositivo en busca de sectores o bloques defectuosos. El dispositivo puede ser un disco duro o una unidad de disco externa, representada por un archivo como/dev/sdc.

En primer lugar, use el comando fdisk con privilegios de superusuario para mostrar información sobre todas sus unidades de disco o memoria flash más sus particiones:

$ sudo fdisk -l

Luego escanee su unidad de disco Linux para verificar si hay sectores/bloques defectuosos escribiendo:

$ sudo badblocks -v /dev/sda10 > badsectors.txt

En el comando anterior, badblocks está escaneando el dispositivo/dev/sda10 (recuerde especificar su dispositivo real) con el -v que le permite mostrar los detalles de la operación. Además, los resultados de la operación se almacenan en el archivo badsectors.txt mediante redirección de salida.

En caso de que descubra algún sector defectuoso en su unidad de disco, desmonte el disco e indique al sistema operativo que no escriba en los sectores informados de la siguiente manera.

Necesitará emplear e2fsck (para sistemas de archivos ext2/ext3/ext4) o el comando fsck con el archivo badsectors.txt y el archivo del dispositivo como en el siguiente comando.

La opción -l le dice al comando que agregue los números de bloque listados en el archivo especificado por nombre de archivo (badsectors.txt) a la lista de bloques defectuosos.

------------ Specifically for ext2/ext3/ext4 file-systems ------------ 
$ sudo e2fsck -l badsectors.txt /dev/sda10

OR

------------ For other file-systems ------------ 
$ sudo fsck -l badsectors.txt /dev/sda10

Escanear sectores defectuosos en el disco de Linux con Smartmontools

Este método es más confiable y eficiente para discos modernos (discos duros ATA/SATA y SCSI/SAS y unidades de estado sólido) que se envían con un sistema SMART (tecnología de autocontrol, análisis e informes) que ayuda a detectar, informar y posiblemente registre su estado de salud, para que pueda averiguar cualquier falla inminente de hardware.

Puede instalar smartmontools ejecutando el siguiente comando:

------------ On Debian/Ubuntu based systems ------------ 
$ sudo apt-get install smartmontools

------------ On RHEL/CentOS based systems ------------ 
$ sudo yum install smartmontools

Una vez completada la instalación, utilice smartctl que controla el sistema S.M.A.R.T integrado en un disco. Puede consultar su página de manual o su página de ayuda de la siguiente manera:

$ man smartctl
$ smartctl -h

Ahora ejecute el comando smartctrl y nombre su dispositivo específico como un argumento como en el siguiente comando, el indicador -H o --health se incluye para mostrar la salud general SMART -resultado de la prueba de evaluación.

$ sudo smartctl -H /dev/sda10

El resultado anterior indica que su disco duro está en buen estado y es posible que no experimente fallas de hardware pronto.

Para obtener una descripción general de la información del disco, utilice la opción -a o --all para imprimir toda la información SMART relativa a un disco y -x o --xall que muestra toda la información SMART y no SMART sobre un disco.

En este tutorial, cubrimos un tema muy importante sobre el diagnóstico de estado de la unidad de disco, puede comunicarse con nosotros a través de la sección de comentarios a continuación para compartir sus pensamientos o hacer cualquier pregunta y recuerde estar siempre conectado a Tecmint.