burning DVDs with Linux

The Issue

The standard linux tool for writing CDs "cdrecord" does not work with DVDs. A professional version is supposed to accomplish this but was not at hand. On we went googling. But we where unable to find an appropriate way. All this is probably due to our archaic Linux SuSE 9.1.

The following description uses standard software coming with SuSE 9.1.

Environment

DVD: EMTEC DVD+RW 4.7GB
Writer: LG DVDRAM GSA-4167B (displayed i.e. "cdrecord -scanbus")
Linux:

 

# uname -a
Linux hostname 2.4.20-4GB #1 Mon Mar 17 17:54:44 UTC 2003 i686 unknown unknown GNU/Linux

 

reformat a DVD

Whether this is really necessary, needs to be proven. We thought it does not harm.

 

# dvd+rw-format -force /dev/dvdram
* DVD+RW format utility by , version 3.0.
* 4.7GB DVD+RW media detected.
* formatting 9.5|

 

Note: The tool starts at 1.x percent anew and stopped repeatedly at 9.5%. However everything went fine. The disc appeared formatted, according to the following:

 

# dvd+rw-format /dev/dvdram
* DVD+RW format utility by , version 3.0.
* 4.7GB DVD+RW media detected.
- media is already formatted, lead-out is currently at
  4590208 KB which is 100.0% of total capacity.
- you have the option to rerun with:
   -lead-out  to elicit lead-out relocation for better
              compatibility, data is not affected;
   -force     to enforce new format (not recommended)

 

burning the DVD

Now we can start with writing data to the DVD. Our version of growisofs complains about files being to large. However the following trickery outwits mkisofs and produced reasonable results. (mkisofs does not handle large files and does not read from stdin)

 

# dd if=/tmp/se/sol-10-u2-ga-x86-dvd-iso bs=2k | growisofs -Z /dev/dvdram=/proc/self/fd/0
Executing 'dd if=/proc/self/fd/0 of=/dev/dvdram obs=32k'
1476960+0 records in
1476960+0 records out
/dev/dvdram: flushing cache
/dev/dvdram: stopping de-icing
/dev/dvdram: writing lead-out
#

 

Possibly a new linux kernel and a more recent linux distribution may offer better ways. However even this outdated version produced feasible results.