传输某些文件时 Rsync 停顿

传输某些文件时 Rsync 停顿

我的计算机运行的是 macOS 11,rsync 版本为 2.6.9,协议版本为 29。我的备份目标是 Synology NAS,运行的是 DSM 7.0,rsync 版本为 3.1.2,协议版本为 31。我通过本地网络上的 SSH 访问 Synology。NAS 存储有一个 Btrfs 文件系统。

对于数千个文件,rsync 进程和文件传输都是正确、快速且符合预期的。然后,进程将在文件中间停滞。当我终止并重新启动 rsync 进程时,它将停滞在同一文件的同一数据块上。当我删除备份目标中的部分传输文件并重新运行该进程时,它将传输完全相同的数据量并再次停滞。当我从源数据集中删除该文件并重新启动 rsync 时,它会正确地将数千个文件添加到备份位置,直到它在特定数据块上的另一个文件上停滞。然后重复。

我正在运行 rsync 的以下参数,但由于进度只是停滞而不是失败,因此没有有用的输出来解释该问题。

rsync -av --itemize-changes --progress --stats --human-readable /src user@host:/dest

相同的数据备份在 HFS+ 格式的 USB 外置硬盘上,使用 rsync 备份到该目标没有任何问题。因此,这意味着数据读取没有失败。在 Synology 上写入失败的数据块具体是什么?


第一次尝试创建文件时停止时的输出:

<f+++++++ photos_and_videos/videos/1163537_1151511378282944_34972_n_10150522682652944.mp4
      54.23M  55%   17.11MB/s    0:00:02

每次尝试运行该过程时都会停止输出:

<f.stp... photos_and_videos/videos/1163537_1151511378282944_34972_n_10150522682652944.mp4
           0   0%    0.00kB/s    0:00:00

答案1

该问题是由于 Synology 上的存储配额配置不正确(设置得太低)引起的。Rsync 在达到配额时没有失败,可能是因为文件系统空间不足不会触发与达到 Synology 上的存储配额相同的结果/错误。

相关内容