Like others, I have had problems making large-scale backups by dvd+rw-format ?ing, mkudffs ?ing, and mounting a DVD+RW -- then copying to the media.
a) When it worked, it took too long for filesystems with a lot of files (copying small sets of large files works OK, with a lot of files, performance seems to slow to a drip)
b) It didn?t always work, spuriously resulting in ?media errors? about when I mounted the volumes, at times (this is with an ?Optorite? DVD+RW drive)
Another options -- growisofs ?Z ?dvd-compat /dev/scd0 ?udf /home/my/files -- is insufficient, due to the ?alpha? implementation of the UDF filesystem in mkisofs (symlinks, ownership gets trashed)
Therefore, I use the following procedure (with Andy Polyakov?s patch applied) to perform backups:
a) dd if=/dev/zero of=a_temporary_file.img bs=32k count=143432
The above generates an empty image file (a_temporary_file.img) the size of a DVD+RW.
b) mkudffs ?spartable=2 ?media-type=cdrw a_temporary_file.img
The above then formats the image file with the UDF filesystem.
c) mount ?o loop ?t udf a_temporary_file.img /mnt/udf
We then mount the filesystem image onto /mnt/udf so we can copy files to it.
d) cp ?rv /home/my/files /mnt/udf
This copies (recursively) the files onto our temporary image file. . .
e) umount /mnt/udf
f) growisofs ?dvd-compat ?Z /dev/scd0=a_temporary_file.img
. . . which we then burn onto DVD+RW in a single, speedy pass!
I find this method very useful for generating UDF DVD backups ? the benefits are:
1 ? It?s reasonably fast; the growisfs executes at the appropriate speed and the cp is pretty quick
2 ? The DVD+RW?s can be mounted ?live? with ?mount ?o rw,noatime /dev/scd0 /mnt/cdrom ? so that as the kernel patch stabilizes, the backups can be modified at-will (I?ve tinkered with my backups just to verify that it works)
3 ? Symlinks and ID?s survive the process
4 ? I have a much lower failure rate with DVD+RW media using this method vs. dvd+rw-format/mkudff/mount/cp (and I have been verifying my data, of course)
Anyone have any thoughts on this method?