dd - .iso von CD erstellen

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

dd - .iso von CD erstellen

Beitrag von rola621 » 11.06.2021 19:49:59

Hallo!

Ich möchte gerne eine Audio-CD als .iso speichern.
Da ich es mit Xfburn nicht hinbekomme dachte ich mir warum nicht die Kommandozeile..

Die im Netz vielfach empfohlene Syntax habe ich nun getestet:

Code: Alles auswählen

debian@debian:~$ dd if=/dev/sr1 of=IMAGE.iso
dd: Fehler beim Lesen von '/dev/sr1': Eingabe-/Ausgabefehler
0+0 Datensätze ein
0+0 Datensätze aus
0 Bytes kopiert, 0,00128233 s, 0,0 kB/s
Ich habe keine Ahnung wo hier der Fehler liegt :?
Notebook & Desktop: Debian bookworm & Xfce

Benutzeravatar
kalle123
Beiträge: 2693
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: dd - .iso von CD erstellen

Beitrag von kalle123 » 11.06.2021 19:54:39

Google hätte dir z.B. das geliefert

https://forums.linuxmint.com/viewtopic.php?t=285474


Du kennst google??

cu KH

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 11.06.2021 21:41:02

Ja, das habe ich entdeckt bevor ich diesen Thread erstellt habe, jedoch werden da erst nur GUI-Tools empfohlen (K3b wollte ich eigentlich vermeiden), und gegen Ende verstehe ich nur noch Bahnhof. Eine Lösung war da für mich leider nicht ersichtlich, weshalb ich um Hilfe bitte.
Notebook & Desktop: Debian bookworm & Xfce

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: dd - .iso von CD erstellen

Beitrag von eggy » 11.06.2021 21:51:42

Dir kann man es auch nicht Recht machen, oder? In dem anderen Thread sollen es GUI Sachen sein, hier wieder nicht .... das versteh mal wer :mrgreen:

Benutzeravatar
kalle123
Beiträge: 2693
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: dd - .iso von CD erstellen

Beitrag von kalle123 » 11.06.2021 21:55:42

rola621 hat geschrieben: ↑ zum Beitrag ↑
11.06.2021 21:41:02
Ja, das habe ich entdeckt bevor ich diesen Thread erstellt habe,
Schön, Eigeninitiative!

Naja, dann wollen wir mal warten, dass dir jemand hier den Sachverhalt 'mundgerecht' präsentiert :wink:

cu KH

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 11.06.2021 21:57:50

von mundgerecht war nie die Rede, ich frage hier einfach nur um Rat, weil ich es nach ausgiebiger Recherche nicht verstehe / hinbekomme.
Notebook & Desktop: Debian bookworm & Xfce

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: dd - .iso von CD erstellen

Beitrag von eggy » 11.06.2021 22:03:00

