我用
rsync -rP --rsh=ssh user@[ip]:~/datasets/ ./
从服务器下载包含大量大文件的目录。我想在进度中断(由于Ctrl+C网络错误)时恢复进度。
但我发现,当我rsync
使用相同的参数重新启动时,即使本地目录中存在现有文件,它也会从头开始下载。为什么?如何rsync
正确使用?
答案1
rsync
由于远程和本地文件的修改时间不同,该命令将无法正常恢复。
--times
您可以使用(或) 请求将本地文件的修改时间设置为与远程文件相同的时间戳-t
,但最常见的是使用--archive
(或-a
),这意味着同时使用-r
和-t
以及许多其他选项,这些选项在以下情况下很有用:创建一组文件的精确副本 ( -rlptgoD
):
rsync --archive -P user@server:datasets/ ./
请注意,这--rsh=ssh
是默认设置,除非远程服务器以特殊方式设置,否则您不需要使用它~
来获取主目录。