ubuntuusers.de

wodim

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png wodim 🇬🇧 ist ein Kommandozeilenprogramm, das sich zum Brennen aller Arten von Audio- und Daten-CDs und bedingt auch für DVDs eignet. Es ist Bestandteil von cdrkit, das außerdem noch die Programme genisoimage und icedax enthält.

Cdrkit wiederum ist eine Abspaltung der bis 2007 in Ubuntu enthaltenen cdrtools, das die Programme cdrecord, mkisofs und cdda2wav zur Verfügung stellt. Um die Kompatibilität mit anderen Programmen sicher zu stellen, existieren unter Ubuntu Verknüpfungen auf die ursprünglichen Programme:

Ursache für die Abspaltung war ein Streit über die Lizenzierung des Quellcodes von cdrecord. Leider ist dieser Streit bis in die Gegenwart ungelöst. Ohne einer der beteiligten Parteien Recht geben zu wollen, bleiben folgende Fakten übrig:

  1. wodim ist in den offiziellen Paketquellen enthalten, ist technisch gesehen aber veraltet

  2. cdrecord wird noch aktiv gepflegt und weiterentwickelt

Weder wodim noch cdrecord sind bei DVD und BD erste Wahl. growisofs und libburn-basierte Programme bieten mehr Möglichkeiten im Bezug auf Formatierung und Multi-Session. Das libburn Program cdrskin versteht viele der Optionen von wodim und kann es in den Anwendungsfällen CD-DA (Audio) und CD-ROM (Daten) ersetzen.

Installation

wodim war bis einschließlich Ubuntu 15.10 in der Standardinstallation von Ubuntu bereits enthalten. Ab 16.04 muss folgendes Paket installiert werden:

  • wodim (universe)

Paketliste zum Kopieren:

sudo apt-get install wodim 

Oder mit apturl die Pakete installieren. Link: apt://wodim

Nutzung

Um wodim zu nutzen, öffnet man ein Terminal [2] und ruft das Programm mit den entsprechenden Optionen und Parametern auf. Die allgemeine Syntax von wodim lautet:

wodim OPTIONEN [dev=deviceX] TRACK-OPTIONEN DATEI(EN) 

deviceX ist der CD/DVD-Brenner wie z.B. /dev/sr0 oder /dev/cdrw (Linux-Geräte-Notation) - eine Liste von gültigen Werten bekommt man auf älteren Systemen mit wodim --devices. Leider benötigt das die Existenz von Gerätedateien /dev/scdN, die aus der Mode gekommen sind. Wenn man nicht wodim durch cdrskin ersetzt, bleibt nur klassische Shell:

ls -l /dev/sr* 

Für CD-DA (Audio) müssen die Dateien als unkomprimiertes 44100 Hz Stereo im .wav-Format oder im .au-Format vorliegen. Jede Datei wird dann zu einem Musikstück (engl. Track).

Für CD-ROM (Daten) wird man normalerweise eine einzelne Datei übergeben, die das Speicherabbild eines Filesystems enthält (oft ISO 9660 oder UDF). Das selbe gilt für DVD und BD Medien.

Hinweis:

wodim benötigt rw-Rechte an der Gerätedatei. Oft hat der Desktopuser diese Rechte durch einen ACL-Eintrag (ablesbar mit zB. getfacl /dev/sr0). Wenn man sich die Rechte nicht erteilen kann oder will, kann man wodim mit Root-Rechten laufen lassen, falls das erlaubt ist.

Allgemeine Optionen

wodim kennt eine sehr große Anzahl von Optionen, von denen im folgenden nur einige (grundlegende) vorgestellt werden. Zu beachten ist, dass nicht allen Optionen ein "-" vorangestellt wird!

Wenn man DVD oder BD Medien brennen will, sollte man wirklich nicht wodim, sondern zB. das Programm cdrskin verwenden. Optionen, die cdrskin nicht kennt, sind hier mit "(Nicht cdrskin.)" gekennzeichnet. Die Aussagen zu DVD und BD betreffen die Fähigkeiten von cdrskin, nicht die von wodim.

