在 QNAP NAS 上,我尝试将一个巨大的备份目录从内部复制到 USB 磁盘。备份集是使用回溯创建的,因此它使用硬链接进行重复数据删除并使用 encfs 生成文件和目录名称。
运行时rsync -aH --inplace /share/MD0_DATA/Backups/ /mnt/t2/B/
我收到以下错误:
rsync 3.0.7(QNap 库存)
sync: mknod "/mnt/t2/B/home/8QxnYj…iE0pCkQxr" failed: No such file or directory (2)
rsync 3.2.7-1a(Entware)
rsync: [generator] mknod "/mnt/t2/B/home/8Qxn…iE0pCkQxr.26280" failed: File name too long (36)
文件名长度限制并非通常的 255/4096
我知道文件名长度为 255 字节,路径名限制为 4096 字节:但这似乎并不适用于我的情况。
- 单个文件/目录名最长只有47个字符
- 完整路径只有 294 个字符
- 源路径甚至更长!
- 源文件甚至是由使用与接收方相同的本地 rsync 回溯创建的。只是发送方和服务器不同。
touch
我可以轻松使用和创建和删除精确的路径rm
- 源和目标位于同一系统上,相同的文件系统类型(ext4),具有相同的挂载选项。
即,rsync 报告的一个示例路径如下:/mnt/t2/B/home/8QxnYjsi5RSEftKDx9qGbzq3/l7ZyYNV0C,yeUTgnIuhcEQBb/ayR8ehutEqbvovJLf36EYUH1/qeJqrGaptTSMwTPoezYN2mTb/-P-gLqJGmcDYgYp6GXsLX1uaucCW-nRUlhftGIeeRotg70/vBksKzx1a3G0lIbOPqKeJEe1/Er1HTeysXU8ENmZfYkbsAPCl/XyR8ehutEqbvovJLf36EYUH1/LzHu4oEpUPIXMypAwK5XGU7L/.y-gLkcg40i8ooEbiE0pCkQxr.26280
对于罪魁祸首和如何解决这个问题您有什么想法吗?
答案1
最后发现这两条错误信息只是误导:源文件似乎是一组备份套接字文件。只有这些文件才会产生这些错误。
srwxrwxr-x 1 ben ben 0 Jul 4 2021 y-gLkcg40i8ooEbiE0pCkQxr
有趣的是,声称的目标文件名是.y-gLkcg40i8ooEbiE0pCkQxr.26280
,而实际的源文件缺少源和前缀,实际上是y-gLkcg40i8ooEbiE0pCkQxr
(没有前导点和尾随数字)。