背景
我的 Mac 上有大量文件,我首先将它们复制到 FAT32 硬盘,现在迁移到 Synology NAS(在我的例子中是带有 DSM 6 的 DS216,内部使用 ext4)rsync
。我尝试使用 Synology“USB Copy”将这些文件复制到另一个 FAT32 USB 卷。我很想使用这个工具,因为它允许在连接特定 USB 设备时自动触发复制作业。
问题
USB 复制以无用的错误消息结束
ds216 上的 USB 复制任务 My_Backup_Task 遇到未知错误。最后的错误代码是-10。请重试或联系 Synology 支持寻求帮助。
当我比较源文件树和目标文件树时,某些文件丢失了,尤其是其中包含元音变音 (äöü) 的文件。
关于为什么会出现这种情况以及如何解决它有什么想法吗?
答案1
这是一个错误在“USB 复制”中。 OSX 以不同的方式对变音符号进行编码(NFD 而不是 NFC,请参阅这里和这里)。 “USB Copy”无法处理这些名称,它只能处理 NFC 编码的文件名。埋在日志 /var/log/usbcopyd.log.1.xz 中,您可以找到类似的内容
usb-copyd: [WARN] event-manager.cpp(192): EVENT is not NFC Form 'Event<EV_COPY> (WAITTING): [4] /path/filename_with_Umlaut_ä.JPG (file_op,file)', skipping...
...所以他们知道他们不能这样做,但不向用户提供有用的错误消息:-(
一个乐于助人的解决方法convmv
根据,可能是用来重命名文件的这个博客你可能会成功
pkg install perl
wget http://www.j3e.de/linux/convmv/convmv-1.15.tar.gz
tar xzvf convmv-1.15.tar.gz
cd convmv-1.15/
sed -i -e 's/usr/opt/1p' convmv
/opt/bin/convmv/convmv -f iso-8859-1 -t utf8 --notest -r /volume1/yourpath
另请参阅此那么问题更多细节。
根据这个SF的回答,您也可能在rsync
使用该--iconv
选项运行时避免了该问题,例如
rsync -a --iconv=utf-8-mac,utf-8 localdir/ mynas:remotedir/
...但我不确定当您有混合 NFC / NFD 目录树时这是否有帮助。