Archiv des Autors: dakira

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.

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.

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:

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.

Torrent-Suche in Ubuntu-Dash integrieren

Torrent Scope
Ob man Unity mag oder nicht. Es ist auf jeden Fall gut erweiterbar und es gibt viele interessante Quellen, die man hinzufügen kann. Eine, welche ich schon länger nutze ist die integrierte Torrent-Suche. Seit der Umstellung auf Smartscopes war diese zunächst nicht verfügbar. Nun wird sie laut Entwickler sogar standard im nächsten Ubuntu release. Nutzbar ist sie auch schon jetzt (ab 13.10).

sudo add-apt-repository ppa:scopes-packagers/ppa
sudo apt-get update
sudo apt-get install unity-scope-piratebay

Nachdem man sich neu eingelogt hat, kann man im Dash nun nach Torrents suchen, in dem man der Suche torrent: voranstellt. Ich habe allerdings gern einen seperaten Bereich im Dash für solche Suchen. Momentan muss man das noch von hand per dconf-editor oder gsettings konfigurieren, z.B. so:

gsettings set com.canonical.Unity.Dash scopes "['home.scope', 'applications.scope', 'files.scope', 'video.scope', 'music.scope', 'photos.scope', 'social.scope', 'piratebay.scope']"

Die reine Torrent-Suche kann man nun auch mit Super+x aufrufen.

Die Ergebnisse enthalten nur lizenzrechtlich unbedenkliche Inhalte (opensource, public domain, creative commons, abandonware). Wenn man diese Einschränkung nicht wünscht, lässt sie sich auch leicht aufheben:

sudo sed -i.bak "/LICENSE_STRING = /s/'[^']\+'/''/" /usr/share/unity-scopes/piratebay/unity_piratebay_daemon.py

Drückt man auf den Ergebnissen ENTER öffnet sich direkt der entsprechende Magnet-Link im default Torrent client (bspw. Transmission oder Deluge).

Viel Spass!