我正在使用自制的docker在两台机器之间同步文件。
在 docker 内部,使用 sshfs 安装 sftp 文件夹。
我总是使用 rclone 来同步文件:
rclone sync --create-empty-src-dirs -v /mnt/sftp/backup/ /mnt/local/ --bwlimit $backup_bwlimit --log-file /config/logs/sftp-$date.log --stats 120s
如果没有文件更改,此操作只需几分钟即可完成。大约有 10 万个文件,总计约 2.5TB 数据。
现在我尝试使用 rsync:
rsync -avq --stats --delete --log-file $logs_folder"rsync-"$today".log" --bwlimit $backup_bwlimit --link-dest=$dest_folder$last_backup $sftp_folder $dest_folder$today
到目前为止,仅仅处理大约 10,000 个文件就花了 7 个多小时,仅仅是“构建文件列表”。
虽然没有通过网络传输文件,但 rsync 每隔 5 秒左右就会在目标目录中硬链接一个新文件。它使用上次备份来创建硬链接。
有人知道这里的问题是什么吗