ubuntuusers.de

cdrecord

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

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

./cd.gif cdrecord 🇬🇧 ist ein Kommandozeilenprogramm, welches sich zum Brennen von allen Arten von Audio- und Daten-CDs eignet. cdrecord ist Bestandteil der cdrtools, die außer cdrecord noch die Programme mkisofs und cdda2wav enthalten. Das Programm wird im Gegensatz zu wodim aktiv weiterentwickelt und gepflegt. Außerdem kann cdrecord DVD und Blu-ray (BD) brennen, wobei es aber nicht alle Moeglichkeiten von growisofs, cdrskin oder xorriso bietet.

Hinweis:

Unter Ubuntu verweist der Aufruf von cdrecord automatisch auf wodim. Um explizit cdrecord nutzen zu können, muss dieses aus einem PPA installiert werden.

Installation

Die Anwendung ist seit Ubuntu 7.10 nicht mehr in den offiziellen Paketquellen enthalten.

PPA

Aktuelle Versionen gibt es über das "Personal Package Archiv" (PPA) [1] von Brandon Snider.

Adresszeile zum Hinzufügen des PPAs:

  • ppa:brandonsnider/cdrtools

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung des Eigentümers/Teams brandonsnider zu entnehmen.

Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.

Nach dem Aktualisieren der Paketquellen können die folgenden Pakete installiert [2] werden:

  • cdrecord (ppa)

  • mkisofs (ppa)

Paketliste zum Kopieren:

sudo apt-get install cdrecord mkisofs 

Oder mit apturl die Pakete installieren. Link: apt://cdrecord,mkisofs

Konfiguration

Die allgemeine Syntax von cdrecord lautet:

sudo cdrecord <allg. Optionen> [dev=deviceX] <Track-Optionen> Datei(en) 

deviceX ist der Brenner wie z.B. /dev/sr0 oder /dev/cdrw (Linux-Geräte-Notation) oder 0,1,0 oder 1,0,0 (SCSI-Notation). Siehe auch Datenträger (Abschnitt „Optische-Laufwerke“) und Laufwerksinformationen.

Allgemeine Optionen

cdrecord 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!

Optionen
OptionBeschreibung
-checkdrive überprüft den CD / DVD Brenner und gibt dessen Möglichkeiten aus - siehe Laufwerksinformationen
-v Ausführliche Ausgabe während des Schreibvorgangs, z.B. über den Fortschritt des Brennens
-dummy Simulation - 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=X Setzt 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.
-multi Startet eine Multisession-CD/DVD. Diese Option muss bei Multisession-CDs/DVDs bei jeder Session außer der letzten gesetzt sein.
-format Formatiert eine CD-RW bzw. wiederbeschreibbare DVD. Funktioniert bei DVDs zur Zeit nur mit DVD+RW
driveropts=burnfree Verhindert, 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.
-atip Informationen zum Hersteller und zu sonstigen Parametern des Mediums erfragen
-dao Schaltet 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.
-load Zieht das Medium ein und beendet das Programm
-lock Zieht das Medium ein, blockiert den manuellen Schalter für den Auswurf und beendet das Programm. Program eject oder cdrecord Option -eject können danach immer noch auswerfen.
-eject Wirft das Medium nach abgeschlossener Arbeit aus
-msinfo Multi-Session-Informationen zum aktuellen Medium erfragen
-minfo Aktuellen Status des Mediums erfragen. Wichtig, wenn es Probleme gibt, die man nicht erklären kann.
-version Gibt die Versionsnummer des Programms aus

Track-Optionen

Track-Optionen
Track-OptionBeschreibung
-data Es wird eine CD so gebrannt, dass das Ergebnis als CD-ROM lesbar ist. Die Eingabedatei für cdrecord ist dann fast immer ein Filesystemabbild (zB. ISO 9660 von mkisofs 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.)

Eine komplette Übersicht aller Optionen erhält man in der Manpage zu cdrecord oder in der Dokumentation.

Nutzung

Laufwerksinformationen

Alle CD-/DVD-/Blu-ray-Brenner werden über das SCSI-Protokoll bedient. Die von cdrecord zum Transport von SCSI-Kommandos zum Brenner verwendete Bibliothek libscg verwendet bewusst eine Syntax, die mit allen Betriebssystemen kompatibel ist, um portable Skripte und GUIs implementieren zu können. Bei Rechnern, in denen nur ein Gerät vom SCSI-Basistyp "CD-ROM" verbaut ist, kann die Option dev=x,y,z mit aktuellen cdrecord-Versionen (seit Mitte 2006) entfallen. Beispiel:

cdrecord -scanbus 
Cdrecord-ProDVD-ProBD-Clone 2.01.01a57 (i686-pc-linux-gnu) Copyright (C) 1995-2009 Jörg Schilling
Linux sg driver version: 3.5.34
Using libscg version 'schily-0.9'.
scsibus1:
	1,0,0	100) 'SAMSUNG ' 'CD-ROM SC-152L  ' 'C100' Removable CD-ROM
	1,1,0	101) 'HL-DT-ST' 'DVD-RAM GSA-H22N' '1.00' Removable CD-ROM
	1,2,0	102) *
	1,3,0	103) *
	1,4,0	104) *
	1,5,0	105) *
	1,6,0	106) *
	1,7,0	107) *

Da in diesem Beispiel zwei Laufwerke vorhanden sind, muss der nächste Befehl explizit um die Angabe von dev=x,y,z (SCSI-Adresse des Geräts) ergänzt werden (bei nur einem Laufwerk ist dies nicht notwendig):

cdrecord -checkdrive dev=1,1,0 
Cdrecord-ProDVD-ProBD-Clone 2.01.01a57 (i686-pc-linux-gnu) Copyright (C) 1995-2009 Jörg Schilling
scsidev: '1,1,0'
scsibus: 1 target: 1 lun: 0
Linux sg driver version: 3.5.34
Using libscg version 'schily-0.9'.
Device type    : Removable CD-ROM
Version        : 5
Response Format: 2
Capabilities   : 
Vendor_info    : 'HL-DT-ST'
Identifikation : 'DVD-RAM GSA-H22N'
Revision       : '1.00'
Device seems to be: Generic mmc2 DVD-R/DVD-RW/DVD-RAM.
Using generic SCSI-3/mmc   CD-R/CD-RW driver (mmc_cdr).
Driver flags   : MMC-3 SWABAUDIO BURNFREE 
Supported modes: TAO PACKET SAO SAO/R96P SAO/R96R RAW/R16 RAW/R96P RAW/R96R LAYER_JUMP
cdrecord: Warning: The DMA speed test has been skipped.

Beispiele

Um cdrecord zu nutzen, öffnet man ein Terminal [3] und ruft das Programm mit den entsprechenden Optionen und Parametern auf. Die zu brennenden Dateien können im .wav-Format, im .au-Format (beides Audio-Dateien) oder anderen Formaten (Daten-Dateien) vorliegen.

Hinweis:

Solange sich genau ein Brenner im System befindet, kann die Option dev=... weggelassen werden. Darauf nehmen die folgenden Beispiele Bezug.

  • Im ersten Beispiel wird ein ISO-Image mit doppelter Geschwindigkeit gebrannt:

    sudo cdrecord speed=2 image.iso 
  • Im zweiten Beispiel wird eine Multisession-CD angefangen. Der dabei unbenutzt gebliebene Platz kann später in einem weiteren Lauf ("Session") von cdrecord zum Schreiben benutzt werden.

    sudo cdrecord -v -multi fs=16m padsize=300k 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 cdrecord Option -msinfo feststellen, wo der Linux Kernel ansetzen würde und wo der Brenner die nächste Session beginnen würde. Dann lassen wir mkisofs 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 cdrecord dann auf die CD brennen.

    ms_info=$(sudo cdrecord -msinfo)
    mkisofs -M /dev/sr0 -C $"ms_info" -o image2.iso -graft-points -r -J /fotos="$HOME"/fotos_fuer_cd
    sudo cdrecord -v -multi fs=16m padsize=300k 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 vierten Beispiel werden alle Audiodateien (.wav) auf dem Verzeichnis ~/Musik/ im Homeverzeichnis als Audio-CD gebrannt (Falls die Länge des Audiotracks nicht passt, erscheint in der Ausgabe "Bad audio track size", dann hilft der Schalter -pad, welches die Bytes auffüllt):

    sudo cdrecord -audio ~/Musik/*.wav 
  • Im letzten Beispiel wird eine Audio-CD entsprechend der Vorgaben in der Datei audio.cue gebrannt, die alle notwendigen Informationen enthält. Die Felder in dieser Datei werden, sofern vorhanden, auch zu Erstellung der notwendigen Informationen für CD-Text herangezogen:

    sudo cdrecord -audio -pad -useinfo -text -dao --cuefile=audio.cue 

    Inhalt von audio.cue:

    PERFORMER "Ein Interpret"
    TITLE "Ein Albumtitel"
    
    FILE "audio.wav" WAVE
      TRACK 01 AUDIO
        TITLE "Der erste Titel"
        PERFORMER "Ein Interpret"
        INDEX 01 00:00:00
      TRACK 02 AUDIO
        TITLE "Der zweite Titel"
        PREGAP 00:00:00
        PERFORMER "Ein Interpret"
        INDEX 01 01:56:00
      TRACK 03 AUDIO
        TITLE "Der dritte Titel"
        PREGAP 00:00:00
        PERFORMER "Ein Interpret"
        INDEX 01 05:46:40
      TRACK 04 AUDIO
        TITLE "Der vierte Titel"
        PREGAP 00:00:00
        PERFORMER "Ein Interpret"
        INDEX 01 09:51:70

    Die Audiodaten sämtlicher Titel befinden sich anschließend alle in der Datei audio.wav, aus der jetzt gemäß der Vorgaben im obigen Befehl eine Audio-CD erstellt wird. Als Beispiel diente hier eine Live-Aufnahme, deren Titel ohne Lücke ineinander übergehen (PREGAP 00:00:00).

  • Im letzten Beispiel wird eine CD oder DVD komplett gelöscht:

    sudo umount /dev/sr0
    sudo cdrecord dev=/dev/sr0 blank=disk 

Problembehebung

Da unter Ubuntu der Befehl cdrecord auf wodim verweist, wird das "originale" cdrecord bei einem Update des Pakets wodim funktionsuntüchtig. Dann muss man es aus dem PPA neu installieren.

Diese Revision wurde am 9. Juni 2019 20:31 von Atalanttore erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: DVD, CD, Blu-Ray, Brennprogramm