Die Optionen
OptionBeschreibung
-checkdriveüberprüft den CD / DVD Brenner und gibt dessen Möglichkeiten aus - siehe Laufwerksinformationen.
-vAusführliche Ausgabe während des Schreibvorgangs, z.B. über den Fortschritt des Brennens.
-dummySimulation - Führt den kompletten Befehl aus, allerdings wird der Laser des Brenners nicht aktiviert. (Geht nur mit CD, DVD-R, unformatierten DVD-RW Medien.)
speed=XSetzt die Schreibgeschwindigkeit für CD auf X * 150 KiB/s. Je nach Mediumtyp wird diese Geschwindigkeit erst am Ende des Brennlaufs erreicht. Der Brenner setzt je nach Medium auch Ober- und Untergrenzen. Geschwindigkeitsfaktor für DVD: 1x = 1.385.000 bytes/sekunde, für BD: 1x = 4.495.625 bytes/sekunde.
-multiHält eine CD, DVD-R, DVD+R, unformatierte DVD-RW, oder BD-R offen für weitere Brennläufe (engl. Multisession). Fehlt -multi dann kann auf diesen Medientypen nach dem Brennen nicht nochmal gebrannt werden. (CD-RW und DVD-RW können aber ganz gelöscht und dann wiederverwendet werden.)
-formatFormatiert eine DVD+RW. Mit cdrskin verwendet man besser blank=format_if_needed, weil das weiß was Medien brauchen, oder blank=format_overwrite, um DVD-RW ähnlich wie DVD+RW zu machen.
driveropts=burnfreeVerhindert, dass der Schreibpuffer leer läuft (auch bekannt als z.B. Burnproof).
fs=16mRichtet einen Ringpuffer von 16 MiB ein, um kurze Pausen beim Lesen der Dateiinhalte überbrücken zu können. Bei 20x CD reichen 16 MiB für etwa 5 Sekunden, bei 4x DVD für 3, bei 4x BD für knapp eine Sekunde. Mit hohen DVD und BD Geschwindigkeiten sollte man also eher fs=64m verwenden.
-versionGibt die Versionsnummer des Programmes aus.
-daoSchaltet in den Session-At-once-Modus, oft auch Disk-At-Once genannt. Das geht bei CD nur im ersten Brennlauf einer -multi Serie von Läufen. Bei DVD und BD passt es garnicht zu -multi.
-loadZieht das Medium ein und beendet das Programm.
-lockZieht das Medium ein, blockiert den manuellen Schalter für den Auswurf und beendet das Programm. Program eject oder wodim Option -eject können danach immer noch auswerfen.
-ejectWirft das Medium nach abgeschlossener Arbeit aus.

Track-Optionen

Die Track-Optionen
Track-OptionBeschreibung
-data Es wird eine CD so gebrannt, dass das Ergebnis als CD-ROM lesbar ist. Die Eingabedatei für wodim ist dann fast immer ein Filesystemabbild (zB. ISO 9660 von genisoimage oder xorriso) oder ein Datenarchiv (zB. von tar). Der Modus -data ist standardmäßig eingeschaltet.
-audio Es wird eine "normale" Audio-CD gebrannt, die als CD-DA von den Geräten der Unterhaltungsindustrie abgespielt werden kann. Am Computer braucht man zum Abspielen Programme wie mplayer. Wichtig: Diese Option ist nicht für DVD oder BD Medien geeignet.
padsize=300kSchreibt nach dem Ende der folgenden Eingabedatei eine Lücke von 300 KiB. Das ist eine traditionelle Vorkehrung gegen einen traditionellen Bug im Linux Kernel, der nur CDs betrifft, die nicht mit Option -dao gebrannt wurden. (linux-scsi könnte ihn auch mal reparieren, wenn man denn wollte. Im Moment müssen wir ihm viele Nullen als Opfer geben.)

Weitere Dokumentation

Eine komplette Übersicht aller Optionen erhält man in den Manpage von wodim oder cdrskin.

Beispiele

Die Beispiele verwenden /dev/sr0 als Namen der Gerätedatei. Das passt immer, wenn man nur ein Laufwerk angeschlossen hat, weil sr0 das erste optische Laufwerk ist, das der Kernel erkannt hat. /dev/sr1 ist dann das nächste, und so weiter.

