CVSync は、リモートサーバ上のマスタ cvs(1) リポジトリからソースツリーを配布したり、更新したりするためのソフトウェアパッケージです。 OpenBSD のソースは、カナダの中央開発機上の CVS リポジトリでメンテナンスされています。 CVSync を使用して、OpenBSD ユーザは、 簡単に自分自身のソースツリーを更新することができます。
CVSync はプルモデルと呼ばれる更新方法を使用しています。プルモデルでは、 それぞれのクライアントはサーバに、更新が必要かどうか、そしてそれはいつなのか を問い合わせます。サーバはクライアントからの更新要求を受動的に待機します。 このように、すべての更新はクライアント側から行われ、決してサーバ側から頼まれてもいない更新を行うことはありません。 ユーザは、更新するために手動で CVSync クライアントを実行するか、これを自動的に、定期的に実行させるために cron(8) ジョブを設定しなければなりません。
CVSync は sup(1) や CVSup より高速かつ柔軟であることを意図しています。
OpenBSD プロジェクトでは、現状で以下の 5 個のソースリポジトリを持っています。
CVS は OpenBSD のソースツリーを管理するために使用されているソースコードコントロールシステムです。 これについてのより詳しいことは、こちらに記述されています。 CVS と CVSync は完全に異なるプログラムであるということに注意してください。 CVS は、リモートのファイルアクセスに使用することができますが、 ネットワーク経由で大規模なソースツリーの配布を行うように最適化されているわけではありません。 一方で、CVSync は桁違いに簡単に、より効果的にこの目的を達成することができます。
もし、CVSync の実行だけに専念したい場合には、自分のマシンの net/cvsync の ports から構築する代わりに、 ftp ミラーサイトから cvsync の packages をダウンロードすることをお勧めします。
CVSync についてのより詳しい情報は、 プロジェクトのホームページを参照してください。
OpenBSD のリポジトリを CVSync でミラーするためには、 以下の設定ファイルを使用することができるはずです。
config {
hostname anoncvs.de.openbsd.org
# If your network link is a T1 or faster, comment out the following line.
compress
collection {
name openbsd release rcs
prefix /cvs
umask 002
}
}
これは、anoncvs.de.openbsd.org から、ローカルリポジトリへのグループ書き込み可能なパーミッションの umask(2) で、すべての OpenBSD のディストリビューションの更新を CVSync に検出させる設定です。
このファイルを cvs-syncfile としてセーブするものとして、 cvsync を起動するために以下のコマンドを使用します。
cvsync -c cvs-syncfile
まず、CVSync されたリポジトリのいずれかひとつを単純にチェックアウトしましょう。
# cd /usr
# cvs -d /cvs checkout src
上記の操作で、ほとんどの現在のソースがチェックアウトされます。多くの方は、 特にシステムにパッチを適用する場合にリリースのソースが必要になるだけでしょう。 リリースのソースをチェックアウトするためには、たとえば以下の例のように、 コマンドにタグを指定する必要があります。
# cd /usr
# cvs -d /cvs checkout -rOPENBSD_3_5 src
これが 3.4 でしたら、OPENBSD_3_4 のようにしてください。
以下の CVSync サーバが利用可能です。
注: もし、あなたのサーバが、不正確な情報や知らない情報で ここにリストアップされていた場合、 beck@openbsd.org か naddy@openbsd.org に御連絡ください。
あなたは、どのサーバが最も自分に近いところにあるのかを見つけるために、 traceroute(8) を使いたいと思うかも知れません。 サーバに関する問題は、問題のサーバのメンテナに報告すべきです。
2005 年 12 月 12 日時点では、CVS リポジトリのサイズは以下のとおりです。
| openbsd-ports | - 204MB | |
| openbsd-src | - 1369MB | |
| openbsd-www | - 236MB | |
| openbsd-x11 | - 200MB | |
| openbsd-xf4 | - 531MB | |
| openbsd-cvsroot | - 301MB |
全体のリポジトリのサイズは、 現状では、年間 400MB 程度の割合で増加しています。
重要な注意事項: 誰もが知っておくべきこととして、暗号ソフトウェアに関しては 若干の問題があります。
OpenBSD のソースはカナダからのものなので、 カナダの個人によって研究されたものとして、また、 カナダの輸出制限リストの記述にあるように、 カナダから世界に向けての暗号ソフトウェアの輸出は合法的なものです。
しかしながら、あなたが、米国やカナダ以外の地域に住んでいるのなら、 あなたは米国内にある CVSync サーバから OpenBSD のソースの 暗号セクションを持っていくべきではありません。問題のファイルは次のとおりです。
米国の ITAR 軍需品リストによって、暗号ソフトウェアは、 米国からカナダだけに対して輸出されたものかも知れないのです。
OpenBSD プロジェクトでは、さらなる CVSync サーバを募集しています。 ですので、もし、あなたがこれに興味があるなら、設定の詳細に関して、ぜひ Christian Weisgerber に連絡を取ってください。