Aus dem UseNet:

From: Michael Mehlfeld (m.mehlfeld@gmx.de)
Subject: Re: MultisessionCD mit CDBakeOven
View: Complete Thread (12 articles)
Original Format
Newsgroups: de.comp.os.unix.apps.kde
Date: 2002-09-28 09:40:56 PST

[...]

Ich moechte hier nur mal kurz beschreiben wie eine Mulisession CD auch
unter KDE gebrannt werden kann. Ist zwar auf der Kommandozeile und
nicht fuer ein Frontend wie K3B, CDbakeoven usw, funktioniert dafuer
aber. Ich hoffe ja das ich mich ins Topic retten kann, indem die
Kommandozeile ja innerhalb KDE, mit ALT+F2, aufgerufen wird, und
Multisession ist wirklich eine zu gute Sache als das man es nicht
nutzen koennen sollte. ;-)

Ist auch nicht so schwer wie es aussieht und ueber die Shell stolpert
man ja doch andauernd.

Los geht's

KDE starten :-)

ALT+F2
dort dann eingeben Xterm

Da wir fuer cdrecord und mkisofs Rootrechte brauchen folgendes eingeben:

su
<PASSWORT>

und dann weiter mit:

cdrecord -scanbus

Cdrecord 1.11a34 (i686-pc-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
Linux sg driver version: 3.1.22
Using libscg version 'schily-0.6'
scsibus0:
        0,0,0     0) 'TEAC    ' 'CD-W524E        ' '1.0D' Removable CD-ROM
        0,1,0     1) 'TOSHIBA ' 'DVD-ROM SD-M1502' '1012' Removable CD-ROM
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *
honk:/home/oraspe #

So sieht die Ausgabe auf meinem Rechner aus. dev=0,0,0 ist der Brenner
und dev=0,1,0 ist mein DVD Laufwerk. Die Version von cdrecord wird auch
gleich mit ausgegeben. Sie sollte nicht zu alt sein. Die 1.11a34 ist
jetzt Ende September 2002 die aktuellste und die Final Version steht kurz
vor der Veröffentlichung. Bei einer zu alten Version bitte ein update
machen.

Fuer eine Multisession CD bietet es sich an, sich 2 Verzeichnisse auf
auf seiner Festplatte zu erstellen. Bei mir habe ich sie 'brennen' und
'burn' genannt. In das Verzeichnis 'brennen' erstelle ich die Struktur
die meine CD spaeter einmal bekommen soll und in 'burn' landet dann das
zu brennende ISO File. Der Einfachheit halber mache ich dies mit dem
MidnightCommander, kurz mc genannt, aber KDE bringt ja auch genuegend
Dateimanager mit.

Achtung jetzt, der User ist immer noch als Root angemeldet!

In der Konsole nun einfach mc eingeben und damit den mc starten. Ich
setze die Bedienung eines NortonCommander Clones jetzt einfach mal
voraus. ;-)

Aber da man als Root wirklich vorsichtig sein muss, Unix ist ein
scharfes Messer, sollte man am besten ein 2tes Terminal oeffnen und
dort als normaler User arbeiten. Also als Standarduser in seinem Home
Verzeichnis die Verzeichnisse anlegen und die Struktur der neuen
Multisession CD erstellen.

In dem Verzeichnis /home/user/brennen sollten die Daten wie folgt
liegen:

/index.html
/Programme/Tools/cdrecord
/MP3/a-z/

Im Commander/Konqueror wuerde das dann in etwa so aussehen:

/home/user/brennen/index.html
/home/user/brennen/Programme/Tools/cdrecord
/home/user/brennen/MP3/a-z

Alles so anlegen als waere /home/user/brennen das Rootverzeichnis
der neuen CD.

Die Daten fuer die erste Session befindet sich also wie gewuenscht
im Verzeichnis 'brennen' und nun beginnt die Eingabe im Xterm mit
den Rootrechten.

Nun moechte man natuerlich nicht nur im 8+3 Format die Dateien
schreiben, daher gibt es verschiedene Formate um die langen
Dateinamen auf die CD zu bekommen. Joliet fuer das Windows System und
Rock Ridge fuer das Unix/Linux System.

mkisofs -o /home/user/burn/Image.iso -R -T -J /home/user/brennen

erzeugt die Image-Datei /home/user/burn/Image.iso (Option -o) mit den
Dateien aus dem Verzeichnis /home/user/brennen.

Dabei laesst mkisofs alle Dateien weg, deren Name die Zeichen - oder #
enthalten, mit dem Parameter -a werden auch solche Dateien aufgenommen.

Der Parameter -R veranlasst mkisofs auch ein Inhaltsverzeichnis gemaess
der Rock Ridge Erweiterungen anzulegen.

-J fuegt ein Joliet-konformes Inhaltsverzeichnis hinzu.

-T erzeugt in jedem Verzeichnis die Datei 'TRANS.TBL', die die Dateinamen
zu den ursprünglichen langen aufzeichnet. Auf Systemen, die mit der
Rock-Ridge-Erweiterung nicht umgehen koennen, lassen sich sich so die
urspruenglichen Dateinamen rekonstruieren.

Das nun erstellte Image sollte sich unter Linux nun auch mounten lassen.
Damit kann man dann feststellen ob alles so ist wie man es sich fuer die
CD gedacht hat.

Im Rootterminal nur den folgenden Befehl eingeben:

mount -t iso9660 -o loop /home/user/burn/Image.iso /mnt

Mit dem Konqueror oder dem mc kann man sich nun das Resultat von
mkisofs unter /mnt ansehen. Ist das alles so wie es sein soll muss
das Image nur noch ausgehaengt werden. Dazu folgenden Befehl benutzen:

umount /mnt

Da ja bisher alles wunderbar funktioniert, wird nun die CD im
Multisession Format erstellt. Dazu wird folgender Befehl im Terminal
eingegeben:

cdrecord -v -multi -pad -eject speed=10 dev=0,0,0 driveropts=burnproof 
/home/user/burn/Image.iso

speed=10 setze ich weil ich auf einen CDRW-Rohling brennen will. 
Der erste Teil der Multisession Cd ist damit fertiggestellt.

Nun wieder unter /home/user/brennen die Dateien ablegen die als 2te
Session auf die CD sollen.

Damit nun eine 2te Session hinzugefuegt werden kann muss erst ein Wert
fuer mkisofs ermittelt werden, damit dieses weiss, ab welchem Sector
wieder auf die Cd geschrieben werden kann. Diesen Wert durch folgende
Eingabe ausgegeben lassen:

cdrecord -msinfo dev=0,0,0

dafuer muss die eben gebrannte CD noch im Brenner liegen.

Die Ausgabe sollten nun 2 Zahlenwerte sein 0,118073 in meinem Testfall.
Diese beiden Zahlen werden nun an den Aufruf fuer mkisofs uebergeben,
mit dem das Filesystem fuer die 2te Session erstellt wird:

Dabei sollte die CD mit der ersten Session im Brenner liegen. Da ich
kein SCSI System habe und mit der Emulation fuer IDE arbeite uebergebe
ich den Mountpunkt des Brenners mit /dev/sr0 anstatt der gewohnten
dev=0,0,0. Dies laesst sich aber mit der Ausgabe von dmesg in der
Konsole herausfinden. Im User Xterm dmesg eingeben und in der Ausgabe
nach folgendem Eintrag suchen:

-----------------------------------------------------------------------
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
  Vendor: TEAC      Model: CD-W524E          Rev: 1.0D
  Type:   CD-ROM                             ANSI SCSI revision: 02
  Vendor: TOSHIBA   Model: DVD-ROM SD-M1502  Rev: 1012
  Type:   CD-ROM                             ANSI SCSI revision: 02
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
Attached scsi CD-ROM sr1 at scsi0, channel 0, id 1, lun 0
sr0: scsi3-mmc drive: 40x/40x writer cd/rw xa/form2 cdda tray
Uniform CD-ROM driver Revision: 3.12
sr1: scsi3-mmc drive: 48x/48x cd/rw xa/form2 cdda tray
-----------------------------------------------------------------------

Die Ausgabe sollte auch auf dem Desktop von KDE zu finden sein. Icon
des Brenners mit rechts anklicken ->Eigenschaften->Geraet.

Nun folgendes in der Rootkonsole eintippen:

mkisofs -r -J -R -d -l -L -o /home/user/burn/Image.iso -C 0,118073 -M 
/dev/sr0 /home/user/brennen

(nach -M /dev/sr0 und alles in einer Zeile)


Damit ist die 2te Session erstellt und kann nun mit der folgenden
Eingabe gebrannt werden:

cdrecord -v -multi -pad -eject speed=10 dev=0,0,0 driveropts=burnproof 
/home/user/burn/Image.iso

Da der Parameter -multi noch uebergeben wird, wird eine weitere Session
an die nun bestehenden 2 angehaengt. Die Vorgehensweise ist jetzt fuer
jede neue Session, die der CD hinzugefuegt werden soll, identisch.

Wenn die CD abgeschlossen werden soll, also keine weitere Session
hinzukommt, einfach im Aufruf fuer cdrecord den Schalter -multi
weglassen! Die CD wird dann abgeschlossen. Dies kann auch mit dem
Aufruf cdrecord -fix dev=0,0,0 geschehen!

Viel Erfolg beim ausprobieren.

Grüße,
Michael


Siehe auch Originales Posting, CdBrennen/PerKommandozeile.

CdBrennen/PerKommandozeile/HowTo (zuletzt geändert am 2007-12-23 22:48:23 durch localhost)