I've been trying to copying a bunch of files between two USB drives, the source NTFS, and the destination FAT32. There were a couple of files hidden amongst the source data that were > 4GB. I used:
rsync -av --progress --size-only
to copy everything. It chews through everything, and it all looks hunky-dory, until right at the end, when it suddenly says "oops, XYZ file was too big" - which is of course true due to the limitations of FAT32. The weird thing, however, is that every file that was copied after the too-large file never gets written to the destination disk, even though rsync has sat there for hours supposedly copying them. I'm guessing this is something to do with how the USB filesystem is behaving rather than a fault in rsync, but I'm wondering if there's a way to prevent this unhelpful behaviour and either have it fail fast or (preferably) succeed in copying all the files that aren't too big, even if they are copied after one that is too big.