Sie sind auf Seite 1von 3

d

YuMDaP.net Blog
opensource, linux, punk rock and games
Springe zum Inhalt
Zerkratzte DVDs mit ddrescue retten

Das Kommandozeilen-Tool dd ist vielen bekannt. Mit dd kann man Rohdaten von einem
Blockdevice (Laufwerk oder Datei) auf ein anderes Blockdevice schreiben. Das ist
praktisch, wenn man mal schnell die Partitionstabelle der Festplatte sichern will
(dd if=/dev/sda of=mbr.img bs=512 count=1) oder z.B. einen bootbaren USB-Stick aus
einem Ubuntu-Image erstellen will (dd if=ubuntu.iso of=/dev/sdb bs=4M). Leider
versagt dd bei nicht lesbaren Daten und bricht einfach ab. Es eignet sich also
nicht, um ein ISO-Abbild einer CD oder DVD zu erstellen, falls diese verkratzt ist.

An dieser Stelle hilft ddrescue. Es gibt verwirrenderweise zwei Programme mit


diesem Namen (das andere ist dd_rescue). Ich spreche hier über GNU ddrescue,
welches in Debians im Paket gddrescue zu finden ist. Ddrescue erlaubt im Gegensatz
zu dd bei kaputten Blöcken mehrere Leseversuche.

Im ersten Schritt wird erst mal alles, was ohne Probleme lesbar ist in eine ISO-
Datei geschrieben. Probleme werden in einer Log-Datei mitgeschrieben.
1

ddrescue -b 2048 -n -v /dev/sr0 dvd.iso rescue.log

Die angegebene Blockgröße (2048) ist die Standard-Blockgröße bei DVDs. Das
angegebene Device ist das DVD-Laufwerk und kann auch anders heissen. Bei
eingelegter DVD kann man durch einfache Eingabe von mount nachschauen, wie es lokal
heisst.

Bei angezeigten Fehlern, startet man einen zweiten Versuch, der sich auf die
kaputten Blöcke konzentriert.
1

ddrescue -b 2048 -d -r 3 -v /dev/sr0 dvd.iso rescue.log

Der Parameter -d sorgt für Direktzugriff auf das Gerät (kein kernel caching) und -r
3 gibt die Anzahl der Leseversuche bei kaputten Blöcken an. Kommt es weiterhin zu
Fehlern, kann man noch mal das folgende probieren:
1

ddrescue -b 2048 -d -R -r 3 -v /dev/sr0 dvd.iso rescue.log

Der Parameter -R kehrt die Leserichtung um, was bei meinen Versuchen häufig noch
ein paar Sektoren mehr gebracht hat.

Verbleibende Lesefehler sind bei einer Video-DVD nicht wirklich schlimm, da DVDs in
ihren Rohdaten schon ziemlich viel Fehlerkorrekturdaten enthalten (CDs im Übrigen
auch). Im schlechtesten Fall hat man also kleine Bildartefakte an den
problematischen Stellen.

Die resultierende ISO-Datei kann man einfach mit einem Brenn-Programm seiner Wahl
auf eine neue DVD brennen, oder mit einem Videoplayer wie VLC direkt abspielen.
7 Antworten
Dieser Beitrag wurde am 10. März 2014 in Linux, Tools veröffentlicht. Schlagworte:
linux, oss, tools.
Beitrags-Navigation
← Torrent-Suche in Ubuntu-Dash integrieren Ubuntu 14.04 installieren und
konfigurieren →
7 Gedanken zu „Zerkratzte DVDs mit ddrescue retten“

Bachsau
13. Dezember 2017 um 18:07

Ich hatte erwartet, dass es irgendwann mit „pct rescued: 100%“ endet. Leider
behauptet ddrescue bereits bei 98.40% unbeirrbar fertig „finished“ zu sein.
Antworten ↓
dakira Beitragsautor
14. Dezember 2017 um 13:14

