我正在处理一个需要进行文件传输的Python项目。连接的一端是高可用性(REHL 6)并且始终在线。但另一方面正在上下(Windows 7)并且连接期间无法保证。文件在两个方向上传输,大小在10MB到2GB之间。
是否可以使用paramiko恢复文件传输,而不是从头开始传输整个文件。
我想使用rSync,但一方是windows,我想避免cwRsync和DeltaCopy
答案 0 :(得分:2)
Paramiko不提供开箱即用的“恢复”功能,但是,SyncCify,DeltaCopy的重要继任者内置了重试,如果备份发生故障,服务器等待最多六个小时才能重新连接。非常可靠,易于使用和默认的数据差异。
答案 1 :(得分:0)
paramiko.sftp_client.SFTPClient
包含open
函数,其功能与python的内置open
函数完全相同。
您可以使用它来打开本地和远程文件,并手动将数据从一个文件传输到另一个文件,同时记录已传输的数据量。当连接中断时,您应该能够使用seek
方法从正确的位置(假设第三方都没有更改过任何文件)进行选择。
请记住,对此的简单实现可能比paramiko的get
和put
函数慢。