ok, dann sind wir mal nicht so :mrgreen:
"apt-cache show k3b", da in die depends schauen. Bei jedem Tool, dass Dir noch nichts sagt, apt-cache show aufrufen (keine sorge, ist ne kurzweilige Übung, wenn Du der Liste folgst (unter sid stehts recht weit vorne, bei stable vermutlich auch)

Benutzeravatar
Meillo
Moderator
Beiträge: 8765
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: dd - .iso von CD erstellen

Beitrag von Meillo » 11.06.2021 22:03:52

... aber es ist ja nicht so, dass rola621 unfreundlich oder voellig unfaehig waere. Das ist doch eine sinnhafte Frage nach Unterstuetzung in einem Fall wo ein Computerforum die beste Anlaufstelle ist. Ich faende es schon gut, wenn wir hier konstruktiv Hilfe leisten koennten. Bisher hat sich rola621 doch fuer geleistete Hilfe bedankt, die Ergebnisse zusammengefasst, hat Interesse an der Sache gezeigt. Es waere schoen, wenn sich solche User in dieser Community wohl fuehlen und wachsen koennen.


Edit: Danke, eggy!
Use ed once in a while!

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: dd - .iso von CD erstellen

Beitrag von eggy » 11.06.2021 22:09:10

Wobei wenn ich nochmal drüber lese .. evtl stimmt das gar nicht, ka vielleicht verwechsel ich da auch was, schon länger her ... dann sorry und ich behaupte das Gegentum.
(Aber mal ernsthaft, was ist an k3b falsch?)

mcb

Re: dd - .iso von CD erstellen

Beitrag von mcb » 11.06.2021 22:50:20

ISO von Audio-CDs ?!?

Das macht man eigentlich und uneigendlich nicht -

https://kost-ceco.ch/cms/create_iso_image_de.html

Selbst clonecd und co unterstützen das nicht (wirklich).

MaGe
Beiträge: 1704
Registriert: 01.06.2014 17:12:16

Re: dd - .iso von CD erstellen

Beitrag von MaGe » 11.06.2021 23:06:44

rola621 hat geschrieben: [...] dachte ich mir warum nicht die Kommandozeile.
cdrdao ist da eher für Eins-zu-Eins-Kopien gedacht
Paket: cdrdao (1:1.2.4-2) [ bullseye ]

Mit cdrdao lassen sich auch direkt Images erstellen
macht sowas
CD.bin
CD.toc


gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 12.06.2021 00:27:27

Ah okay, verstehe!
Danke für den aufschlussreichen Link in Bezug auf Audio-CDs und isos.
Ich habe das Eingangs etwas missverständlich formuliert - ich wollte einfach nur in der Lage sein von einer stinknormalen CD eine .iso zu erstellen.
Hatte gerade nichts anderes da als eine audio-CD :mrgreen:

Mir geht es nur darum, wenn ich noch irgendwo alte Spiele oder irgendwelche Installations-CDs aus meiner Kindheit auf dem Dachboden finde, dass ich die dann als .iso archivieren und ggf. mal einbinden kann.
Nicht mehr und nicht weniger war es eigentlich.

Werde das bei Gelegenheit nochmals mit dem Kommando (und KEINER Audio-CD versuchen und nochmal Feedback geben!)
Notebook & Desktop: Debian bookworm & Xfce

debianoli
Beiträge: 4065
Registriert: 07.11.2007 13:58:49
Wohnort: Augschburg

Re: dd - .iso von CD erstellen

Beitrag von debianoli » 12.06.2021 00:58:43

Stop, bevor sich ein Missverständnis bei dir einbrennt: Eine Audio-CD ist was völlig anderes als zB eine alte Spiele-CD!

Dieses Thema hatte ich auch vor Jahren in eine Diskussion im Forum. Fazit war, dass die Struktur einer Audio-CD kein Dateisystem ist. Deshalb auch kein ISO möglich.

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 12.06.2021 01:32:44

ja, so hatte ich es jetzt aufgefasst.
Audio-CD: iso nicht möglich
alte Spiele oder Installations-CD aus irgendeiner Computerzeitschrift: iso möglich (wird noch getestet)
korrekt?
Notebook & Desktop: Debian bookworm & Xfce

Benutzeravatar
kalle123
Beiträge: 2693
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: dd - .iso von CD erstellen

Beitrag von kalle123 » 12.06.2021 07:56:53

rola621 hat geschrieben: ↑ zum Beitrag ↑
11.06.2021 19:49:59
Ich möchte gerne eine Audio-CD als .iso speichern.
Da ich es mit Xfburn nicht hinbekomme dachte ich mir warum nicht die Kommandozeile..
Ich habe keine Ahnung wo hier der Fehler liegt :?
Die Frage wurde m.E. im Link ausgiebig erläutert. 3.post dort.
ISO is short for ISO 9660; the filesystem used on (most) CD-ROMs. As an image, an ISO file is a direct byte-for-byte image of said filesystem, file data included. A CD-DA however is not a CD-ROM; does not only not hold an ISO 9660 file system, but does not in fact hold any files, nor any file system other than that minimal Table Of Content you saw extracted. The actual audio data is a simple stream of 44100 samples/sec, 16-bit, stereo samples.
Hat anscheinend nicht gereicht, oder weil es in Englisch war?

cu KH

Benutzeravatar
heinz
Beiträge: 535
Registriert: 20.12.2007 01:43:49

Re: dd - .iso von CD erstellen

Beitrag von heinz » 12.06.2021 09:15:46

rola621 hat geschrieben: ↑ zum Beitrag ↑
12.06.2021 00:27:27
Mir geht es nur darum, wenn ich noch irgendwo alte Spiele oder irgendwelche Installations-CDs aus meiner Kindheit auf dem Dachboden finde, dass ich die dann als .iso archivieren und ggf. mal einbinden kann.
Wollte nur daran erinnern, dass es bei alten Spiele-CDs auch oft gemischte CDs (Datentracks und Audio) gab.
Ich wuerde Dir die Version mit cdrdao .bin und .toc ans Herz legen wollen.
(Habe damit 99,9% meiner alten Spielesammlung zum "Laufen" gebracht.
Ein paar wenige haben einen speziellen Kopierschutz, der sich nicht mit kopieren liess...)

Gruss,
heinz

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 12.06.2021 10:16:23

kalle123 hat geschrieben: ↑ zum Beitrag ↑
12.06.2021 07:56:53
Die Frage wurde m.E. im Link ausgiebig erläutert. 3.post dort.
Danke für Deine Unterstützung, die Vorgehensweise mit dd war mir durch ausgiebiges googeln bereits vor Erstellung des Threads bekannt.
ISO is short for ISO 9660; the filesystem used on (most) CD-ROMs. As an image, an ISO file is a direct byte-for-byte image of said filesystem, file data included. A CD-DA however is not a CD-ROM; does not only not hold an ISO 9660 file system, but does not in fact hold any files, nor any file system other than that minimal Table Of Content you saw extracted. The actual audio data is a simple stream of 44100 samples/sec, 16-bit, stereo samples.
Dieser Absatz ist in der Textmenge des restlichen Threads wohl untergegangen, also es war sozusagen nicht mundgerecht genug für mein Erbsenhirn, um es verarbeiten zu können. :roll:
Mal im Ernst: Theoretisch sieht es für mich so aus, dass mein eingangs erwähnter Fehler schlichtweg daran liegt, dass es sich beim Testmedium um eine audio-CD handelte.
Praktisch werde ich das zeitnah testen, wenn ich die alte Installations-CD gefunden habe.
Das hatte ich aber eigentlich bereits hier geschrieben:
rola621 hat geschrieben: ↑ zum Beitrag ↑
12.06.2021 00:27:27
Ah okay, verstehe!
Danke für den aufschlussreichen Link in Bezug auf Audio-CDs und isos.
Ich habe das Eingangs etwas missverständlich formuliert - ich wollte einfach nur in der Lage sein von einer stinknormalen CD eine .iso zu erstellen.
Hatte gerade nichts anderes da als eine audio-CD :mrgreen:

Mir geht es nur darum, wenn ich noch irgendwo alte Spiele oder irgendwelche Installations-CDs aus meiner Kindheit auf dem Dachboden finde, dass ich die dann als .iso archivieren und ggf. mal einbinden kann.
Nicht mehr und nicht weniger war es eigentlich.

Werde das bei Gelegenheit nochmals mit dem Kommando (und KEINER Audio-CD versuchen und nochmal Feedback geben!)
aber das hat anscheinend nicht gereicht... :idea:
Notebook & Desktop: Debian bookworm & Xfce

scdbackup
Beiträge: 59
Registriert: 15.10.2011 11:11:51

Re: dd - .iso von CD erstellen

Beitrag von scdbackup » 12.06.2021 10:20:57

Hi,

zum Auslesen von Audio-CDs benutzt man klassischerweise cdda2wav.
Ich kann aber auch was eigenes anbieten mit:

Code: Alles auswählen

mkdir /home/me/my_cd

cdrskin -v dev=/dev/sr0 extract_audio_to=/home/me/my_cd \
           cdtext_to_v07t=/home/me/my_cd/cdtext.v07t
Das schreibt die Tracks der Audio-CD in Laufwerk /dev/sr0 als einzelne Files
mit Namen trackNN.wav ins Directory /home/me/my_cd und extrahiert die
eventuelle CD-TEXT Information als menschenlesbaren File
/home/me/my_cd/cdtext.v07t im Format von "Sony Input Sheet version 0.7T".
Die Tracks sind dann im Microsoft WAVE Format. (Es gibt Tools, um sie
zB. als MP3 platzsparender zu machen.)

-------------------------------------------------------------------------

Hintergrund:

Es gibt eine ganze Reihe verschiedener CD Sektorformate. Am meisten verbreitet
sind CD-ROM und CD-DA.

CD-ROM ist fuer Daten und wird deshalb zum Speichern von ISO 9660
Filesystemen benutzt. Es hat 2048 Bytes pro Sektor (auch "Block" genannt).
CD-ROM kann wie eine Festplatte oder ein USB Stick gelesen werden. Also
zum Beispiel mit dd oder der Systemfunktion write(2).

CD-DA ist fuer Audio im WAVE Format. Es hat 2352 Bytes pro Sektor und kann
nicht wie eine Festplatte gelesen werden. Auf Treiberebene braucht man
dazu den SCSI Befehl READ CD anstelle des fuer CD-ROM geeigneten READ(10).

Beide Formate fassen ihre Sektoren in "Tracks" zusammen, die wiederum in
"Sessions" zusammengefasst werden koennen.
Bei CD-DA stellen die Tracks die einzelnen Musikstuecke dar. Mehrere bilden
dann die Session, von denen es meist nur eine gibt.
Bei CD-ROM stellen die Tracks meist Filesysteme oder Archive (zB. tar) dar.
Normalerweise ist jede Track in einer eigenen Session. Bei ISO 9660 werden
oft nachtraeglich Sessions angehaengt, die jeweils einen eigenen Baum von
Directories haben, aber auch auf Datenfile-Inhalte in den aelteren Sessions
zugreifen koenen. (ZB. bei inkrementellen Backups mit xorriso.)

CDs koennen gleichzeitig Tracks im Format CD-DA und CD-ROM enthalten.

Dann gibt es noch die anderen Sektorformate, die meist als Kopierschutz
verwendet werden, weil es weniger Tools gibt, um sie auszulesen und um
sie auf neue CDs zu schreiben.
(Die Aelteren werden sich noch an das Programm mit dem Clone-Schaf erinnern,
das von der Musikindustrie heftig bekaempft wurde. Schon die Nennung seines
Namens konnte einem eine Abmahnung einhandeln. Dieses Programm las alle
Formate und schrieb sie auf neue CDs.)

Ich selber halte mich von allem fern, was irgendwie nach Kopierschutz
aussieht. Man kann in Teufels Kueche kommen, wenn man Wege anbietet, so
einen Schutz zu umgehen.

CD-TEXT trifft man oft auf Audio CDs an. Es gibt Texte, die fuer die ganze
Platte gelten, und solche, die den Inhalt einzelner Tracks beschreiben.
Audio Player zeigen dann meist den Titel der gerade gespielten Track an.

-------------------------------------------------------------------------

Have a nice day :)