Ich bin mir relativ sicher, dass das trotzdem ausreicht. Kann mir
vorstellen, dass ddrescue da für die Berechnungen der Prozente am Anfang falsche
Werte angenommen hat und du daher nicht bei 100 landest. Funktioniert denn das
Ergebnis?
Antworten ↓
Bachsau
14. Dezember 2017 um 17:42

Hat sich geklärt. Ich hatte es zunächst Rückwärts aber ohne -r versucht
und mich dann gewundert, warum es sofort fertig ist. Aber scheinbar ist es so, dass
auch fehlerhafte Sektoren, die schon versucht wurden, im Mapfile markiert werden
und ddrescue diese auch bei einem erneuten Aufruf nicht mehr zu lesen versucht,
sofern -r nicht angegeben wird. Nach einigen Retries konnte ich nun fast die
komplette CD wiederherstellen.
Antworten ↓
dakira Beitragsautor
15. Dezember 2017 um 14:51

Cool, freut mich. Bei Audio-CDs sind tatsächlich sogar noch ne


ganze Ecke mehr Fehlerkorrekturdaten mit dabei, so dass man beim Retten i.d.R.
selbst bei total verkratzten CDs gute Resultate hat.
Antworten ↓
Daniel
22. April 2018 um 10:13

„Bei angezeigten Fehlern“ => Wie sehen die denn aus? Kann ich nicht auch den
exit code von ddrescue abfragen? Ich will die drei Schritte automatisieren.
Antworten ↓
dakira Beitragsautor
26. April 2018 um 17:07

Kann ich dir leider nicht mehr sagen. Das letzte mal, dass ich eine DVD in
der Hand hatte ist ungefähr so lange her, wie dieser Artikel. ;) Im Zweifel würde
ich es ein mal testen, du siehst dann ja was kommt. Ansonsten ist ddrescue ja
gerade darauf ausgelegt bei Fehlern nicht mit einem errorcode abzubrechen, sondern
weiterzulesen.
Antworten ↓
dakira Beitragsautor
26. April 2018 um 17:09

Nachdem ich mir meinen Artikel noch mal durchgelesen habe: Es spricht
nichts dagegen die drei oben genannten Befehle hintereinander auszuführen.
Antworten ↓

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit *


markiert.
Kommentar

Name *

E-Mail *

Website

Benachrichtige mich über nachfolgende Kommentare via E-Mail.

Benachrichtige mich über neue Beiträge via E-Mail.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie
deine Kommentardaten verarbeitet werden.
Suche nach:
Schlagwörter

apple fritzbox git gitea gnome laravel linux oss php plesk seafile sublime
tools ubuntu

Neueste Beiträge

Hacktober!
Windows Spiele direkt per Steam Play unter Linux
Dovecot master user erstellen
Gogs beerdigen
WordPress Sicherheit

Open-Source-Blog-Netzwerk

OSBNDieses Blog ist Mitglied im Open-Source-Blog-Netzwerk. Schau vorbei, wenn dich


Open-Source interessiert, oder mache mit, wenn du selbst Blogger bist. Dies sind
die zuletzt erschienenen Artikel:

Kernel <= 5.5.9 mit USB Bug von marius.bloggt-in-braunschweig.de


NordVPN 3.7.0 Linux Client – Upgrade bringt zwei neue Funktionen von
bitblokes.de
Debian 11 »Bullseye« wird vorbereitet von linuxnews.de
Mozilla veröffentlicht Firefox Klar 8.1.0 für Android von soeren-hentzschel.at
Clonezilla über PXE booten von canox.net
StressTest: Lasttest und Mini-Benchmark für Android von onli-blogging.de
My Free Software Activities in February 2020 von gambaru.de
Einfaches Monitoring des Stromverbrauchs über Grafana von oprtr.org
Schnelleres Navigieren auf Github mit Octotree von got-tty.org
tmux: Eingaben an alle Panes senden von blog.v-gar.de