我在 R1soft 服务器上创建了大型磁盘安全文件(71GB)。我想将它的副本保存到远程备份服务器并在有任何更改时同步它(复制完成后)。据我了解,rsync 是执行此操作的完美工具,因为它在整个文件的两侧运行校验和,比较文件小段的校验和,然后只复制那些不匹配的块。
但是,根据我的测试,rsync 在比较校验和后会在远程备份服务器上制作文件的完整副本。R1soft 复制中的增量更改每天只有不到 1 GB,为什么 rsync 传输整个文件而不是远程备份服务器的更改?
在 disksafe 目录中,只有一个 71GB 的 .db 文件。运行 rsync 时,它会在同一目录中创建另一个副本。一旦 rsync 完成,原始文件将被更新并在该目录中只保留一个。
-rw--------。1 根 71G 12 月 10 日 17:38 b5c9b515-47f9-48a0-b6f6-062f13559dad.db
-rw--------。1 根 69G 12 月 15 日 12:35 .b5c9b515-47f9-48a0-b6f6-062f13559dad.db.tc9w7A
这是我使用的 rsync 命令:
rsync -avz --progress /disksafes/2abd4a9a-3a76-40fa-b034-afd29a49f3e3/ remote_server_ip:/disksafes/remote_backup/
利用
--inplace
--inplace 参数指示 rsync不要先将新文件作为临时文件上传。
由于网络问题,这可能是有风险的 // 断开连接可能会使 dest 文件处于奇怪的状态。