Anonymous CVS
目次
Anonymous CVS は、現時点での OpenBSD ソースに対して加えられた更新に関して、
OpenBSD のソースツリーのあなたのローカルなコピーを最新に維持しておくための
方法です。開発の最先端に追従することに加えて、リリースの errata のための
パッチを追跡することもまた可能です。
他のソースコード更新技術に対する Anonymous CVS の主な利点は、中央の
ソースコードリポジトリかミラーに対して、それが直接働くということ
でしょう。これはつまり、あなたの変更と他のソースの変更に関する更新や
マージを制御したり、diff を取ったり、変更履歴や他のことを中央の
リポジトリに対して質問したりするために、フルセットの CVS コマンドを
あなたは使用できるということです。
OpenBSD プロジェクトは、現状では、次の 5 個の主ソースリポジトリを持っています。
- src - OpenBSD オペレーティングシステムの全ソースコードを収容。
- ports - OpenBSD Ports を収容。
- www - すべての OpenBSD の Web ページ (このページを含む) を収容。
- X11 - OpenBSD 対応の
XFree86-3 ソフトウェアプロジェクトを収容。
これは歴史的な理由で残されてるもので、ほとんどのユーザにとっては不要です。
現在は使われていません。
- XF4 - OpenBSD 版の X の開発用ソースツリー。
要約しますと、Anonymous CVS を使用することの実際の強みは、それが「寛容な」
ソースコードコントロールシステムであるということであり、それは、あなたが
そのまま続けずに解決しなければならない難問のリストを放置するのではなく、
むしろ、あなたのローカルなソースに対してあなたが加えた変更と、あなたの
全体のソースツリーを更新するための「最善の努力」をする
ことを尊重するということです。
CVS とは、
OpenBSD のソースツリーを管理するのに使用されている
ソースコードコントロールシステムです。
それは、すべての正式にリリースされたソースコードとそれに対する
変更のための中央のリポジトリを実装する一方で、開発者に対しては彼らの作業中の変更を
含むソースコードのローカルなコピーを保守することを許しています。
ソースツリーへのアクセスには、次の 2 種類のレベルがあります。
- 読み書きアクセス (開発者用)
変更をソースツリーにコミットする必要がある開発者は、OpenBSD プロジェクトの
マシンにアカウントを持っていなければなりません。
ソースに対して他の OpenBSD 開発者と共同作業をするということは、通常、
このアクセスを得るということです。
すばらしい作業をしてる誰かが、それが OpenBSD のチームと共同でできるものだと
示したなら、その人にアカウントが発行されるでしょう。
- 読み出し専用アクセス (誰でも可能)
読み出し専用 CVS リポジトリには、誰でもアクセスすることが可能です。
ミラーサーバもたくさんあります。
CVS の主な強みは、あなたの行ったあなたのローカルなコピーに対する変更とともに、
中央のリポジトリに対する変更のインテリジェントなマージを実行可能なことでしょう。
これは、もし、あなたがモジュールに対して変更を加えて、更新を実行した場合にも、
あなたの変更が「吹き飛ばされる」ようなことがないことを意味しており、むしろ、
CVS は、中央のソースに対する変更とあなたがあなたのローカルなコピーに対して
加えた変更とをマージするよう、最大限の努力を払おうとします。
変更を完全にマージできなかった場合には、CVS は「柔軟なフォールバック」を提供し、
また、あなたのローカルなコピーに対する注釈された変更を提供し、あなたのバージョンの
変更されていないコピーを保存し、そして、あなたの要求した他のソースモジュールの
更新を継続します。
AnonCVS サーバからはソースコード全体をダウンロードすることもできますが、
OpenBSD の CD や FTP サーバからダウンロードしたソースファイルをあらかじめ
用意しておくことで、
時間やネットワーク帯域を大幅に短縮することができます。
-release と -stable の間に加えられる変更点は比較的少ないので、
これは -stable を運用している場合に
特に有利な方法です。
CD から /usr/src に CVS ツリーをコピーするには、次のようにします
(CD は /mnt にマウントされているものと仮定します)。
# cd /usr/src; tar xzf /mnt/src.tar.gz
# cd /usr; tar xzf /mnt/XF4.tar.gz
# tar xzf /mnt/ports.tar.gz
FTP サーバからダウンロードしたソースファイルは、ソースツリーの一部を
入手したいという人の時間を節約できるように、2 個のファイルに分かれています。
この 2 個のファイルとは、カーネルの構築に必要な sys.tar.gz という
ファイルと、その他のユーザランドユーティリティが含まれる src.tar.gz
です。
特別な理由がなければ、両方をインストールすべきでしょう。
ダウンロードしたファイル src.tar.gz と sys.tar.gz が、
/usr に置かれている場合、次のようにします。
# cd /usr/src
# tar xzf ../sys.tar.gz
# tar xzf ../src.tar.gz
# cd /usr
# tar xzf XF4.tar.gz
# tar xzf ports.tar.gz
この 2 個のファイルを必ず展開しなければならない、というわけではありませんが、システム全体は
互いに同期がとれていなければならないため、通常はツリー全体を用意する必要があります。
cvs(1) を使って、ソースリポジトリを"チェックアウト"することも可能です。
具体的な手順については、次のセクションで解説します。
その後、/usr/src は、良きチェックアウトのための領域となり、ここで、すべての
cvs(1)
コマンドがうまく動くことでしょう。
CVS は、ソースを受け取り、それを更新するための単純な方法であることを目指して
設計されたものです。まず最初に、追いかけるのは -current なのか、
パッチブランチ なのかを決める必要があります。
-current ツリーには細かい変更のすべてが含まれており、
パッチブランチは、正式リリースに加え、errata
の修正パッチや影響の小さな問題の修正が既に適用されたものとなっています。
このような OpenBSD の"種類"については、
ここをご覧ください。
いったん、追いかけるツリーを決めたら、どの Anonymous CVS サーバを
使うのかを選択しなければなりません。これらのサーバのリストは、
このページの下のほうにあります。
どの Anonymous CVS サーバを使うのかを選択したら、
cvs を使い始めることができます。
CD をお持ちの人は、自分のシステムにソースを取得するために、
上記の方法で CD 上の CVS のチェックアウトで cvs を使い始められます。
もし、CD をお持ちでないなら、ソースをチェックアウトするために次の方法をお使いください。
この方法は、OpenBSD のソースを /usr/src に置くためのものです。
# cd /usr; cvs checkout -P src
上記の方法は、-current のソースツリーをチェックアウトすることになります。多くの人に
とっては、パッチブランチのソースが欲しいことでしょう。このパッチブランチをチェックアウト
するためには、次の例のようにコマンドライン上でタグを指定する必要があります。
# cd /usr; cvs checkout -P -rOPENBSD_3_9 src
これは、3.8 の場合なら、OPENBSD_3_8 となります。
OPENBSD_3_9 のタグは、リリースのソースと適用済の errata
を含んでいます。
以下の ssh vs. rsh に関する注を御参照ください !
- CVSROOT=anoncvs@anoncvs2.de.openbsd.org:/cvs
所在地: University of Erlangen-Nuremberg, Erlangen, Germany
保守担当:Alexander von Gernler
対応プロトコル: ssh、ssh port 2022、pserver
更新間隔: 2 時間
SSH fingerprints:
(RSA) 1024 fc:94:b0:c1:e5:b0:98:7c:58:43:99:76:97:ee:9f:b7
(DSA) 1024 a9:00:3f:ba:50:81:16:d1:e9:b8:4f:3c:b2:10:e2:6c
- CVSROOT=anoncvs@anoncvs1.usa.openbsd.org:/cvs
anoncvs.usa.openbsd.org、anoncvs4.usa.openbsd.org という別名があります
所在地: Redwood City, CA, USA
保守担当:Todd Miller
対応プロトコル: rsh、ssh、ssh port 2022、pserver
更新間隔: 2 時間
SSH fingerprints:
(RSA1) 1024 64:de:26:16:c2:ff:1b:c7:24:ed:a4:4a:d7:2f:69:3e
(RSA) 1024 49:67:9a:46:62:8a:3f:4e:b3:63:ca:d6:41:29:2a:2f
(DSA) 1024 a7:75:49:77:f3:47:d1:3c:5e:65:84:84:3b:03:f1:33
- CVSROOT=anoncvs@anoncvs3.usa.openbsd.org:/cvs
所在地: National Center for Atmospheric Research, Boulder, CO, USA
保守担当:Todd Miller
対応プロトコル: rsh、ssh、ssh port 2022、pserver
更新間隔: 2 時間
SSH fingerprints:
(RSA1) 1024 34:95:19:c2:b3:e7:61:7b:39:e8:ab:86:37:cd:c4:49
(RSA) 1024 42:56:39:98:65:05:e7:2a:98:2b:ee:cc:e5:a3:53:ed
(DSA) 1024 e3:e7:83:ef:f6:78:dc:d3:ca:a5:cf:64:c6:b7:4f:43
- CVSROOT=anoncvs@rt.fm:/cvs
所在地: Lake in the Hills, IL, USA
保守担当:Joshua Stein
対応プロトコル: ssh
更新間隔: 3 時間
SSH fingerprints:
(RSA) 1024 54:74:ca:17:d0:07:c3:53:b7:7e:1d:9b:10:bf:04:37
(DSA) 1024 46:78:40:52:7a:18:f9:0e:68:61:b0:27:29:f9:d9:c4
- CVSROOT=anoncvs@anoncvs2.at.openbsd.org:/cvs
anoncvs.catai.net という別名があります
所在地: Vienna, Austria
保守担当:Martin Reindl
対応プロトコル: ssh、ssh port 2022
更新間隔: anoncvs.de.openbsd.org から 2 時間
- CVSROOT=anoncvs@anoncvs.openbsd.org.br:/cvs
所在地: Curitiba, Brazil
保守担当:Leonardo Chiquitto Filho
対応プロトコル: ssh、ssh port 2022
更新間隔: 3 時間
SSH fingerprints:
(RSA) 1024 83:ff:c5:a1:ff:78:50:0a:56:8f:a3:4f:1a:a4:1b:13
(DSA) 1024 03:c1:7d:00:38:4f:91:6d:2f:f5:97:8f:b5:42:2e:00
- CVSROOT=anoncvs@anoncvs1.ca.openbsd.org:/cvs
anoncvs.ca.openbsd.org, openbsd.sunsite.ualberta.ca という別名があります
所在地: Edmonton, Canada
保守担当:Bob Beck
対応プロトコル: ssh、rsh、ssh port 2022、pserver
更新間隔: 2 時間
- CVSROOT=anoncvs@cvs.openbsd.cz:/cvs
所在地: Prague, Czech Republic
保守担当:Vladimir Kotal
対応プロトコル: ssh、pserver
更新間隔: 4 時間
- CVSROOT=anoncvs@anoncvs.skyrock.com:/cvs/openbsd
所在地: Paris, France
保守担当:Frank Denis
対応プロトコル: ssh、ssh port 2022
更新間隔: anoncvs3.usa.openbsd.org から 2 時間
SSH fingerprints:
(RSA1) 2048 4d:60:d8:ab:bc:c6:29:64:b4:45:1b:98:2b:fe:40:7e
(RSA) 2048 01:f1:c4:25:c8:e3:0d:0e:7a:33:94:14:f4:9d:98:5f
(DSA) 2048 73:36:41:46:fd:0a:67:df:e6:c1:4a:6b:02:61:f4:61
- CVSROOT=anoncvs@anoncvs.de.openbsd.org:/cvs
grappa.unix-ag.uni-kl.de という別名があります
所在地: University of Kaiserslautern, Kaiserslautern, Germany
保守担当:Christian Weisgerber
対応プロトコル: ssh、ssh port 2022、pserver
更新間隔: 6 時間
SSH fingerprints:
(RSA) 1024 cf:a9:ee:a4:60:5d:66:00:50:5b:fd:d3:72:04:14:a3
(DSA) 1024 78:d4:19:da:df:6f:c0:14:7f:4a:55:2a:e9:82:5f:e4
- CVSROOT=anoncvs@mirror.osn.de:/cvs
所在地: Nürnberg, Germany
保守担当:Armin Wolfermann
対応プロトコル: ssh
更新間隔: 4 時間
SSH fingerprints:
(RSA) 1024 f2:73:d2:f6:e3:01:ef:ca:3b:e7:6c:80:b6:bd:bb:84
(DSA) 1024 fb:33:05:62:96:20:cf:88:7e:10:cb:8d:91:72:57:32
- CVSROOT=anoncvs@anoncvs.silihost.hu:/cvs
所在地: Budapest, Hungary
保守担当:Robert Nagy
対応プロトコル: ssh
更新間隔: anoncvs.de.openbsd.org から 3 時間
- CVSROOT=anoncvs@anoncvs.jp.openbsd.org:/cvs
kankoromochi.econ.nagasaki-u.ac.jp という別名があります
所在地: Nagasaki University, Faculty of Economics, Nagasaki, Japan
保守担当:Suzuki Itoshi
対応プロトコル: ssh、pserver
更新間隔: 3 時間
- CVSROOT=anoncvs@anoncvs.openbsd.lt:/cvs
所在地: TVK, Cable TV and Internet Services, Taurage, Lithuania
保守担当:Donatas Budvytis
対応プロトコル: ssh
更新間隔: cvsup.no.openbsd.org から 3 時間
- CVSROOT=anoncvs@anoncvs.nl.openbsd.org:/cvs
anoncvs.calyx.nl という別名があります
所在地: Amsterdam, The Netherlands
対応プロトコル: ssh
更新間隔: 3 時間
- CVSROOT=anoncvs@anoncvs.no.openbsd.org:/cvs
cvs.inet.no という別名があります
所在地: Oslo, Norway
保守担当:Michael Schuldman
対応プロトコル: rsh、ssh、ssh port 2022
更新間隔: 4 時間
- CVSROOT=anoncvs@openbsd.chem.uw.edu.pl:/cvs
所在地: Warsaw, Poland
保守担当:Piotr Klein
対応プロトコル: ssh
更新間隔: 3 時間
- CVSROOT=anoncvs@anoncvs.student.pw.edu.pl:/cvs
所在地: University of Technology, Warsaw, Poland
保守担当:Darek Marcinkeiwicz
対応プロトコル: ssh
更新間隔: 3 時間
- CVSROOT=anoncvs@anoncvs.se.openbsd.org:/cvs
所在地: Stacken computer club, Stockholm, Sweden
保守担当:Hans Insulander
対応プロトコル: ssh
更新間隔: 3 時間
- CVSROOT=anoncvs@anoncvs.openbsd.org.ua:/cvs
所在地: Kiev, Ukraine
保守担当:Sergey Smitienko
対応プロトコル: ssh
更新間隔: cvsup.uk.openbsd.org から 6 時間
SSH fingerprints:
(RSA1) 1024 4e:c6:f1:4d:df:6f:46:61:cc:9d:0b:d6:f2:ae:44:56
(RSA) 1024 2d:b0:e6:43:8c:cf:76:14:7d:3c:52:5e:a9:2a:56:ae
(DSA) 1024 63:7c:8c:ce:31:c9:0a:ce:05:9e:1c:8b:f2:18:77:48
- CVSROOT=anoncvs@mirror.sese.asu.edu:/cvs
所在地: Arizona State University, Tempe, AZ, USA
保守担当:Mark Peoples
対応プロトコル: ssh
更新間隔: anoncvs3.usa.openbsd.org から 4 時間
- CVSROOT=anoncvs@mirror.sg.depaul.edu:/cvs
所在地: DePaul University, Chicago, IL, USA
保守担当:Eric Pancer
対応プロトコル: ssh、ssh port 2022、pserver
更新間隔: 2 時間
SSH fingerprints:
(RSA1) 1024 5b:1c:cb:b7:5f:82:82:cc:af:13:21:a4:2c:c2:55:6b
(RSA) 1024 18:0f:97:2a:cf:6c:7f:d4:ca:2b:bc:c8:b9:56:2b:86
(DSA) 1024 65:cb:ce:7c:3e:29:5c:82:0b:9d:fa:b7:bb:e0:4b:47
- CVSROOT=anoncvs@anoncvs.nyc.openbsd.org:/cvs
所在地: New York Internet, New York, NY, USA
保守担当:Michael Shalayeff
対応プロトコル: rsh、ssh、ssh port 2022、pserver
更新間隔: 2 時間
SSH fingerprints:
(RSA1) 1024 ff:97:fc:34:c6:09:7f:b2:bd:31:4e:d5:51:ce:f3:44
(RSA) 1024 05:ac:be:be:f8:f6:ab:63:5e:80:6c:be:d3:31:41:cd
(DSA) 1024 89:be:38:4d:2a:1b:1a:db:93:65:9d:36:7f:ee:d2:76
注: もし、あなたのサーバが、不正確な情報や知らない情報で
ここにリストアップされていた場合、
beck@openbsd.orgに御連絡ください。
あなたは、どのサーバが最も自分に近いところにあるのかを見つけるために、
traceroute(8)
を使いたいと思うかも知れません。
サーバに関する問題は、
問題のサーバのメンテナに報告すべきです。
重要な注意事項:
誰もが知っておくべきこととして、暗号ソフトウェアに関しては
若干の問題があります。
- OpenBSD のソースはカナダからのもの
なので、
カナダの個人によって研究されたものとして、
また、
カナダの輸出制限リストの記述にあるように、
カナダから世界に向けての暗号ソフトウェアの輸出は合法的なものです。
- しかしながら、あなたが、米国やカナダ以外の地域に住んでいるのなら、
あなたは米国内にある Anonymous CVS サーバから OpenBSD のソースの
暗号セクションを持っていくべきではありません。問題のファイルは次のとおりです。
- src/kerberosIV/*
- src/kerberosV/*
- src/lib/libdes/*
- src/lib/libc/crypt/crypt.c
- src/lib/libc/crypt/morecrypt.c
- src/sys/crypto
- src/sys/netinet
- src/usr.sbin/afs/src/rxkad/*
- XF4/xc-mit/lib/Xdmcp/Wraphelp.c
- XF4/xc-old/lib/Xdmcp/Wraphelp.c
- XF4/xc/lib/Xdmcp/Wraphelp.c
米国の ITAR 軍需品リストによって、暗号ソフトウェアは、
米国からカナダだけに対して輸出されたものかも知れないのです。
注意: もし、(パッチブランチのような) ブランチを -current に更新したい場合、
-A
フラグを cvs に追加することができますが、このフラグは他にはほとんど
使い道がないものです。古目のバージョンのバージョンの OpenBSD のドキュメンテーションでは、
多くの例の中で、このフラグの使用が推奨されていました。我々は最早、絶対に必要でない限りは、
このフラグを推奨していません。
Anonymous CVS サーバの使用法の例は次のとおりです。
$ cd /tmp
$ cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs get src/sys/arch/sparc
[リポジトリからあなたのマシンへファイルをコピー]
$ cd src/sys/arch/sparc
$ cvs log locore.s
[選択したファイルのコミットログを表示]
$ cvs diff -bc -r1.1 -r1.5 locore.s
[リビジョン 1.1 とリビジョン 1.5 との間の変更点を表示]
cvs を ``pserver'' (ssh や rsh を使用する代わりの直接の TCP 接続)
で使用する場合には、いったん login しなければなりません。
$ cvs -d :pserver:anoncvs@anoncvs.ca.openbsd.org:/cvs login
(anoncvs@anoncvs1.ca.openbsd.org への login)
CVS password: anoncvs
[この行を ~/.cvspass に書く (ファイル名は CVS_PASSFILE がオーバーライドします)。]
[上記において、'blah' とタイプした後の私の ~/.cvspass 内の行の一例 ]
[password is: ]
[:pserver:anoncvs@anoncvs5.usa.openbsd.org:/cvs Au'yc ]
[一度 login した後は、他のすべての上記の CVSROOT が動くようになるでしょう。 ]
$ cvs -d :pserver:anoncvs@anoncvs.ca.openbsd.org:/cvs get ksrc-i386 ksrc-common
[あなたは、i386 カーネルを再構築するのに必要なものだけ、受け取ることができます。]
Anonymous CVS を使用する人が、普通に自分のソースツリーを更新
するには、
- まず、初期のツリーを `get' します。
(もし、-current を追いかけているのなら):
# cd /usr
# cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -P src
(もし、3.9 のパッチブランチを追いかけているのなら):
# cd /usr
# cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -rOPENBSD_3_9 -P src
- その後、いつでもこのツリーを `update' するには:
(もし、-current を追いかけているのなら):
# cd /usr/src
# cvs -q up -Pd
(もし、3.9 のパッチブランチを追いかけているのなら):
# cd /usr/src
# cvs -q up -rOPENBSD_3_9 -Pd
これを実行するごとに、いつでも自分の /usr/src ツリーを同期させるでしょう。これに
よってあなたのローカルな変更が壊されることはなく、むしろ、変更をマージしようと
試みます。
- 注:
もし、最初に異なるサーバから持ってきた、あるいは CD から持ってきたソースツリーを更新しようと
するのでしたら、-d anoncvs@anoncvs.ca.openbsd.org:/cvs オプションを cvs の
コマンドラインに追加する必要があります。
# cd /usr/src
# cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs -q up -Pd
ports を使うのも、src と同様です。
-
(もし、-current を追いかけているのなら):
# cd /usr
# cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -P ports
(もし、3.9 のパッチブランチを追いかけているのなら):
# cd /usr
# cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs get -rOPENBSD_3_9 -P ports
- その後、いつでもこのツリーを `update' するには:
(もし、-current を追いかけているのなら):
# cd /usr/ports
# cvs -q up -Pd
(もし、3.9 のパッチブランチを追いかけているのなら):
# cd /usr/ports
# cvs -q up -rOPENBSD_3_9 -Pd
上記の例において、cvs の出力を最小化させるために、-q オプションも
指定可能です。画面いっぱいの出力がお好みの向きには、これのオプションは
外しておいた方が幸せでしょう。
また、ローカルにパッチを当てたモジュール (ここでは cd.c) をバグレポートに
含めるために diff を取るには、
# cd /usr
# cvs diff -u src/sys/scsi/cd.c > /tmp/patch
(CVS ソースに含まれている)
cvs(1) マニュアルページには、
もっと多くの CVS の使い方についての情報があります。
警告:
cvs を使用する場合には、カレントディレクトリが、参照しているツリーの root か、
/tmp のような独立した場所かのどちらかになっているよう、注意すべきでしょう。
"get" のようなコマンドの場合、カレントディレクトリの下に、任意のサブツリーを作成
できてしまいますので、これに続く更新は再帰的にこのサブツリーを更新していくでしょう。
Anonymous CVS サービスは、経験の浅い開発者にとって、CVS のオペレーションを
学び、"commit" アクセスを経験するまでの、とても複雑な開発プロセスを経験するための
絶好のチャンスを提供していますが、高品質で有用な技術を見せることの結果として、
彼らはいずれ自然に開発者としてのアクセスを与えられるようになるでしょう。
同様に、パッチを提供する人は、CVS ツリーに関係する自分の "diff" を作成することが
できますが、それは、簡単に統合できるものでしょう。
CVS は、サーバ・クライアント間で 3 種類のアクセス方法に対応しています。
- ssh: anonymous CVS サーバへのアクセスに Secure Shell を使います。
情報が暗号化されるため、おすすめの方法です。
- rsh: ssh を使うことが
できないユーザ向けに用意されたサーバには、Remote Shell
に対応したものがあります。
- pserver: pserver は、上記の 2 種類の方法がファイアウォールによって
遮断されてしまっているユーザにとって特に有用な方法です。
注意: rsh を使う人場合は、最初に CVS_RSH 環境変数に
rsh(1) プログラムのパス名を設定する必要があります。
OpenBSD の CVS クライアントはデフォルトで、CVS サーバとのやり取りに ssh ("secure shell":
OpenSSH) を使用します。
多くの CVS サイトは、最早セキュリティ上の理由から rsh をサポートしていません。
ファイアウォール等のローカルな問題や、slirp のような不完全なプロトコルエミュレータ
もまた、rsh の利用の邪魔になるかも知れません。しかし、それでも、もし、rsh を使う必要が
ある場合には、CVS_RSH 環境変数に rsh を指定しなければなりません
(典型的には /usr/bin/rsh です)。
もし、ローカルなポリシーが ssh のデフォルトポートの 22 番の外との接続を邪魔する場合、
ポート 2022 がその代わりに使用されるかも知れません。しかしながら、それはすべての Anonymous
CVS サーバがこのポートでの ssh 接続を受け付けるわけではないことに注意する必要があります。
さらに、セキュリティ上の理由から、最近のバージョンの ssh では、暗号なし
が無効化されていますので、ほとんどの Anonymous CVS サーバは最早この接続を受け付けません。
また、CVS では既に圧縮が有効ですので、ssh での圧縮を有効にしようとはしません。
上記に述べた制限や落し穴を避けるために、
$HOME/.ssh/config コンフィグレーションファイルなどを
指定することができます。
Host anoncvs.ca.openbsd.org
Compression no
Port 2022
CVS をスタートする際は、少々騒々しいので、少し静かにさせるために、
次のようなことをしたくなるかも知れません。
$ export CVS_CLIENT_PORT=-1
OpenBSD のツリーそのものをミラーしようとするユーザは、
anoncvs.usa.openbsd.org や anoncvs3.usa.openbsd.org
(これらは異なるマシンです) から、そうしようとするかも知れません。しかし、これらは
cvs ツリーであり、ソースツリーをチェックアウトしているのではないことに注意
する必要があります。これは、もし、高速な cvs オペレーション (diff、annotate 等) や、
もし、複数のソースツリーを持ち、新しいものを転送したい (そうすれば、ローカルな cvs
ミラーからツリーをチェックアウトすることができます) 場合にのみ有用でしかありません。
supfile の例は次のとおりです。
cvs host=anoncvs.usa.openbsd.org hostbase=/ base=/home delete
これは、/home/sup の中の最後の sup データファイルとともに cvs ツリーを
/home/cvs にミラーするでしょう。すべての OpenBSD cvs ツリーは、現状では
およそ 2.5GB のサイズになります。もちろん、これは今後も増え続けるでしょう。
もし、あなたが Anonymous CVS のミラーサイトを構築して、
それを一般公開しようとお考えでしたら、Anonymous CVS
のメンテナに御連絡ください。
Anonymous CVS ミラーは約 2.2GB のディスク容量を必要とし、Anonymous CVS ユーザ
ひとり当たり 32MB までのスワップを使用する (ユーザが大きなオペレーションを行なった
場合です; 小さなオペレーションの場合は、より少量のリソースですみますが、
それでもなお、 Anonymous CVS は ftp や sup より大きなインパクトがあります)。
そのような Anonymous CVS マシンは、サービスを行おうとする地域に対する優れた
ネットワーク接続を持つべきでしょう。Anonymous CVS サーバの構築について記述された
ドキュメントが利用可能となっています。
最終的な注意事項
ソースツリーをアップグレードした後、構築しようとする前に、
/usr/src/Makefile の先頭のコメントを読むべきでしょう。
また、もし、可能なら、make build を実行する前に
新しいカーネルを構築しておくべきです。場合によっては、カーネルを構築できる
ようになる前に、config ユーティリティを再構築し、インストールして
おく必要があるかも知れません。もし、config GENERIC が失敗する
ようでしたら、たぶん、このケースでしょう。
ソースからの再構築によって、リリースから -current ツリーへのアップグレードは、
しばしば明確ではない依存性のため、どちらかと言えば難しいということに注意して
ください。ですので、ソースからツリーを構築しようとする前に、まず、最新の
スナップショットをインストールすることを提案しておきます。
www@openbsd.org
$OpenBSD: anoncvs.html,v 1.248 2006/05/02 18:02:36 jufi Exp $