Index > NASとMacOSX10.4とrsyncとか...バックアップ環境構築試行錯誤(nas)
Sun, November 30, 2008

NASとMacOSX10.4とrsyncとか...バックアップ環境構築試行錯誤(nas)

いま、災害対策のために、いわゆるコロケーション的な発想で、 社内の重要なデータを遠隔地にミラーするための環境構築をしています。

遠隔地にあるサーバにインターネット経由でコピーする、ということで、 ssh + rsync という組合わせで行こう、というところまではよかったのですが、 社内の実情にあわせて、テストを開始すると問題が多いことがわかってきました。

まず、社内では、NASを使っていて、クライアントはウインドウズの使用が基本。 一部はMacという状況なので、 ウインドウズ中心に組み立てると話が早いです。 しかし、ウインドウズでssh,sshd,rsyncを使うには、Cygwinを使う必要があり、 Cygwinは、NASとのデータやりとりで日本語ファイルで問題があるようです。 (詳しくは調査していないが、以前テストした記憶では、file has vanishedというエラーが出る。)

また、管理上Cygwinなどをわざわざ入れるのが煩わしい,トラブルになったときに対応する人がいない ...という問題もあり、 あらかじめ ssh,sshd,rsyncがインストール済のMacOSXをベースに ミラーバックアップ環境を構築することにしました。

事前テスト

まずは、その一環として、事前テストを行いました。

MacOSX(10.4 Tiger)上で、rsyncを使って、 NAS(TeraStation)上のデータのバックアップテストを行ったのですが、いきなり問題山積です。

と勝手に思い込んでいたのですが、考えが甘すぎるようです。
何も考えずに

$ rsync -av /Volumes/nas/ /Volumes/local-usb-hdd/

(※/Volumes/nas/ は TeraStationをafp://でマウントしている.)

のような処理をすると、大量に file has vanished という エラーが出ます。 はっきりとした原因がわかっていないのですが、 afp接続の場合は、ファイル名が長すぎる(32byteまで)とNGとか、 smbで接続した場合は、日本語ファイルが扱えないとか、 いろいろ制約があるようです。

ちなみに、/Volumes/nas/ の内容をWindows経由で USBハードディスクにコピーした上で、

$ rsync -av /Volumes/local-usb-hdd/ /Users/foo/test/

のようにした場合、file has vanished というエラーは出ないので、 原因は、afp でTeraStationに接続している部分にありそうです。

ネットで検索してみると、 MacOSX(10.4 Tiger)に搭載されているsambaはVersion2.2のようです。 MacOSX(10.5 Leopard)では、sambaがVersion3.0 になっていて ウインドウズとの相性がよくなっているという話なので こちらに期待しましょう。 (テスト環境がないので、まだ10.5でのテストはしていない。)

 Twitter
follow me on Twitter
 Categories