compressed CD-ROM filesystems 

Usage 

ISOF=../disk1.iso
dirdel $tmp_f.Z
mkzftree . $tmp_f.Z
mkisofs -r -N -L -d -D -J -f -o $ISOF -z -R -graft-points $tmp_f.Z

Help 

mkisofs

-z     Generate  special  RRIP  records  for  transparently  compressed
       files.   This is only of use and interest for hosts that support
       transparent decompression, such as Linux 2.4.14 or  later.   You
       must  specify the -R or -r options to enable RockRidge, and gen-
       erate compressed files using the mkzftree utility before running
       mkisofs.

Figures 

case 1 

backup.iso: 110166016

Total translation table size: 0
Total rockridge attributes bytes: 430472
Total directory bytes: 1374208
Path table size(bytes): 7238
Max brk space used 250000
53792 extents written (105 Mb)
mount -o loop, du -b: 105750528
1k-blocks in df: 107584
105750528 + 430472 + 1374208 + 7238 + 250000 = 107812446
107584 * 1024 = 110166016

case 2, compressed volume 

backup.iso: 46039040

Total translation table size: 0
Total rockridge attributes bytes: 227310
Total directory bytes: 702464
Path table size(bytes): 3632
Max brk space used 123000
22480 extents written (43 Mb)
mount -o loop, du -b: 43492352
1k-blocks in df: 44960
22480 * 2048 = 46039040
44960 * 1024 = 46039040
1408000 /mnt/tmp/BAK030913/txtHist/u
$ du -b ~/txtHist/u
3874816 /home/tong/txtHist/u

History 

cd ~/dl/yhgt
mkzftree . ../yhgt.c
ISOF=../disk2.iso
mkisofs -r -N -L -d -D -J -f -o $ISOF -z -R -graft-points yhgt/=../yhgt.c

Plain CD 

ISOF=../disk1.iso
mkisofs -r -N -L -d -D -J -f -o $ISOF -graft-points yhgt/=.

Test 

$ dir ~/dl/disk?.iso
     202113024 Dec 20 00:32 disk1.iso
     170164224 Dec 27 14:40 disk2.iso
mount -o loop ~/dl/disk1.iso /mnt/tmp1
mount -o loop ~/dl/disk2.iso /mnt/tmp2