Ubuntu と Mac 間の Rsync: iconv オプションを機能させる方法

Ubuntu と Mac 間の Rsync: iconv オプションを機能させる方法

私は通常、2 台の Ubuntu マシン間でバックアップを行いますが、今度は rsync を使用して、Mac 上にあるディスクで Ubuntu サーバーをバックアップしたいと考えています。しかし、うまく動作しません。

最初はすべて順調ですが、その後 rsync 操作を実行するたびに、特殊文字を含むファイルが最初に削除され、その後再同期されるため、どうやら Mac と Ubuntu マシン間の特殊文字に問題があるようです。異なる文字セットに問題があるようです。

推奨される解決策このオプションを使用するようです--iconv:

少なくとも Mac を使用している場合は、rsync の --iconv オプションを使用して、UTF-8 NFC と NFD を変換できます。UTF-8 NFD を表す特別な utf-8-mac 文字セットがあります。したがって、Mac から NAS にファイルをコピーするには、次のようなコマンドを実行する必要があります。

rsync -a --iconv=utf-8-mac,utf-8 localdir/ mynas:remotedir/

これにより、リモート サーバー上のすべてのローカル ファイル名が UTF-8 NFD から UTF-8 NFC に変換されます。ファイルの内容は影響を受けません。

それはすべてうまくいっているように思えますが、私の 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]

この問題を解決する方法について何か提案はありますか?

注意: 上記の「コード サンプル」では少し隠れているかもしれませんが、私の Mac の rsync バージョンは 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]

私が行います別のクエリしかし、このさらなる質問については。

答え1

OS X 10.5 には rsync 2.6.9 がありますが、iconv オプションは rsync 3.x でのみ使用できます。

Macでrsyncを更新するには、macports(インストール手順)。

Macport(およびHomebrew)チュートリアルが利用可能ここ

関連情報