Thomas

scdbackup
Beiträge: 59
Registriert: 15.10.2011 11:11:51

Re: dd - .iso von CD erstellen

Beitrag von scdbackup » 12.06.2021 10:27:47

(Ich vergass, das Kaestchen fuer Benachrichtigung bei Antworten anzuklicken.)

Benutzeravatar
Meillo
Moderator
Beiträge: 8765
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: dd - .iso von CD erstellen

Beitrag von Meillo » 12.06.2021 11:09:15

Danke fuer die detaillierten Erklaerungen. :THX:
scdbackup hat geschrieben: ↑ zum Beitrag ↑
12.06.2021 10:20:57
Hintergrund:

Es gibt eine ganze Reihe verschiedener CD Sektorformate. Am meisten verbreitet
sind CD-ROM und CD-DA.

CD-ROM ist fuer Daten und wird deshalb zum Speichern von ISO 9660
Filesystemen benutzt. Es hat 2048 Bytes pro Sektor (auch "Block" genannt).
CD-ROM kann wie eine Festplatte oder ein USB Stick gelesen werden. Also
zum Beispiel mit dd oder der Systemfunktion write(2).

CD-DA ist fuer Audio im WAVE Format. Es hat 2352 Bytes pro Sektor und kann
nicht wie eine Festplatte gelesen werden. Auf Treiberebene braucht man
dazu den SCSI Befehl READ CD anstelle des fuer CD-ROM geeigneten READ(10).

