≡ Menu

Splits directory into multiple with equal size for ISO burning purpose

Sometime it is necessary to convert a directory with many multiple files (which are all smaller than a certain medium, eg. DVD) and "splits" it into "volumes,” looking for the optimal order to get the best space/medium-number efficiency.

For example, I have /data/network/mp3 directory size as follows:

$ du -ch

1.2 GB size

Now I would like to burn all these files on 700MB CD. Since size is 1.2 GB, I need to split it into two ISO files. Therefore, I need to take help of dirsplit command as follows.

1) Create list of files

$ cd /data/network/mp3
$ dirsplit -s 700M -e2 /data/network/mp3
$ ls vol*



Above dirsplit command created two mkisofs catalogs to burn all music (mp3) to 700M CDRs, keep single files in each dir together.


  • -s 700M : 700M CDR size
  • -e N : Special exploration modes, used with directory argument

As you see, it created two files vol_1.list vol_2.list. Now use these files to create two ISO images that can opened on both windows and Linux computer:

$ mkisofs -o vol1.iso -D -r --joliet-long -graft-points -path-list vol_1.list
$ mkisofs -o vol2.iso -D -r --joliet-long -graft-points -path-list vol_2.list
$ ls -l *.iso


-rw-r--r-- 1 vivek vivek 663M 2006-03-05 05:18 vol1.iso
-rw-r--r-- 1 vivek vivek 510M 2006-03-05 05:19 vol2.iso

Now ISO images are ready and you can burn them using cdrecord or other GUI tools.
Write an ISO (happ.iso) to CD i.e. burn an image:

$ cdrecord -v -dev=ATA:1,0,0 speed=8 vo1.iso
$ cdrecord -v -dev=ATA:1,0,0 speed=8 vo2.iso

dirsplit can ignore some junk files i.e. it can filter file list. For example, don't include other directory while creating split:

$ dirsplit -s 700M -e2 -f '!other' -e2 /data/network/mp3

(Check out all of our posts on Linux)

Share this on:

{ 4 comments… add one }

  • smoke April 12, 2007, 8:44 pm

    is there such tool for win32? (must be cli driven)

  • freeloadr February 11, 2010, 4:40 pm

    This is part of the genisoimage package on Ubuntu.

  • Joaquin April 19, 2012, 7:34 pm

    Great! Thanks was very usefull.

  • Ben October 29, 2015, 2:51 pm

    Even now this is really handy. I just had to return 30GB of data to someone over a bunch of DVDs.

    One thing I will say, you need to drop the ‘e2’ if one directory exceeds the max size limit you set.

Leave a Comment