Ein Plextor PX-750A auf einem Linux-System hat viele DVD + R DL-Untersetzer hergestellt, während versucht wurde, eine 8-GB-DVD-ISO-Datei mit Growisofs und dem Schilling-CD-Record-Programm zu brennen.
Ich habe zuerst Growisofs ausprobiert:
growisofs --version
* growisofs by <appro@fy.chalmers.se>, version 7.0,
front-ending to genisoimage: genisoimage 1.1.8 (Linux)
Die Kommandozeile war:
growisofs -dvd-compat -Z /dev/sr1=SUU_14.03.00_A00.iso
Es -dvd-compat
wurde auch versucht, die Option zu entfernen.
Schilling cdrtools wurde auch ausprobiert:
Cdrecord-ProDVD-ProBD-Clone 3.00 (i686-pc-linux-gnu) Copyright (C) 1995-2010 Jörg Schilling
Die Kommandozeile war:
/usr/local/bin/cdrecord -v dev=ATAPI:1,0,0 SUU_14.03.00_A00.iso
In beiden Fällen wird das Brennen auf halbem Weg abgebrochen, als würde es eine Ebene schreiben und krächzt, wenn es in die zweite Ebene verschoben werden soll.
Growisofs:
4275175424/8434493440 (50.7%) @1.6x, remaining 22:03 RBU 100.0% UBU 94.4%
:-[ WRITE@LBA=1fdb40h failed with SK=3h/ASC=0Ch/ACQ=00h]: Input/output error
:-( write failed: Input/output error
cdrecord:
Track 01: 4205 of 8043 MB written (fifo 99%) [buf 97%] 2.4x./usr/local/bin/cdrecord: Input/output error. write_g1: scsi sendcmd: no error
CDB: 2A 00 00 20 DA 10 00 00 10 00
status: 0x2 (CHECK CONDITION)
Sense Bytes: 70 00 03 00 00 00 00 0A 00 00 95 00 0C 00 00 00 00 00
Sense Key: 0x3 Medium Error, Segment 0
Sense Code: 0x0C Qual 0x00 (write error) Fru 0x0
Sense flags: Blk 0 (not valid)
cmd finished after 0.019s timeout 200s
write track data: error after 4409294848 bytes
/usr/local/bin/cdrecord: A write error occured.
/usr/local/bin/cdrecord: Please properly read the error message above.
Wenn man die Medien nach dem Brennen betrachtet, scheint es Daten von innen nach außen geschrieben zu haben - was den Eindruck erweckt, dass es eine Ebene vollständig geschrieben hat und dann fehlerhaft war, als diese Ebene endete. Bei mehreren Versuchen liegt jeder Fehler bei etwa 50% des Weges durch das Verbrennen von:
$ ls -lh SUU_14.03.00_A00.iso
-rw-rw-r-- 1 user group 7.9G 2014-05-14 07:53 SUU_14.03.00_A00.iso
Beginn der Bearbeitung am 23.05.2014:
Die Manpage zu cdrecord sagt:
Cdrecord functional options
...
driveropts=option list
...
layerbreak
Switch a drive with DVD-R/DL medium into layer jump
recording recording mode and use automatic layer-break
position setup.
By default, DVD-R/DL media is written in sequential
recording mode that completely fills up both layers.
layerbreak=value
Set up a manual layer-break value for DVD-R/DL and
DVD+R/DL. The specified layer-break value must not be
set to less than half of the recorded data size and must
not be set to more than the remaining Layer 0 size of the
medium. The manual layer-break value needs to be a mul-
tiple of the ECC sector size which is 16 logical 2048
byte sectors in case of DVD media and 32 logical 2048
byte sectors in case of HD-DVD or BD media.
Cdrecord does not allow to write DL media in case that
the total amount of data is less then the Layer 0 size of
the medium except when a manual layer-break has been
specified by using the layerbreak=value option.
Die Verwendung von Layerbreak ohne manuell berechneten Haltepunkt ergibt:
cdrecord -v driveropts=layerbreak dev=ATAPI:1,0,0 SUU_14.03.00_A00.iso
...
cdrecord: Bad layer break value ''.
...
Nach einigen Recherchen fand ich einen Patch für einen älteren CD-Datensatz, der eine "optimale Berechnung des Schichtbruchs" enthielt. Mit ein wenig Experimentieren fand ich heraus, dass ich den "optimalen Schichtbruch" in einer Schale berechnen konnte:
echo -e "a = $(isosize SUU_14.03.00_A00.iso)\nb = a / 2048 / 2\nb - 1 + 16 - ( b - 1 ) % 16\n" | bc
Dies ergab einen Layerbreak-Wert von 2059216. Tatsächlich versuchte ich beim Grinsen, den Wert nach oben und unten anzupassen. Für einige Layerbreak-Werte (wie 2059215) würde cdrecord Folgendes melden:
cdrecord: Layer break at 2059215 is not properly aligned.
Hoffentlich habe ich versucht:
cdrecord -v driveropts=layerbreak=2059216 dev=ATAPI:1,0,0 SUU_14.03.00_A00.iso
Und immer noch einen Untersetzer und Schreibfehler:
Track 01: 4205 of 8043 MB written (fifo 99%) [buf 97%] 2.4x./usr/local/bin/cdrecord: Input/output error. write_g1: scsi sendcmd: no error
CDB: 2A 00 00 20 DB 60 00 00 10 00
status: 0x2 (CHECK CONDITION)
Sense Bytes: 70 00 03 00 00 00 00 0A 00 00 95 00 0C 00 00 00 00 00
Sense Key: 0x3 Medium Error, Segment 0
Sense Code: 0x0C Qual 0x00 (write error) Fru 0x0
Sense flags: Blk 0 (not valid)
cmd finished after 0.022s timeout 200s
write track data: error after 4409982976 bytes
/usr/local/bin/cdrecord: A write error occured.
/usr/local/bin/cdrecord: Please properly read the error message above.
Ende 2014/05/23 bearbeiten.
Dieses Problem trat auf einem Server auf, auf dem keine GUI-Tools installiert waren. Ich suche nach einer Möglichkeit, Dual-Layer-DVDs über die Befehlszeile zu brennen.
growisofs
funktioniert gut für mich beim Brennen von zweischichtigen Rohlingen. Muss laufwerksspezifisch sein.