Я обычно копирую между двумя машинами Ubuntu, но я теперь хочу использовать rsync для резервного копирования моего сервера Ubuntu с диском, находящимся на Mac. Но я не заставляю это работать правильно.
В первый раз все хорошо, но по-видимому существует проблема со специальными символами между Mac и машиной человечности с каждого раза, когда я выполняю rsync операцию после этого, файлы со специальными символами сначала удаляются и затем повторно синхронизируются. Кажется, как будто существует проблема с различными наборами символов.
Предпочтительное решение, кажется, для использования --iconv
опция:
Можно использовать rsync's - iconv опция преобразовать между UTF-8 NFC & NFD, по крайней мере, если Вы находитесь на Mac. Существует специальный utf-8-mac набор символов, который обозначает UTF-8 NFD. Таким образом для копирования файлов от Mac до NAS необходимо было бы выполнить что-то как:
rsync -a --iconv=utf-8-mac,utf-8 localdir/ mynas:remotedir/
Это преобразует все локальные имена файлов от UTF-8 NFD до NFC UTF-8 на удаленном сервере. Содержание файлов не будет затронуто.
Это звучит как все и хорошо, но мой Mac, кажется, не распознает, что опция, так как я добираюсь:
> MyMachine:~ Macuser$ /usr/bin/rsync -av --delete --iconv=utf-8,utf-8-mac user@linuxmachine:/home/linuxuser/Test/ /Users/Macuser/Test/
> rsync: --iconv=utf-8,utf-8-mac: unknown option
> rsync error: syntax or usage error (code 1) at /SourceCache/rsync/rsync-42/rsync/main.c(1333) [client=2.6.9]
Какие-либо предложения о том, как эта проблема должна быть решена?
Отметьте, как, возможно, немного скрыт в 'примере кода' выше, rsync версия на моем Mac 2.6.9.
Править: Хотя Jan решил эту проблему (см. мой отмеченный ответ), я все еще не вполне там, так как я теперь получаю новую ошибку:
iconv_open("UTF-8", "utf-8-mac") failed
rsync error: requested action not supported (code 4) at rsync.c(118) [sender=3.0.9]
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [Receiver=3.1.1]
Я сделаю отдельный запрос для этого дальнейшего вопроса, как бы то ни было.
OS X 10.5 имеет rsync 2.6.9, но iconv опция только доступна в rsync 3.x....
Для обновления rsync на Mac Вы могли использовать macports ( инструкции по установке ).
А Macport (и Домашнее пиво) учебное руководство доступно здесь .