Bug 10675 - rsyncing >2GB file onto fat32 partition should fail earlier
Summary: rsyncing >2GB file onto fat32 partition should fail earlier
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.1.0
Hardware: x86 Linux
: P5 normal (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
Depends on:
Reported: 2014-06-26 21:36 UTC by Darko Veberic
Modified: 2020-07-27 23:14 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Darko Veberic 2014-06-26 21:36:14 UTC
i have noticed that while rsyncing (-av) a whole directory (from linux ext4) onto a fat32 filesystem on a usb disk there was a large >4GB file among the files to be copied. while rsync should fail immediately encountering such a job what really happened was strange: rsync continued to read all the other files in the job but nothing has been written to the usb disk anymore. i have noticed this since the i/o on my internal disk went to the max of 120 MB/s and the i/o on the usb disk stayed at 0. at that point i pressed ctrl-c and, remarkably late, got the corresponding error:

rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(632) [sender=3.1.0]
rsync: write failed on "/media/luser/usbdisk/folder/dvd.iso": File too large (27)
rsync error: error in file IO (code 11) at receiver.c(389) [receiver=3.1.0]

how to reproduce: format a usb disk with mkfs.vfat and try to rsync a directory containing some files plus a large file over the >2GB fat32 limit.
Comment 1 Daniel 2016-08-15 14:38:40 UTC
If the Topic should mean ">4GB":
I can confirm the problem.
Comment 2 Wayne Davison 2020-07-27 23:14:28 UTC
The problem is that rsync doesn't know that the destination filesystem is not going to allow a large file until the file grows to be too large.  You could probably get an earlier error if you use --preallocate, though.