Beide Formate fassen ihre Sektoren in "Tracks" zusammen, die wiederum in
"Sessions" zusammengefasst werden koennen.
Ich verstehe das noch nicht ganz. Es sind doch in beiden Faellen Sektoren, Tracks und Sessions. Sollte es dann nicht auch in beiden Faellen moeglich sein, einfach alle Sektoren/Tracks/Sessions nacheinander auszulesen und in eine Datei abzulegen? Bei einer Festplatte kann ich ja auch entweder das Dateisystem einer Partition lesen oder das ganze Device.

Warum brauche ich zwei verschiedene SCSI-Befehle? Ist das nicht nur eine willkuerliche Festlegung im Treiber? Koennte man nicht auch einen Devicedriver schreiben, der eine Art Raw-Device zur Verfuegung stellt, das es erlaubt, alle Sektoren linear auszulesen?

Was das Schreiben betrifft: Sind CD-DA und CD-ROM da grundsaetzlich unterschiedliche Formate, die auch technisch nicht in gleicher Weise gebrannt werden koennen? Warum kann ich nicht einfach alle Sektoren linear brennen, so wie ich sie auch ausgelesen habe?

Ich verstehe schon, dass bei CD-ROMs ein Dateisystem verwendet wird und bei CD-DA ein TOC mit Adressen auf die einzelnen Tracks. (Wobei zweiteres an sich auch nichts anderes ist als wie ein Dateisystem funktioniert: Inode mit Verweise auf Datenbloecke.) Aber wie die Daten dem Betriebssystem praesentiert werden ist doch eine freie Entscheidung der Treiber. Ein geniales Konzept von Unix ist es, dass man alle Arten von Dateien (Blockdevices, Characterdevices, Textdateien, Binaerdatei) mittels read(2) und write(2) lesen und schreiben kann. Das war vor Unix nicht moeglich. Haette man den CD-Treiber nicht ebenfalls so implementieren koennen, dass sich alle Arten von CDs mittels read(2) und write(2) lesen und schreiben lassen?

Uebersehe ich da etwas? Habe ich etwas noch nicht richtig verstanden? Oder ist das nur eine historische Altlast -- war halt schon immer so?


Edit: Gerade noch gefunden: https://de.wikipedia.org/wiki/Cdrtools#readcd ... zumindest ein Tool, das Audio-CDs sektorweise lesen kann, wohl auch ohne eine spezielle Treiberunterstuetzung. Nach meiner weiteren Recherche scheint da Problem von Audio-CDs weniger die Weise zu sein wie die Daten darauf gespeichert sind, sondern mehr das Problem, dass sie so ungenau lesbar sind. Wenn die Positionierungen auch mal um eine paar Sektoren abweichen koennen, dann sind eine ganze Menge Korrekturen noetig, um an die Daten zu kommen. Bei CD-ROMs scheint ein exakterer Zugriff moeglich zu sein, bei dem nicht so viel korrigiert (und geraten) werden muss.
Use ed once in a while!

schwedenmann
Beiträge: 5522
Registriert: 30.12.2004 15:31:07
Wohnort: Wegberg

Re: dd - .iso von CD erstellen

Beitrag von schwedenmann » 12.06.2021 11:29:48

Hallo

@Meillo
Was das Schreiben betrifft: Sind CD-DA und CD-ROM da grundsaetzlich unterschiedliche Formate, die auch technisch nicht in gleicher Weise gebrannt werden koennen?
Siehst schon daran, das

1. die Sektorgröße anders ist
2. Daten-CD geht afaik nur bis max. 704 oder 711MB
Audio-CD dageen können mit mehr als 711Mb an "Daten" gebrannt weden,allein daran dürfte dd schon scheitern.

mfg
schwedenmann

P.S,.
Das Audio-Cd Format ist ein Format von Phillips und Sony

rola621
Beiträge: 399
Registriert: 13.05.2021 18:12:20

Re: dd - .iso von CD erstellen

Beitrag von rola621 » 12.06.2021 11:30:59

@scdbackup & Meillo:
Echt ein interessantes Thema!
Danke für eure Beiträge!! Da merkt man direkt wer Begeisterung am Thema mitbringt :mrgreen:

Was Audio-CDs angeht reicht mir persönlich glücklicherweise, wenn ich sie irgendwie verlustfrei auf die Platte bekomme. Da ich die CDs rechtmäßig erworben habe sehe ich da auch keinerlei Problem im Privatbereich.
Das einzige was mir da lange Zeit Kopfschmerzen bereitete war der berühmt berüchtigte "Cactus Data Shield" ( https://www.pressetext.com/news/20000202040 ), der oft auf CDs um 1999/2000/2001 zu finden ist, auch bekannt als größter Fail der Musikindustrie :mrgreen: Aber die guten alten Plextor-Laufwerke können damit wunderbar umgehen :idea:

Wünsche euch einen guten Tag!
Notebook & Desktop: Debian bookworm & Xfce

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: dd - .iso von CD erstellen

Beitrag von eggy » 12.06.2021 12:10:49

@Meillo: und dann gabs da noch die Spezialisten, die außerhalb der Specs arbeiten.
https://www.heise.de/ct/artikel/Audio-C ... 87540.html

soundrolf
Beiträge: 265
Registriert: 21.07.2009 13:50:22
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Köln

Re: dd - .iso von CD erstellen

Beitrag von soundrolf » 12.06.2021 12:29:51

Audio CD’s können auf vielfältige weise Kopiert werden. Audio CD’s kön-
nen nicht mit ’dd’ Kopiert werden, da Audio CD’s kein Dateisystem haben.
Mit dem Programm ’cdrdao’ kann man auf der Kommandozeile eine 1 zu 1
Kopie erstellen.
Kommandozeilen Option:
Audio CD auslesen und Daten auf Festplatte Kopieren

Code: Alles auswählen

cdrdao read-cd --device /dev/cdrom --read-raw --datafile image.bin
image.toc
Audio CD Brennen mit der erzeugten *.toc Datei

Code: Alles auswählen

cdrdao write --device /dev/cdrom --speed 4 --buffers 128 image.toc
Zum Brennen Treiber eintragen, nur bei Fehlern und Abbruch.
Ausprobieren. Kommt auf den Brenner an. In der Regel wird automatisch
–driver generic-mmc-raw gesetzt. Sollte das nicht funktionieren, muss
–driver generic-mmc in der Kommandozeile angegeben werden.

Code: Alles auswählen

cdrdao write --device /dev/cdrom --driver generic-mmc --speed 4
--buffers 128 image.toc

scdbackup
Beiträge: 59
Registriert: 15.10.2011 11:11:51

Re: dd - .iso von CD erstellen

Beitrag von scdbackup » 12.06.2021 12:37:18

Hi,

Meillo schrieb:
> Es sind doch in beiden Faellen Sektoren, Tracks und Sessions. Sollte
> es dann nicht auch in beiden Faellen moeglich sein, einfach alle
> Sektoren/Tracks/Sessions nacheinander auszulesen und in eine Datei
> abzulegen?

Es liegt an den Spezifikationen im SCSI Standard. MMC ist zustaendig fuer
optische Laufwerke (nicht zu verwechseln mit "MMC" Memory Cards).

Ein ganz roher CD Sektor (auch "Frame" oder "Block" genannt) besteht aus
98 "Small Frames", von denen jeder 24 Bytes "User Data", 4 Bytes "C2 ECC",
4 Bytes "C1 ECC" und 1 Byte "Sub-channels" enthaelt. (MMC-5 4.2.1.2)
24 mal 98 macht 2352. Das ist die Zahl der Audio Bytes pro Sektor.
Die beiden "ECCs" sind Pruefsummen, die bei leichten Schaeden auch ein
paar wenige falsche Bits korrigieren koennen.
"Sub-channels" sind sehr kleine Datenstroeme, die zB. die aktuelle
Position auf der CD angeben.
Das Ganze stammt vermutlich aus der Entwicklung von digitalen Bandgeraeten
und Videorekordern.

Mit diesen Komponenten kann man sehr seltsame Sektoren zusammensetzen.
Die beiden gebraeuchlisten sind CD-DA, das einfach alle User Data Bytes
fuer die Darstellung von Geraeuschen benutzt, und CD-ROM, das die fuer
Platten ueblichen 2048 Bytes pro Block speichert und die anderen 304 Bytes
User Data fuer die genaue Ansteuerung von Sektoren und fuer massenhaft
Pruefsummen verwendet. Dann gibt's noch CD-ROM XA, das fast wie CD-ROM ist,
und obskure Wolpertinger, die als Kopierschutz dienen.

Nur CD-ROM und CD-ROM XA koennen mit den SCSI Lesebefehlen fuer Platten
oder Baender gelesen werden. Fuer die anderen Sektorformate gibt es in
MMC spezielle Lesebefehle READ CD und READ CD MSF, die aber nicht ueber
die POSIX Systemaufrufe ausfuehrbar sind. Deswegen kann man CD-DA weder
mounten noch mit dd auslesen. (In beiden Faellen versucht es der Linux
Kernel mit dem SCSI Kommando READ(10).)

> Ist das nicht nur eine willkuerliche Festlegung im Treiber?

Es steckt in der Firmware der Laufwerke. Deren Programmierer haben die
SCSI Spezifikationen gelesen. Ebenso machen es die Kernelentwickler
und wir Brennprogrammierer - teilweise mit durchwachsenem Erfolg. (Hust)

> Koennte man nicht auch einen Devicedriver schreiben, der eine Art
> Raw-Device zur Verfuegung stellt, das es erlaubt, alle Sektoren linear
> auszulesen?

Das waere dann das Programm mit dem Clone-Schaf.
Problem ist, wie man dem Benutzer all die Eingeweide praesentiert, sodass er
damit auch was anfangen kann. Beim Klonen ist das klar. Aber beim Lesen
fuers Kopieren in einen Datenfile muesste man entscheiden, was man nicht
im File speichern will.

Die Linux Kernelentwickler haben sich ja schon vor dem Brennen gedrueckt.
Da kann man nicht erwarten, dass sie das Lesen mit allen Eingeweiden in
ihr Geraetemodell quetschen koennen.

> Was das Schreiben betrifft: Sind CD-DA und CD-ROM da grundsaetzlich
> unterschiedliche Formate, die auch technisch nicht in gleicher Weise
> gebrannt werden koennen?

Lustigerweise ist das Brennen da nicht sehr unterschiedlich. In allen
Faellen kann man die Nutzlast mit dem SCSI-Befehl WRITE(10) an den Brenner
schicken, dessen Firmware dann alles noch fehlende Gekroese dazugibt.
Man muss allerdings vorher angemeldet haben, was fuer ein Sektorformat es
werden soll, und bei den exotischen Formaten wissen, wie man selbstgemachtes
Gekroese herstellt.

> Ich verstehe schon, dass bei CD-ROMs ein Dateisystem verwendet wird

Nicht notwendigerweise. Es sind schlichtweg Daten, die mit normalen
Plattenbefehlen gelesen werden koennen. Die hoehere Bedeutung liegt im
Auge des Lesenden. mount(8) will natuerlich in den Daten ein erkennbares
Filesystem finden. Wenn nicht, wird nicht gemountet. dd(1) dagegen nimmt
einfach Daten und hat keine besonderen Ansprueche an ihre Bedeutung.

> bei CD-DA ein TOC mit Adressen auf die einzelnen Tracks.

Die Tracks und Sessions gibt es fuer jedes Sektorformat. Bei CD-DA sind
sie der einzige Hinweis auf die Struktur der Daten auf der CD.

Bei ISO 9660 Filesystemen auf CD, DVD oder BD wird von Linux bei mount(8)
der Superblock aus der ersten Track der letzten Session gelesen. So kann
man eine Scheibe immer wieder auf den neuesten Stand bringen, indem man
neue Sessions hinzufuegt.
Man kann aber auch aeltere Sessions mounten. Meine aktuelle 11 Uhr Backup
BD-R kann zB. jeden Stand zwischen 2. Maerz und heute darstellen:

Code: Alles auswählen

$ xorriso -outdev /dev/sr4 -toc
...
Drive type   : vendor 'ASUS' product 'BW-16D1HT' revision '1.01'
...
Media current: BD-R sequential recording
...
TOC layout   : Idx ,  sbsector ,       Size , Volume Id
ISO session  :   1 ,         0 ,   1992263s , HOME_2021_03_02_110936
ISO session  :   2 ,   1992416 ,     33546s , HOME_2021_03_03_110514
...
ISO session  : 102 ,   5569728 ,     33301s , HOME_2021_06_11_110721
ISO session  : 103 ,   5603200 ,     37851s , HOME_2021_06_12_120532
Media summary: 103 sessions, 5641216 data blocks, 10.8g data, 12.5g free
Mit

Code: Alles auswählen

mount -o sbsector=5569728 /dev/sr4 /mnt/iso
kann ich zB. den Backup-Stand von gestern mounten und sehe als vorhandene
Datenmenge 3.8 GB, soviel wie gestern in den gebackupten Directories auf
der Platte war.

Wenn ich aeltere Backups brauche, muss ich eine der alten vollen BD-Rs
aus dem Regal holen. Normalerweise reicht mir eine fuer 200 Tage, wenn ich
den ASUS Brenner nehme, der mehr als 128 Sessions auf BD-R schreibt.

> Inode mit Verweise auf Datenbloecke.

Inodes sind Bestandteile einiger Filesysteme und werden vom Linux Kernel
als innere Darstellung fuer alle Filesysteme benutzt. Bei ISO 9660 werden
sie aus den Directory Records emuliert. Die inode-Nummern entstehen zB.
aus der Byte Adresse des Directory Record geteilt durch 32.

Mit dem Table-Of-Content von optischen Medien haben Inodes nichts zu tun.

> aber wie die Daten dem Betriebssystem praesentiert werden ist doch eine
> freie Entscheidung der Treiber.

Ja, wie oben schon erwaehnt koennte man Treiber in oder neben den Linux
Subsystemen cdrom und sr einbauen, die andere Sektorformate als CD-ROM
als lesbares Blockdevice zugaenglich machen. Man muesste sich nur
entscheiden, welcher Anteil der Sektoren gezeigt werden soll und wie
die Blockgroesse sein soll. (Ein Vielfaches von 512 sollte es wohl sein.)

Aber cdrom und sr sind jetzt schon in einem angefaulten Zustand und die
Kernelentwickler nehmen von uns Userlandern keine Reparaturvorschlaege an.
( https://lore.kernel.org/linux-scsi/2020 ... x.net/T/#u )

Ein neuer Treiber fuer zB. CD-DA als Blockdevice hat da wenig Chancen.

> ist das nur eine historische Altlast [...] ?

Sehr viel aufeinandergetuermte Historie. Die Industrie hat sich dann auch
bei der Einfuehrung der DVD entschieden, den ganzen Firlefanz in der
Firmware der Laufwerke zu verstecken. Auf DVD und BD gibt's nach aussen
nur noch CD-ROM Sektoren. 2048 Bytes Nutzlast pro Sektor und fertig.
Wer es dem Leser schwer machen will, der verschluesselt einfach die Daten.

Have a nice day :)

Thomas

Antworten