Aplicaciones Windows, Linux, Mac, móviles

Reparar sectores dañados de discos y pendrives en Linux

badblocks
()

Que un sector de un disco se dañe puede suceder entre otros motivos por un fallo eléctrico o un apagado incorrecto del ordenador, ya que los discos son dispositivos bastantes frágiles, por lo que se pueden dañar fácilmente si no se realiza un trato cuidadoso. Por lo que hay que evitar posibles problemas eléctricos, apagados indebidos, golpes, sobretodo si el disco es mecánico, es decir, HDD, hay que evitar movimientos bruscos o golpes ya que este sistema de discos duros son sensibles.

La vida útil de un disco duro HDD está estimada en unas 20000 horas, el disco duro está en funcionamiento siempre que reciba corriente eléctrica y su trabajo se incrementa cuando se hace lectura y/o escritura de datos. Los discos duros SSD cada vez se implementan más en equipos y dispositivos de almacenamientos, ya que además de mayor velocidad, no sufren tanto como los discos HDD en condiciones de movimiento. Además los SSD cada vez dan mejores resultados en su vida útil. Hay sitios Web donde podemos usar una calculadora para averiguar la vida útil de nuestro disco duro SSD dependiendo de sus características y trabajo, por ejemplo en: https://wintelguy.com/dwpd-tbw-gbday-calc.pl

Los dispositivos USB como pendrives, tarjetas de memoria y discos duros externos también pueden presentar problemas, al igual que los discos duros internos, aún más si no se hace un uso adecuado del mismo, por ejemplo, conectando y desconectando correctamente y desmontando/expulsando la unidad antes de desconectarla del USB.

Uno de los problemas de los discos dañados ya sea por errores lógicos o físicos, suele ir fallando cada vez más a menudo, pero podemos reparar los errores con aplicaciones desarrolladas específicamente para ello. En este caso vamos a ver como reparar un disco dañado en Linux con Badblocks.

En el artículo Reparar errores en el sistema de archivos en Linux con fsck, explicábamos como solucionar inconsistencias en sistemas de archivos en dispositivos de almacenamiento de Linux y MacOS.

badblocks
badblocks

Reparar sectores con Badblocks

Badblocks es una utilidad de localiza y aísla los sectores o bloques defectuosos en un disco, de modo que evitará que esos sean usados y provoquen problemas en los datos. Además Badblocks permite realizar la reparación en modo lectura-escritura para no perder los datos. Pero también en modo escritura solamente que borrará los datos. Por lo cual, antes de usar badblocks es recomendable tener o realizar una copia de seguridad.

Primeramente debemos saber si tenemos instalado Badblocks en el sistema, para ello lo comprobaremos en una terminal.

Abrir una Terminal

Puedes hacerlo con uno de los siguientes métodos:

  • Abrir una terminal: pulsar en el menú de inicio (igual que Inicio de Windows), en las aplicaciones instaladas ir a Sistema > Terminal…, Konsole (o similar)
Terminal de XFCE
  • Abrir una terminal: pulsar la combinación de teclas Alt + F2, se abrirá una ventana para escribir la aplicación a abrir, en XFCE escribe xfce-terminal , en KDE escribe konsole o en otros xterm y pulsa en Ejecutar.
Ejecutar terminal XFCE
  • Ir a la Terminal sin modo gráfico, pulsando la combinación de teclas Ctrl + Alt + F1 , con este método no visualizarás a la vez el escritorio y ventanas, por lo que puede ser más incómodo para algunos usuarios. Para volver al sistema gráfico puedes hacerlo pulsando la combinación de teclas Ctrl + Alt + F7 (en caso de no ser F7, comprueba con F8…).

Si realizas la instalación en terminal, te explicamos como:

Una vez abierta la consola debes de tener permisos de root o usar sudo, si escribimos:

sudo badblocks

y no se encuentra el programa o la orden no se encuentra, deberemos instalarlo. Badblocks está integrado en el paquete e2fsprogs, por lo que hay que instalar este paquete. e2fsprogs se compone de las siguientes herramientas: chattr, lsattr, mke2fs, mklost+found, tune2fs, e2fsck, resize2fs además de badblocks.

