Resume recursive scp transfer (with rsync?)
I was transferring several thousand files each ~1MB via scp and my connection was broken after the first 2k files or so. I wanted to know if there was a way to resume the recursive transfer w/o starting over. Something like
$ scp -r [email protected]:/datafiles/ ./
... Happy Transfer ...
... BREAK! ...
$ rsync -P [email protected]:/datafiles/ ./
... Continue transf...
The problem is I can't seem to get the syntax correct if it is possible. Can anyone shed some light on if/how it can be done?
PS. If you specify the slash after "datafiles" in the rsync line, does that transfer the directory or its contents? I saw conflicting comments when I googled.
Solution 1:
if you are rsyncing from a local machine to a remote host, this would work:
rsync -avzl -e ssh /directory/with/files/ [email protected]:/new/directory/
Solution 2:
The following line should do the trick for that:
rsync --partial --progress --rsh=ssh -r [email protected]:/datafiles/ ./
I've never used this for recursive directories before, but when I texted it just now it seemed to work as expected.