Alle Beispiele bis auf das mit -prcap funktionieren auch mit dem Programm cdrskin. Multi-Session geht dabei mit CD-R, CD-RW, DVD-R, DVD+R, BD-R, unformatierten DVD-RW. Für DVD+RW, DVD-RAM, BD-RE, formatierte DVD-RW muss man bei den cdrskin Läufen zu -multi die Option --grow_overwriteable_iso dazugeben.

  • Im ersten Beispiel wird ein ISO 9660 Filesystemabbbild ("Image") mit sehr geringer Geschwindigkeit auf die CD in /dev/sr0 gebrannt:

    wodim -v speed=2 fs=4m padsize=300k dev=/dev/sr0 image.iso 
  • Im zweiten Beispiel wird eine Multisession-CD angefangen. Der dabei unbenutzt gebliebene Platz kann später in einem weiteren Lauf ("Session") von wodim zum Schreiben benutzt werden.

    wodim -v -multi fs=16m padsize=300k dev=/dev/sr0 image.iso 
  • Später kann eine weitere Session an die CD angehängt werden. Weil die jeweils jüngste vorhandene Session einer CD vom Linux Kernel als Einstiegspunkt für das Filesystem auf der ganzen CD benutzt wird, muss das ISO 9660 Programm den Inhalt des nächsten ISO-Image passend zu ihrem Vorgänger gestalten. Nehmen wir an, wir wollten die Dateien zur CD hinzufügen, die auf der Festplatte im Verzeichnis "$HOME"/fotos_fuer_cd bereitliegen. Auf der CD sollen sie im Verzeichnis /fotos gespeichert sein. Dann müssen wir zuerst mit der wodim Option -msinfo feststellen, wo der Linux Kernel ansetzen würde und wo der Brenner die nächste Session beginnen würde. Dann lassen wir genisoimage den Verzeichnisbaum der vorherigen Session lesen, nach unseren Wünschen ändern, und zusammen mit den neu hinzugekommenen Dateiinhalten als image2.iso speichern. Dieses Abbild lassen wir wodim dann auf die CD brennen.

    ms_info=$(wodim dev=/dev/sr0 -msinfo)
    genisoimage -M /dev/sr0 -C $"ms_info" -o image2.iso -graft-points -r -J /fotos="$HOME"/fotos_fuer_cd
    wodim -v -multi fs=16m padsize=300k dev=/dev/sr0 image2.iso 

    Wenn man die Option -multi weglässt, kann später keine weitere Session mehr angehängt werden. (Deutlich einfacher geht Multisession mit growisofs oder xorriso, die automatisch zwischen ISO Produktion und Brennen koordinieren.)

  • Im diesem Beispiel werden alle Audiodateien (.wav) aus dem Verzeichnis /musik als Audio-CD gebrannt:

    wodim -v dev=/dev/sr0 -audio fs=8m /musik/*.wav 

    Weil Musik selten als .wav vorliegt, muss man sich diese Dateien meist mit Programmen wie ffmpeg aus anderen Formaten konvertieren.

  • Dieses Beispiel gibt einige Informationen über die Fähigkeiten des Brenners mit CD und den ältesten DVD Typen.

    wodim -prcap 

    (Nicht cdrskin.)

  • Im letzten Beispiel wird eine CD-RW oder eine unformatierte DVD-RW zur Wiederverwendung gelöscht:

    sudo umount /dev/sr0
    wodim -v dev=/dev/sr0 blank=all 

cdrskin

cdrskin ist nicht in der Standardinstallation von Ubuntu enthalten. Man muss es ausdrücklich installieren:

  • cdrskin (universe)

Paketliste zum Kopieren:

sudo apt-get install cdrskin 

Oder mit apturl die Pakete installieren. Link: apt://cdrskin

Zur Dokumentation der Optionen dienen diese Befehle:

man cdrskin                   # ruft die Manpage auf
cdrskin -help 2>&1 | less     # führt kurz alle wodim-kompatiblen Optionen auf
cdrskin --help 2>&1 | less    # führt kurz alle nicht-wodim Optionen auf 

Graphische Benutzeroberflächen

Durch die große Vielzahl an Optionen und Parametern kann die Nutzung von wodim auf der Kommandozeile relativ komplex sein, wenn man alle Möglichkeiten des Programms nutzen möchte. Es gibt jedoch eine Reihe von Brennprogrammen mit grafischer Benutzeroberfläche, welche im Artikel Brennprogramme aufgeführt sind. Viele dieser Programme sind letztendlich "nichts anderes" als Frontends, die einen begrenzten Teil der Funktionen von wodim in Form einer graphischen Oberfläche zur Verfügung stellen.

Diese Revision wurde am 1. Mai 2019 21:47 von BillMaier erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Brennprogramm, Shell