DVD backups - bug or feature?

Charles Lopes tjarls at iee.lu
Mon Mar 8 10:39:47 UTC 2004


Bob Billing wrote:

> I spent a few frustrating hours yesterday turning DVD+R blanks into
> coasters before I realised that there seems to be a deep problem with
> the whole DVD mechanism. Since this seems to be a bug in the philosophy
> of the system, rather than any specific module, I hope I can raise it
> safely here.
>
> My root partition on this system contains about 6.2G of files. This
> includes things like the entire Hubble sky survey and the complete
> Ordnance Survey map database for the UK. Backing it up as a bzipped tar
> file gave me 2165096516 bytes of data. This is just over 2G - in fact it
> is hex 810CC044. I then burned this on DVD with growisofs.
>
> When I mounted the resulting DVD the file had shrunk to 835652 bytes.
> This is in fact 000CC044. The "cruft" option had cut in and removed the
> high byte of the file length.
>
> Now this is the problem: Is mkisofs/growisofs right to allow a file over
> 2G, and mount is wrong? Or is mount right, the top bit of the file
> length should never be set and mkisofs should have rejected it?
>
It seems that you are hitting a limitation of ISO-9660 implementation in 
the kernel. Quoted from linux/fs/isofs/inode.c:
 
       /*
         * The ISO-9660 filesystem only stores 32 bits for file size.
         * mkisofs handles files up to 2GB-2 = 2147483646 = 0x7FFFFFFE bytes
         * in size. This is according to the large file summit paper 
from 1996.
         * WARNING: ISO-9660 filesystems > 1 GB and even > 2 GB are fully
         *          legal. Do not prevent to use DVD's 
schilling at fokus.gmd.de
         */

 The fact that no error is returned by mkisofs seems to suggest that 
this limitation is not present in mkisofs. Furthermore, if you inspect 
your cd with isoinfo, you're likely to find out that the file size is 
reported correctly.

> Either way it seems that as a DVD is longer than 4G there is no way,
> within the standard, of burning a DVD that contains a single 4.7G file.
>
> So should I:
> 1) Report a bug in mkisofs?

As I previously said, mkisofs may be doing the right thing. No point in 
bugging them :-)

> 2) Report a bug in mount?

"mount" doesn't have any thing to do with your problem.

> 3) Develop a workaround (I already have one)?

You can burn directly your tar file to the DVD and subsequently read it 
with "tar xjvf /dev/cdrom"

> 4) Use a different filesystem?

If you are only using linux you could do away with ext2fs. UDF (created 
with mkudffs) might work too althought I haven't tested it my self.

Cheers,
    Charles






More information about the fedora-devel-list mailing list