Hier erkläre ich kurz die wichtigsten Parameter für die Programme mkisofs, cdrecord und cdrdao.
mkisofs und cdrecord benutze ich um Daten-CDs zu brennen, cdrdao um Kopien und Audio-CDs zu erstellen.
Ich benutze SCSI-Geräte, brennen geht aber auch mit normalen IDE-Geräten über SCSI-Emulation!
Mein Brenner befindet sich bei den Beispielen an der SCSI-Adresse 0,2,0 , ein CD-ROM an 0,1,0 .


mkisofs [options] /pfad1 /pfad2

-V Titel CD-Titel. Empfohlen.
-J benutze Joliet-Erweiterung. Für Windows. Empfohlen.
-L erlaube .filename . Evtl. Probleme unter reinem DOS. Sonst empfohlen.
-r Benutze Rock Ridge Protocol weise, indem Dateiattribute generell lesbar gesetzt werden. Empfohlen.
-x '*.y' -x Ausdruck Lasse alle Dateien mit .y am Ende und alle mit "Ausdruck" im Namen aus.
-o Imagedateiname Name der anzulegenden Image-Datei. Weglassen beim piping zu cdrecord!
-v Informiert über den Programmablauf.
-R Benutze Rock Ridge Protocol. Für Unices. (siehe: -r)
-print-size Gibt Dateigröße aus und beendet mkisofs.
Braucht man für Disc-At-Once Modus und manche Brenner für das piping zu cdrecord.
Für Multisession:
-check-oldnames Braucht man für die Übernahme langer Dateinamen aus vorigen Sessions.
-C x,y Start-Sektor letzte Session, Start-Sektor nächste Session
-M Benutzen! Hole Info mit "cdrecord -msinfo". Zwingend bei Multisession.
-M Pfad Pfad oder ID,BUS,LUN zu bestehender Image-Datei an welche die neue angehangen wird.


Um Image-Dateien zu testen (als root): mount Imagedateiname /mountpoint -o loop

Für weitere Sessions vorher cdrecord -msinfo und diese Daten in mkisofs -C x,y -M 0,2,0

Beispiel:

Schreibe alles von /Quellpfad in eine Imagedatei:
mkisofs -V CDName -J -L -r -o Imagedateiname /Quellpfad

Schreibe weitere Session: (x,y sind die Zahlen von cdrecord -msinfo)
mkisofs -check-oldnames -V CDName -J -L -r -o Imagedateiname -C x,y -M 0,2,0 /Quellpfad


cdrecord [options] Imagedateiname

Lege zuerst die Datei /etc/default/cdrecord an ! Mit z.B.:
CDR_SPEED=8
CDR_FIFOSIZE=16m
CDR_DEVICE=0,2,0

8fache Brenngeschwindigkeit, 16MB Pufferspeicher im RAM, sowie BUS,ID,LUN des Brenners
Dann spart man sich die Kommandozeilenparameter speed, fs und dev.

-v Informiert über den Brennvorgang. Empfohlen.
-dummy Simuliere nur Brennvorgang. Empfohlen für erstmalige Anwender.
-dao Benutze Disc-At-Once Modus. Wird nicht von allen Brennern unterstützt.
-multi Erlaube weitere Sessions auf CD. Zwingend bei Multisessions.
-msinfo Gib Auskunft über vorhandene Sessions auf der CD. Nützlich für mkisofs und Multisession.
-fix Schliesst die CD ab. Funktioniert derzeit nicht mit TEAC-Brennern.
-nofix Benutzt man um Audio-CDs in Schritten zu brennen.
CD ist dann nur im Brenner und in sehr wenigen CD-Playern lesbar.
-eject Wirf CD nach Brennvorgang aus. Zwingend für Philips-Brenner.
-reset Versucht SCSI Bus des Brenners zu resetten. Nützlich bei Problemen.
defpregap=x Für TEAC-Brenner im Track-At-Once Modus um Pausen vor den Tracks zu bestimmen.
-audio Schreibe Audio-Tracks. Nicht nötig bei .wav und .au Dateien.
-data Schreibe Daten-Tracks. Zwingend um .wav und .au Dateien auf Daten-CD zu brennen.
-tsize=x Für die Ausgabe von "mkisofs -print-size"
-inq nur zur Info, ausprobieren!
-prcap nur zur Info, ausprobieren!

Beispiele:

Brenne Imagedatei auf CD:
cdrecord -v -multi -data -eject Imagedateiname

Brenne alles von /Quellpfad on-the-fly auf eine CD und erlaube weitere Sessions:
mkisofs -V CDName -J -L -r /Quellpfad | cdrecord -v -multi -data -eject -

Dasselbe simulieren:
mkisofs -V CDName -J -L -r /Quellpfad | cdrecord -v -dummy -multi -data -eject -

Brenne weitere Session on-the-fly: (x,y sind die Zahlen von cdrecord -msinfo)
mkisofs -V CDName -J -L -r -C x,y -M 0,2,0 /Quellpfad | cdrecord -v -multi -data -eject -


cdrdao (nicht nur) für AUDIO-CDs und CD-Kopien:

Lege zuerst index.toc an:

CD_DA
TRACK AUDIO
FILE "01.wav" 0
TRACK AUDIO
FILE "02.wav" 0
.
.
.

Beispiele:

Audio-CD schreiben:
cdrdao write --device 0,2,0 --eject index.toc

Simulation:
cdrdao simulate --device 0,2,0 --eject index.toc

Simulation mit viel Info:
cdrdao simulate --device 0,2,0 --eject -v 2 index.toc

CD-Kopie simulieren:
cdrdao copy --simulate --device 0,2,0 --source-device 0,1,0 --on-the-fly --eject

CD-Kopie:
cdrdao copy --device 0,2,0 --source-device 0,1,0 --on-the-fly --eject

Valid HTML 3.2!