Instalar Badblocks en Debian, Ubuntu…

sudo apt install e2fsprogs

Instalar Badblocks en Arch, Manjaro,…

sudo pacman -S e2fsprogs

Instalar Badblocks en CentOS

yum install e2fsprogs

Instalar Badblocks en fedora

dnf install e2fsprogs

Instalar badblocks en OSX

brew install e2fsprogs

Disco duro

Usar Badblocks

Si ya tenemos Badblocks en nuestro sistema, lo primero es saber cual es el dispositivo que vamos a comprobar, para ello en la terminal podemos usar fdisk:

sudo fdisk -l

Donde en el resultado aparecerán cada uno de los dispositivos con sus particiones e información correspondiente.

Una vez sepamos cual es el dispositivo debemos estar seguros de que no está montado. Con mount podemos comprobar si dicho dispositivo aparece como montado:

sudo mount

En el resultado se mostrarán los dispositivos y sus puntos de montaje, por ejemplo, /dev/sda1 en / .

Si el dispositivo a chequear no es el disco que contiene el sistema operativo con el que trabajamos seguramente no sea /dev/sda.

Si el dispositivo a chequear está montado, hay que desmontarlo, con umount:

sudo umount /dev/sdc1

Una vez desmontado el dispositivo podemos realizar la prueba con Badblocks, recuerda que este proceso puede ser largo y puede durar incluso varias horas, dependiendo de la capacidad del disco y los errores que se detecten.

Prueba de lectura-escritura NO destructiva

badblocks -nsv /dev/sdc

Ssustituir /dev/sdc por el dispositivo a comprobar. Las opciones que usamos son:

  • n: intentara usar el modo NO destructivo.
  • s: indicar una barra de progreso.
  • v: montrará la información de lo que se está realizando.

Prueba de lectura-escritura DESTRUCTIVA

Aviso: con esta modalidad los datos del disco a comprobar serán borrados.

badblocks -wsv /dev/sdc

Sustituir /dev/sdc por el dispositivo a comprobar. Las opciones que usamos son:

  • w: realiza la prueba destructiva.
  • s: indicar una barra de progreso.
  • v: muestra la información de lo que se está realizando.

Modo de empleo: badblocks [-b tamaño_del_bloque] [-i fichero_de_entrada] [-svwnfBX]
[-c bloques_a_la_vez] [-d factor_de_retardo_entre_lecturas] [-e max_bloques_dañados]
[-p núm_pasos] [-t patrón_de_prueba [-t patrón_de_prueba […]]]
dispositivo [bloque_final [bloque_inicial]]

Una vez realizada la prueba con Badblocks debemos de hacer que el sistema reconozca los sectores defectuosos detectados por la prueba que hemos realizado con Badblocks. Para ello usaremos fsck:

sudo fsck -vcck /dev/sdc1

Sustituir /dev/sdc1 por el partición a comprobbar. Las opciones que usamos son:

  • v: muestra la informació de lo que se está realizando.
  • cc: le indica a fsck que realice el modo NO destructivo.
  • k: conservar los viejos sectores defectuosos.

o puedes usar:

sudo e2fsck -cfpv /dev/sdc1

Sustituir /dev/sdc1 por la partición a comprobar. Las opciones son:

  • c: busca bloques defectuosos.
  • f: comprueba el distema de archivos.
  • p: repara los posibles errores.
  • v: muestra la información de los que se está realizando.

También podemos limitar la comprobación y la reparación solamente a los sectores detectados por Badblocks, para ello la comprobación de Badblocks la realizaremos así:

sudo badblocks -c /dev/sdc1 > resultado

y posteriormente ejecutar e2fsck así:

sudo e2fsck -l ~/resuldatdo /dev/sdc1

Información

Reparar sectores dañados de discos y pendrives en Linux

Sistema Operativo: 

Linux

Licencia: 


¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies