DVD+R/+RW compatibility with Windows
I'm making backups of about 2.3 GB of important data from a server onto
DVD+R and DVD+RW, using dvd+rw-tools-5.17.4.8.6. The server is a Redhat
9 box, with a LiteOn IDE DVD+R/+RW drive inside. I also want to be able
to read the backups on Windows XP machines.
I have to do something strange to make that happen. Here are the steps
I take.
1. I make, format, mount, fill, and umount a UDF image:
dd bs=32k if=/dev/zero of=/var/backup/backup.udf count=(calc'd size)
mkudffs --media-type=dvd /var/backup/backup.udf
mount -o loop -t udf /var/backup/backup.udf /mnt/udf
cp -pf (files) /mnt/udf
umount /mnt/udf
2. I burn the UDF image to DVD+R/+RW with growisofs:
growisofs -dvd-compat -Z /dev/cdrom=/var/backup/backup.udf
At this point, the DVD is readable in the Linux box, but not on Windows,
even though I used -dvd-compat.
3. I use dvd+rw-format to write the lead-out (again?). If the disc is a
DVD+R, I can't do this step:
dvd+rw-format -lead-out /dev/cdrom
Now the disc is readable on Windows. I thought that step would be
redundant, because I got the impression that dvd+rw-format -lead-out and
growisofs -dvd-compat did the same thing.
This workaround is fine for DVD+RW's, but I can't use it on DVD+R's, so
I can't make the more durable, less expensive DVD+R's readable on
Windows.
I poked around the dvd+rw-tools sources for a bit and found the sections
where I think the lead-out is being written. They all seem to send the
same commands:
fprintf (stderr,"%s: writing lead-out\n",ioctl_device);
cmd[0] = 0x5B; // CLOSE TRACK/SESSION
cmd[1] = 0x01; // "IMMED"
cmd[2] = 0x02; // "Close session"
cmd[9] = 0;
if ((err=cmd.transport()))
sperror ("CLOSE SESSION",err);
Am I missing something? Anyone know why I need to write the lead-out
twice for Windows to see it?
Thanks,
James Athey
Reply to: