ddrescue
Descripción del programa ddrescue
GNU ddrescue es una herramienta de recuperación de datos de línea de comandos, publicada por el proyecto GNU y presente de forma nativa en prácticamente todas las distribuciones de Linux. Su cometido es copiar los datos de un disco duro, CD, DVD, tarjeta de memoria o cualquier otro soporte hacia un archivo o dispositivo de destino, rescatando primero las zonas legibles y volviendo después, con paciencia y estrategia, sobre las áreas problemáticas.
Su gran ventaja frente a una copia convencional es que no se rinde ante el primer error de lectura. Mientras una orden de copia clásica aborta o se queda bloqueada al encontrar un sector defectuoso, ddrescue salta la zona dañada, registra su posición y continúa por el resto del soporte, maximizando la cantidad de datos rescatados de un disco en proceso de fallo y minimizando el tiempo que ese hardware ya tocado pasa trabajando.
Es un proyecto veterano y muy vivo: lo escribió Antonio Díaz Díaz en 2004 y lo mantiene desde entonces dentro del proyecto GNU, bajo licencia GPL. Está considerado la referencia estándar en recuperación de datos a bajo nivel dentro del software libre. Conviene descargar siempre la última versión desde su web oficial o desde los repositorios de tu distribución.
Características clave de ddrescue
1. Algoritmo de recuperación por fases
El programa no copia de forma lineal, sino que ejecuta una secuencia inteligente de pasadas: primero un barrido rápido por bloques grandes que rescata lo sano, después un recorte que delimita las zonas dudosas, luego un rascado sector a sector y, por último, reintentos opcionales sobre los sectores marcados como erróneos. Cada fase busca extraer el máximo de datos con el mínimo estrés para el soporte.
2. Archivo de mapa con reanudación garantizada
Todo el progreso se guarda en un archivo de mapa (mapfile) que la herramienta actualiza periódicamente. Si el proceso se interrumpe por un corte de luz, un reinicio o un bloqueo del sistema, la recuperación continúa exactamente donde estaba, sin volver a copiar nada de lo ya rescatado. El manual insiste en usarlo siempre, salvo que sepas muy bien lo que haces.
3. Fusión de copias dañadas
Si dispones de dos o más copias defectuosas del mismo disco o CD, puedes ejecutar la herramienta sobre cada una apuntando al mismo archivo de salida y al mismo mapa. Como las zonas ilegibles de una copia rara vez coinciden con las de otra, al combinarlas es muy probable obtener un archivo completo y sin errores. Es una técnica habitual en entornos forenses y de archivado.
4. Herramientas auxiliares integradas
El paquete incluye ddrescuelog, una utilidad para examinar, convertir, comparar y validar archivos de mapa, además de un modo de relleno capaz de sobrescribir selectivamente zonas concretas de la imagen: útil para marcar sectores defectuosos o preparar un soporte antes de sacarlo de casa.
Explicación detallada de su funcionamiento
ddrescue trabaja a nivel de bloques, sin interpretar en ningún momento el sistema de archivos del soporte de origen: lee sectores crudos y los escribe en el destino siguiendo su algoritmo de fases, que prioriza siempre los datos fáciles. Al copiar primero las zonas sanas, se rescatan los contenidos importantes antes de que el deterioro del disco avance.
En la práctica, esto resuelve el problema de los discos con sectores defectuosos que empiezan a hacer clic, de los CD y DVD grabados hace años cuya capa se degrada, o de las tarjetas SD que dejan de montarse. Obtienes una imagen completa del soporte en un archivo, sobre la que luego trabajar con herramientas de reparación de sistemas de archivos o de recuperación de ficheros, sin someter el hardware original a más lecturas de las necesarias.
El enfoque tiene límites claros: solo trabaja con dispositivos de acceso aleatorio, no repara por sí mismo sistemas de archivos ni recupera archivos borrados, y necesita un disco de destino con espacio libre suficiente para una imagen del tamaño completo del soporte de origen. Además, al ser una herramienta de terminal, exige cierta soltura con la línea de comandos y, sobre todo, mucho cuidado al elegir el identificador del dispositivo.
Cómo usar ddrescue
En Linux, lo más cómodo es instalarlo desde el gestor de paquetes (ojo: en Debian y Ubuntu el paquete se llama gddrescue, no dd_rescue, que es otra herramienta distinta). Antes de empezar, identifica el disco dañado con lsblk y asegúrate de que ninguna de sus particiones esté montada; lo ideal es arrancar desde un USB live para que el disco de origen quede inaccesible al sistema. El flujo recomendado es en dos pasadas:
# 1) Primera pasada: copia rápida de las zonas buenas (sin rascado)
sudo ddrescue -f -n /dev/sdX imagen.img mapfile.log
# 2) Segunda pasada: insiste en los sectores difíciles (3 reintentos)
sudo ddrescue -f -r3 /dev/sdX imagen.img mapfile.log
Aquí /dev/sdX es el disco de origen (el dañado), imagen.img es el archivo donde se guarda la copia y mapfile.log es el mapa que registra el progreso. La opción -n omite el rascado en la primera pasada para rescatar cuanto antes lo legible; -r3 reintenta los sectores rebeldes. En discos muy deteriorados, leer en sentido inverso con -R a veces permite rescatar mucho antes de toparse con las zonas peores.
Cuando termine, con ddrescuelog puedes revisar el estado del mapa y confirmar cuánto se ha rescatado antes de archivar la imagen. A partir de ahí, montas esa imagen y extraes los archivos, o la pasas por una herramienta de recuperación de ficheros.
Descarga e información de ddrescue
- Desarrollador: Antonio Díaz Díaz (proyecto GNU), desde 2004.
- Página oficial: gnu.org/software/ddrescue.
- Versión: en desarrollo activo; instálalo desde los repositorios de tu distribución o descarga la última desde la web oficial.
- Sistemas: Linux (en los repositorios de todas las distribuciones principales), macOS compilando las fuentes y Windows mediante entornos compatibles como Cygwin o WSL.
- Licencia: GPL v2 o posterior (código abierto).
Si prefieres un entorno gráfico sobre el mismo motor, DDRescue-GUI es un frontal de escritorio, activo y multiplataforma, que guía la selección de discos, la configuración del mapa y el seguimiento del progreso con ventanas en lugar de comandos.
Cuándo es (y cuándo no) la herramienta adecuada
ddrescue es la mejor opción cuando un disco empieza a fallar y hay datos sin copia de seguridad que rescatar: discos con sectores defectuosos, unidades externas que chasquean, CD y DVD antiguos, tarjetas de memoria o pendrives dañados. Es, además, el instrumento de referencia en laboratorios forenses y servicios técnicos, por su fiabilidad y por dejar constancia de todo el proceso en el mapa.
No es la opción adecuada cuando lo que se ha perdido es un archivo borrado de un disco sano —para eso están herramientas de recuperación de ficheros como Recuva, PhotoRec o TestDisk— ni cuando el daño es físico grave: un disco que hace clic sin parar o que la BIOS ni detecta necesita un laboratorio profesional, y seguir insistiendo con software solo puede empeorar las cosas. Si quieres un programa de recuperación con interfaz gráfica nativa en Windows, DMDE es una alternativa a tener en cuenta.
Su rasgo diferencial es justamente la combinación de algoritmo por fases, mapa reanudable y fusión de copias dañadas, que no tiene equivalente directo en el software libre. Antonio Díaz Díaz es también el autor de lzip y lziprecover, con los que ddrescue forma una pareja pensada a conciencia para rescatar y reparar datos comprimidos corruptos.
Preguntas frecuentes
¿ddrescue es gratis o de pago?
Es software libre bajo licencia GPL v2 o posterior: se puede usar, copiar, modificar y redistribuir sin coste alguno, también en entornos profesionales. No hay versión de pago ni funciones restringidas.
¿Funciona en Windows y con discos externos USB?
Su plataforma nativa es Linux, pero puede ejecutarse en Windows a través de Cygwin o WSL, y existe DDRescue-GUI para usarlo con ventanas. Funciona con cualquier dispositivo que el sistema reconozca: discos internos y externos, pendrives, tarjetas SD y SSD.
¿Qué diferencia hay con la orden dd?
La orden dd copia de forma lineal y aborta o se bloquea ante el primer error de lectura, pudiendo empeorar un disco dañado. ddrescue salta las zonas defectuosas, lo registra todo en el mapa y vuelve sobre ellas con estrategia, maximizando el dato rescatado y permitiendo reanudar en cualquier punto.
¿Repara el disco dañado?
No. El programa nunca modifica el soporte de origen: extrae los datos a una imagen y deja constancia de los sectores ilegibles. Reparar el disco en sí queda fuera de su alcance, y en discos con fallos mecánicos insistir solo acelera su deterioro.
¿Sirve para recuperar archivos borrados?
No directamente: trabaja a nivel de bloques y copia sectores crudos, estén o no borrados los archivos que contienen. Para recuperar ficheros eliminados sobre la imagen ya rescatada se usan herramientas específicas como PhotoRec o TestDisk, que encajan muy bien con su flujo de trabajo.