GNU ddrescue ist ein Werkzeug für die Datenrettung. Es kopiert Daten von einer Datei oder einem Block-Gerät (Festplatte, CD usw.) zu einem anderen. Dabei versucht es, im Falle von Lesefehlern alle Daten zu retten. GNU ddrescue schneidet die Ausgabedatei nicht ab, außer wenn der Anwender es will. Daher versucht es jedesmal, wenn man es mit derselben Ausgabedatei aufruft, die Lücken zu füllen. Die grundlegende Arbeitsweise von GNU ddrescue ist vollautomatisch. Man muss also nicht auf einen Fehler warten, das Programm stoppen, das Log lesen, es in einem anderen Modus laufen lassen usw. Falls man das Logdatei-Feature von GNU ddrescue verwendet, werden die Daten sehr effizient gerettet (nur die benötigten Blöcke werden gelesen). Man kann die Rettung auch jederzeit unterbrechen und sie später am gleichen Punkt wieder aufnehmen. (non)