我有一个运行FreeNAS 8的家庭文件服务器。前几天我使用rsync从Mac上传我的整个iTunes资料库,这样我就可以通过networking加载我的资料库,而不是慢速的USB驱动器。 这大部分工作,iTunes现在运行得更好,但我遇到的问题访问任何非ASCII字符的歌曲(我第一次注意到加载Queensrÿche轨道时的问题)。 这些文件将显示在Finder中,但是任何尝试访问它们都会使它们消失,直到重新连接到服务器。 经过一番研究,我发现这是因为OSX使用了Linux中不同的UTF字符顺序。 OSX文件系统使用Unicode规范化表单D(NFD),其中linux使用表单C(NFC)。 当Rsync执行从我的mac到服务器的副本时,它不会转换这些表单,现在当iTunes试图通过networking访问具有特殊字符的文件时,服务器上的文件具有错误的编码和afpd报告,不存在。 解决这个问题的最好方法是什么? 是否有可能使rsync执行unicode转换,而上传基础库到服务器? 我可以configurationafpd以NFD格式发送/接收文件名吗? 有一个简单的解决scheme来更改服务器上的文件名? 我发现了一些关于名为convmv的程序的东西,但我不知道是否可以在FreeNAS上运行。
在我的Macterminal上,打印UTF-8的工作原理一般,但less不能正常工作。 所以这工作正常: $ echo -e '\xe2\x82\xac' € 但是把它变成更小的东西就是这样的: $ echo -e '\xe2\x82\xac' | less <E2><82><AC> 这怎么解决? 诊断: 我正在使用Mac OS 10.6.8。 less版本418,terminal2.1.2(273.1)。 我的语言环境的输出是这样的: $ locale LANG="en_US.UTF-8" LC_COLLATE="C" LC_CTYPE="C" LC_MESSAGES="C" LC_MONETARY="C" LC_NUMERIC="C" LC_TIME="C" LC_ALL="C"