¿Cuál es la diferencia entre ddrescue, gddrescue y dd_rescue?

57

El ddcomando se usa comúnmente para hacer copias de seguridad de imágenes de una unidad o partición . Sin embargo, funciona mal si la unidad fuente no es confiable o falla. Leí que ddrescue/ dd_rescuees una buena herramienta para recuperar una imagen de un disco defectuoso, ya que intenta volver a leer sectores que no pudo leer la primera vez.

Pero en los repositorios de Ubuntu, veo dos diferentes ddrescueprogramas, con 3 nombres diferentes, pero similares a aparecer en diferentes lugares: ddrescue, gddrescue, dd_rescue. ¿Cual es la diferencia?

Caracol mecánico
fuente

Respuestas:

71

ddrescue, confusamente, puede referirse a dos programas completamente separados, dd_rescuede Kurt Garloff, y GNU ddrescue . Ambos tienen el mismo propósito y se desarrollan activamente.

El programa de Garloff dd_rescuees el primer intento de mejorar dd; GNU ddrescue es más nuevo y fue creado para abordar las deficiencias endd_rescue .

Varias fuentes prefieren GNU ddrescue sobre dd_rescue. Por ejemplo,

  • http://lwn.net/Articles/430000/

    ddrescue gana (en mi libro) porque es un programa eficiente e independiente escrito en C ++ (no un script de shell kludge), produce una salida mucho más limpia en la consola / terminal y (lo más importante) maneja bloques ilegibles con gracia e inteligencia .

  • http://www.toad.com/gnu/sysadmin/index.html#ddrescue

    GNU ddrescue es tu mejor amigo.

    Se modela después de los dos programas anteriores, dd_rescue (con una barra inferior) y dd_rhelp. Pero GNU ddrescue es mucho mejor que ambos: he probado los tres, en el mismo disco, y he tratado de usar el viejo y simple "dd".

    El resumen de GNU de Antonio Díaz Díaz aprendió de estas experiencias. Combina la capacidad de dd_rescue para leer bloques grandes y luego cambiar de marcha, con la capacidad de dd_rhelp para recordar qué partes del disco ya se han visto. Mantiene esta información en un formato de archivo de registro realmente simple y la actualiza cada 30 segundos, o cada vez que se detiene o se interrumpe. Está escrito en C ++ y es pequeño y rápido.

Una ventaja de GNU ddrescue es que realiza una copia de seguridad de la mayoría de los datos más rápido, omitiendo primero los bloques defectuosos (que tardan en recuperarse) y volviendo a ellos solo después de que se hayan realizado copias de seguridad de los bloques buenos. Una desventaja de GNU ddrescue es que no admite salida canalizada, lo que significa que no puede comprimir la imagen de salida con gzipolzop .

Paquetes de Ubuntu

Desafortunadamente, los nombres de los paquetes en los repositorios de Ubuntu son confusos; dd_rescueestá empaquetado bajo el nombre ddrescuey ddrescuedebajo gddrescue! De los resúmenes del paquete:

  • gddrescue paquete:

    Tenga en cuenta que esta es la versión ddrescue de GNU que proporciona el ejecutable / sbin / ddrescue. Si está buscando la versión ddrescue de Kurt Garloff, consulte el paquete ddrescue.

  • ddrescue paquete:

    Tenga en cuenta que esta es la versión dd_rescue de Kurt Garloff que proporciona el ejecutable / bin / dd_rescue. Si está buscando la versión GNU ddrescue, consulte el paquete gddrescue.

Resumen de nombres:

Program name     Ubuntu package name     Executable name    Name in URL
GNU ddrescue     gddrescue               ddrescue           ddrescue
dd_rescue        ddrescue                dd_rescue          ddrescue
Caracol mecánico
fuente
2
Dos años de retraso pero: ¡muy buena publicación para un problema que todavía afecta a las personas, y no solo en Ubuntu! Pondré mis propios dos centavos, como solo se menciona en la respuesta anterior: una de las ventajas de GNU ddrescue es su función de archivo de registro. No solo le permite reanudar recuperaciones parciales y volver a intentarlo más tarde, sino que, dado que es legible tanto para humanos como para computadoras, tanto humanos como computadoras pueden usarlo para una recuperación de datos más avanzada más adelante. Tuve que hacer esto recientemente en un disco dañado; ¡Sin el archivo de registro no hubiera sabido por dónde empezar!
andlabs
44
Parece que los Ubuntu recientes (14.04 y posteriores) solo tienen gddrescue, una búsqueda de paquetes de Ubuntu para ddrescue solo muestra gddrescue(& ddrescueview) ahora, Kurt Garloff's ddrescuesolo está en 12.04
Xen2050
2
La razón para "omitir primero los bloques defectuosos" es guardar primero los datos aún intactos antes de intentar recuperarlos. La actividad en el disco puede destruir más bits, especialmente los intentos repetidos de restaurar áreas defectuosas.
Jonas Stein