Si tu disco duro en Linux muestra errores, sectores dañados o un rendimiento inusualmente lento, es normal que te sientas frustrado y preocupado por tus datos. Tú necesitas pasos claros y seguros para diagnosticar y reparar sin empeorar la situación.
En este artículo encontrarás una guía paso a paso con herramientas y comandos prácticos para evaluar, reparar y recuperar discos en sistemas Linux. Sigue las instrucciones con cuidado y realiza copias de seguridad cuando sea posible para abordar el problema de forma segura y efectiva.
Diagnóstico inicial del disco duro en Linux y comprobaciones básicas
Antes de ejecutar reparaciones, asegúrate de no empeorar la situación: desconecta el equipo si hay ruidos extraños o olor a quemado, y prioriza hacer una copia de seguridad si el disco aún es legible. Comprueba físicamente: que el cable SATA/USB y la alimentación estén bien conectados y que el disco sea detectado en la BIOS/UEFI. Si trabajas desde un sistema activo, monta el equipo en modo solo lectura para evitar más escritura.
Realiza estas comprobaciones básicas desde Linux para evaluar el estado inicial y decidir los siguientes pasos:
- Lista discos y particiones:
lsblk -fosudo fdisk -l– confirma que el dispositivo aparece y su esquema de particiones. - Revisa eventos del kernel:
dmesg | tail -n 50odmesg | grep -i -E "sd|ata|i/o"– busca errores I/O, timeouts o reintentos. - Consulta SMART:
sudo smartctl -a /dev/sdX– comprueba el estado global y atributos como Reallocated_Sector_Ct y Current_Pending_Sector. - Comprueba el sistema de archivos: desmonta y ejecuta
sudo fsck -f /dev/sdXn(osudo e2fsck -fpara ext) si no hay fallos físicos evidentes.
- Si SMART informa fallos graves, no sigas escribiendo en el disco; clona o saca los datos antes de intentar reparaciones.
- Si el disco no aparece en BIOS o dmesg muestra errores de alimentación/conexión, revisa cables y prueba en otro puerto o equipo.
| Comando | Qué comprueba |
|---|---|
lsblk -f |
Particiones y puntos de montaje |
sudo smartctl -a /dev/sdX |
Estado SMART y errores internos |
sudo fsck -f /dev/sdXn |
Consistencia del sistema de archivos |
Herramientas esenciales para analizar y reparar discos duros en Linux
Tú necesitarás una serie de utilidades para diagnosticar y reparar un disco en Linux; cada una cumple una función concreta y es recomendable conocerlas antes de actuar. Herramientas clave:
- smartctl (smartmontools) – comprueba la salud SMART del disco. Ejemplo:
sudo smartctl -a /dev/sdX. - fsck / e2fsck – repara sistemas de ficheros (ext2/3/4). Ejemplo:
sudo e2fsck -f -y /dev/sdX1. - badblocks – detecta y marca bloques defectuosos. Ejemplo:
sudo badblocks -v /dev/sdX. - ddrescue – recupera datos copiando sectores de forma segura. Ejemplo:
sudo ddrescue -f -n /dev/sdX imagen.img logfile. - testdisk – recupera particiones y archivos perdidos. Ejemplo:
sudo testdisk /dev/sdX. - parted / fdisk / gparted – gestionan particiones y tablas (GPT/MBR).
- hdparm – pruebas de rendimiento y control de características del disco. Ejemplo:
sudo hdparm -tT /dev/sdX.
Para actuar con seguridad sigue un proceso ordenado:
- Haz copia de seguridad de los datos críticos antes de cualquier reparación.
- Comprueba la salud SMART:
sudo smartctl -H /dev/sdX; interpreta los resultados y ejecuta un test extendido si procede. - Desmonta la partición afectada:
sudo umount /dev/sdX1, y ejecutasudo e2fsck -f -y /dev/sdX1para reparar el sistema de ficheros. - Si hay sectores defectuosos, usa
badblocksen modo lectura; para recuperar datos primero empleaddrescue. - Si la tabla de particiones está dañada, prueba
testdiskpara recuperar particiones antes de formatear.
| Herramienta | Uso | Comando ejemplar |
|---|---|---|
| smartctl | Diagnóstico SMART | smartctl -a /dev/sdX |
| e2fsck | Reparar ext4 | e2fsck -f -y /dev/sdX1 |
| ddrescue | Recuperación segura | ddrescue /dev/sdX imagen.log |
Pasos detallados para verificar y corregir errores con fsck y utilidades similares
Antes de tocar el disco, asegúrate de hacer copia de seguridad de los datos críticos y desmontar la partición (o arrancar desde un live USB). Sigue estos pasos prácticos y seguros:
- Comprueba el estado SMART para detectar fallos físicos: smartctl -a /dev/sdX. Si muestra errores crecientes, considera clonar el disco primero.
- Haz una comprobación sin modificar para ver los errores: fsck -n /dev/sdXN (o e2fsck -n /dev/sdXN para ext). Esto no cambia nada y te informa.
- Si decides reparar, desmonta la partición y ejecuta: fsck -fy /dev/sdXN o e2fsck -f -y -v /dev/sdXN para forzar y contestar «sí» a las reparaciones.
- Para XFS, primero desmonta y prueba en modo solo lectura: xfs_repair -n /dev/sdXN, y si procede ejecuta xfs_repair /dev/sdXN (puede necesitar -L en casos extremos).
- Si hay bloques defectuosos, combina fsck con badblocks (por ejemplo: e2fsck -c /dev/sdXN) para marcar sectores dañados.
Consejos rápidos y precauciones:
- Siempre trabaja desde un entorno donde la partición no esté montada.
- Usa -n para diagnosticar y -y para reparar automáticamente solo cuando confíes en los cambios.
- Si el disco muestra fallos físicos repetidos, reemplázalo tras clonar los datos; las reparaciones solo ayudan en corrupción lógica.
| Sistema de archivos | Utilidad recomendada |
|---|---|
| ext2/3/4 | e2fsck / fsck.ext4 |
| XFS | xfs_repair |
| btrfs | btrfs check / btrfs rescue |
Recomendaciones para recuperar datos antes de una reparación profunda
Detén el uso del disco inmediatamente y no intentes reparaciones drásticas sin antes recuperar tus datos. Si el disco muestra ruidos extraños o errores de lectura, apágalo o desmonta la unidad para evitar más daños físicos. Para operaciones lógicas, trabaja desde una sesión live de Linux y monta la unidad en modo solo lectura siempre que sea posible: así reduces el riesgo de sobrescribir datos.
- Evalúa el estado: ejecuta desde la live USB un chequeo SMART (por ejemplo,
sudo smartctl -a /dev/sdX) para ver si hay fallos físicos. - Crea una imagen del disco: usa herramientas como ddrescue para clonar la unidad a un archivo imagen en otra unidad de mayor capacidad (trabaja sobre la imagen, no sobre el original).
- Trabaja sobre copias: monta la imagen en modo lectura y usa utilidades de recuperación (TestDisk, PhotoRec) sobre la copia, no sobre el disco original.
- Copia los archivos recuperados a un destino seguro: utiliza rsync o copias verificadas en otra unidad y genera checksums para comprobar integridad.
- Documenta todo: anota el orden de particiones, UUIDs y pasos realizados por si necesitas mantener un historial para un técnico.
- Consejos rápidos: prioriza archivos críticos (documentos, fotos, bases de datos) antes que archivos grandes no esenciales.
- Evita herramientas automáticas de reparación del sistema de archivos hasta que no tengas una imagen completa.
- Si sospechas daño físico, considera un servicio profesional antes de más intentos.
| Acción | Comando típico |
|---|---|
| Revisar SMART | sudo smartctl -a /dev/sdX |
| Clonar con recuperación | sudo ddrescue -f -n /dev/sdX /media/backup/disk.img /media/backup/disk.log |
| Montar imagen en solo lectura | sudo mount -o loop,ro disk.img /mnt/recovery |
| Recuperar particiones | sudo testdisk disk.img |
| Recuperar archivos | photorec /log /d /media/recovered |
Buenas prácticas para prevenir futuros fallos en discos duros en Linux
Para minimizar la probabilidad de futuros fallos debes implementar rutinas sencillas y fiables: haz copias de seguridad regulares, monitoriza el estado SMART del disco y programa comprobaciones periódicas del sistema de archivos. También es recomendable mantener el hardware y el firmware actualizados, usar un SAI (UPS) para evitar apagados forzosos y no llenar el disco al 100% (deja siempre espacio libre para el sistema). Si trabajas con datos críticos, considera RAID o LVM con discos calientes para tolerancia a fallos.
Acciones prácticas que puedes seguir ahora mismo:
- Activa SMART y programa pruebas automáticas (corta semanal y larga mensual).
- Automatiza fsck tras apagados no limpios o crea un timer systemd/cron para comprobaciones fuera de horario.
- Monitorea logs (dmesg, /var/log/syslog) y alerta ante errores repetidos de I/O.
- Reserva un disco de repuesto y prueba la recuperación periódicamente para validar backups.
- Usa opciones de montaje como noatime y barriers según recomendación de tu distro para mejorar estabilidad y rendimiento.
- Herramientas útiles: smartctl, badblocks, fsck, mdadm (RAID), lvchange/lvm2.
- Mantén el kernel y utilidades actualizadas para aprovechar correcciones relacionadas con almacenamiento.
| Comando | Función |
|---|---|
| smartctl -H /dev/sdX | Estado rápido SMART |
| smartctl -t short/long /dev/sdX | Pruebas automáticas |
| fsck -f /dev/sdXN | Reparar sistema de archivos |
Resumen
Aplicando los pasos descritos puedes localizar y corregir errores lógicos, comprobar la salud del disco con smartctl y recuperar datos con herramientas como ddrescue desde un entorno en vivo. Realiza todas las pruebas en modo lectura siempre que sea posible para evitar sobrescribir información importante.
Mantén copias de seguridad regulares y documenta los cambios que realices en las particiones y el sistema de archivos. Si detectas ruidos extraños, daños físicos o pérdidas críticas, valora la recuperación profesional para minimizar la pérdida de datos.



