I am coping a about 5TB of data from a Drobo attacked to a Mac Mini running macOS Sierra to a NAS (FreeNAS). Here's the command I am using:

sudo rsync -a --stats --progress "/Source" "/Destination"

Needless to say, it is taking days to complete, even over a 1GB network. Along the way, I had to stop the transfer due to server trouble. I remember explicitly stopping the rsync process using control + c while it was transferring a Parallels virtual hard drive file about 500GB. I later started the process again using the command above but I didn't note which Parallels VM file it stopped on and I want to make sure that the command I am using will pick that file up, despite having canceled the command the first round.

If I cancel the rsync command above, do in-flight files just get deleted, and if I run the command above again, will it see those file(s) as new files never transferred?

  • I’ve never not seen rsync do partial copies and resume exactly where it left off. I would answer except I don’t know drobo and it’s filesystem internals. Since it’s mounted on macOS and that is where the rsync runs - you should be just fine as freenas has a reputation for decent rsync support. – bmike Jun 26 '17 at 2:48

If you use the --partial option, the partially-transfered file is kept, and subsequent transfers should be much faster. It's probably a good idea to use it with large file transfers in general.

  • Thanks for the answer. Since I did not use --partial to begin with, do you know what I must do to make sure all incomplete file(s) are copied? – Swisher Sweet Jun 26 '17 at 12:50
  • 1
    It normally cleans up after itself, so there shouldn't be any data with which to continue the transfer, if you hadn't told it to leave the data already transferred where it was, using the --partial flag. – William T Froggard Jun 26 '17 at 12:53

rsync starts the transfer of each file, or portion by creating a temporary file with a weird file name. If you use --delete, the next run will notice that temp file is not in the source and remove it. Since you didn't, the temp file and the old file are still there (because you interrupted before the temp replaced the old version), and so the update will start again without removing the previous partial.

  • I was surprised to find that rsync is faster than cp when both disks are mounted on the same CPU. – WGroleau Jun 26 '17 at 15:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .