Unisonマニュアル - 概要
Unison は Unix 及び Windows に対応したファイルシンクロナイザです.異なるホスト (もしくは同じホスト上の異なるディスク) に別々に保存され変更されたレプリカ*1の間で,それらの内容を同期させることができます.
Unisonは,CVS や PRCS 等のリビジョン管理システム,Coda 等の分散ファイルシステム,rsync 等のミラーリングツール,そして Intellisync や Reconcile 等の他のシンクロナイザと多くの共通した特徴を備えていますが,同時に以下のような違いもあります.
- Unison は Windows (95/98/NT/2K) と Unix (Solaris/Linux etc.) の両方のプラットホーム上で動作します.それだけでなく,プラットホームを越えて動作することも出来ます.つまり,Windows の動いているラップトップと Unix で稼働しているサーバの間でファイルを同期させることができるわけです.
- 組み込みのファイルシステムと異なり,Unison はユーザレベルで動作します.カーネルをハックする必要はありませんし,どちらのホストにおいても管理者権限は必要ありません.
- 他の一方向性のミラーリングツールやバックアップユーティリティと異なり,Unison は両方のホストそれぞれについて (双方向に) ファイルの更新を行なうことが出来ます.一方のホストでのみレプリカが変更された (つまり衝突しない更新である) 場合には自動的にもう一方のホスト上のファイルも更新し,もし変更が双方のレプリカに対して行なわれている場合にはそれを検知し,ユーザに通知します.
- Unison はネットワークに接続された任意のホスト間で実行できます.ソケットによるダイレクトな TCP/IP 通信でも可能ですし,rsh や ssh で通信をトンネルすることもできます.PPP 接続のように細い回線でも十分に動作します.巨大なファイルの一部分のみを更新するような場合には,rsync のものに似た圧縮プロトコルによって最適化を行ないます.
- Unison には明確で詳細な仕様があります.
- Unison はエラーに強く作られています.プログラムの異常終了や突然の回線断の場合にも,常に双方のレプリカの状態を保ちます.
- Unison はフリーです.全てのソースコードは GPL の下で公開されています.
*1 訳注: ここでは同期の対象となるファイルやディレクトリ,もしくはそれら全体を指します.