Posted on Fri 04 October 2019

Splitting >4 GB ISO files for isostick

This is more of an archival post for myself since part of the documentation for [cached]isostick (a USB stick that can emulate optical drives) is down and the project does not seem maintained any more.

Since isostick only supports FAT32 filesystems, ISOs larger than 4 GB need to be split up into multiple parts.

Here's the explanation for how to do this from the now offline isostick forum:

The isostick can only read files from FAT32 partitions. Unfortunately, FAT32 has a maximum file size of 4GB. To overcome this, isostick can read ISO files which are split into multiple parts, up to a maximum of 10 parts (so, 40GB is the maximum supported image size).

Requirements for ISO file parts:

  • Each part must only contain the ISO file data -- do not add any headers.
  • Each part's size must be evenly divisible by 2048bytes (the size of a CD/DVD sector).
  • Each part must use sequential extensions from .iso.0 thru a maximum of .iso.9 For example if you are splitting a 6GB ISO named Win7x64.iso, you may end up with Win7x64.iso.0 (4GB) and Win7x64.iso.1 (2GB). Of course, you could also split it into two 3GB files, or any other combination, so long as the above limits are obeyed.

Users comfortable with the command line can use the split utility: If you're on Windows you will need to get split from the GNU CoreUtils package. Linux and MacOS X should come with split.

split -a 1 -b 4000m -d blah.iso blah.iso.

Change "blah" to the name of the iso file, and be sure to keep that '.' at the end of the command! Explanation of command-line options:

  • -a 1 Suffixes are only one character long
  • -b 4000m Maximum size of each file is 4000MB
  • -d Use numeric suffixes

Some split utilities do not support -d, for these you'll have to omit the -d option and it will produce files with extensions .iso.a, .iso.b, and so on. You will have to rename these to be numeric instead of alphabetical, or find a copy of split that supports the -d option.

For reference, the command I used to split the Windows ISO directly onto the isostick:

1
2
split -a 1 -b 4000m -d Downloads/Win10_1903_V2_EnglishInternational_x64.iso \
    /media/isostick/os/win10_1903_v2.iso.

Tags: misc

© Julian Schrittwieser. Built using Pelican. Theme by Giulio Fidente on github. .