"cat: write error: File too large" when trying to join 7GB backup

I have a 7gb .iso file, and I want to move it to a secondary HDD I have connected on my computer, first I tried to move the entire file and it failed saying the file was too large. I noticed always 4GB was copied, so I used split to generate 3GB chunks.

Now I have the 3 chunks in the secondary disk, and I am trying to join them using cat with:

cat x0* > backup.iso

But it also fails saying:

cat: write error: File too large

The resulting file is once again 4GB. How can I join these files?

I have plenty of space on that disk for the files (>50GB). I read somewhere that I should pipe the files contents in real time to avoid this error but I have no idea how to do it.


Solution 1:

Wich if the format of your external drive? Some drives use FAT32, and this limit the maximun file size close to 4Gb.

If you want to have bigger files you should change it. To do this you have to format the external drive.

Solution 2:

The easiest solution would be to output the cat into an external hard drive with a format other than FAT32. You can simply reformat a USB stick >8GB and output the cat in there.

I am afraid but you won't be able to handle >4GB files in a FAT32 hard drive.

You can find further information about file systems and their limitations here: http://en.wikipedia.org/wiki/Comparison_of_file_systems#Limits