訳: 岩崎 満 <iwasaki@jp.FreeBSD.org>
、1997 年 2 月
27 日
警告cvsup は、 プロジェクトにおいて使用されなくなったため、 非推奨になりました。 かわりに Subversion を使ってください。
CVSup は、 リモートのサーバホストにあるマスタ CVS リポジトリから ソースツリーを配布し更新するための ソフトウェアパッケージです。FreeBSD のソースは、 カリフォルニアにある中心的な開発マシンの CVS リポジトリの 中でメンテナンスしています。CVSup を使用することで、FreeBSD ユーザは 簡単に自分のソースツリーを最新の状態に しておくことができます。
CVSup は pull モデルとよばれる更新のモデルを採用しています。pull モデルでは、 各クライアントが更新したい場合に更新したい時点で、 サーバに更新の問い合わせをおこないます。 サーバはクライアントからの 更新の要求を受け身の状態で待ちます。したがって、 すべての更新はクライアント主導でおこなわれます。 サーバは頼まれもしない更新情報を送るようなことはしません。 ユーザは CVSup クライアントを手動で実行して更新をおこなうか、 cron ジョブを設定して定期的に自動実行する必要があります。
用語 CVSup のように大文字で表記しているものは、ソフトウェアパッケージ 全体を指します。主な構成物は、 各ユーザマシンで実行するクライアントである cvsup、FreeBSD の各ミラーサイトで実行するサーバ cvsupd です。
FreeBSD の文書やメーリングリストを読んだ際に、 sup についての言及を 見かけたかもしれません。sup は CVSup の前に存在していたもので、 同様の目的で使われていました。 CVSup は sup と同じように使用されており、実際、sup と互換性のあるコンフィグレーションファイルを使用します。 CVSup の方がより高速で柔軟性もあるので、もはや sup は FreeBSD プロジェクトでは使用されていません。
注意: csup ユーティリティは CVSup ソフトウェアを C 言語で書き直したものです。 処理速度が速く、また、Modula-3 言語を使わないため、 Modula-3 をインストールする必要がありません。 さらに、ベースシステムに含まれているので、 すぐに使うことができます。 csup を使う場合は、 CVSup のインストールを省略し、 以下の文章中の CVSup を csup に置きかえて読んでください。
CVSup をインストールする最も簡単な方法は、FreeBSD Ports コレクションのパッケージ からコンパイル済みの net/cvsup パッケージをインストールすることです。 もしくは、net/cvsup でも構いません。 ただし、net/cvsup は Modula-3 システムに依存していて、構築にかかる時間、 ディスクスペースは比較的大きくなります。
注意: たとえばサーバのような Xorg がインストールされていない計算機で CVSup を使おうとしているのであれば、必ず CVSup GUI が含まれていない net/cvsup-without-gui を使ってください。
CVSup の動作は、supfile と呼ばれるコンフィグレーションファイルで制御します。 supfile のサンプルは、ディレクトリ /usr/share/examples/cvsup/ の下にあります。
supfile には以下の CVSup に関する質問への答えを記述します:
次のセクションで、これらの質問に順番に答えながら典型的な supfile を組み立てていきます。最初に supfile の全体構造を説明します。
supfile はテキストファイルです。 コメントは # から行末までです。 空行とコメントだけの行は無視します。
残りの各行には、 ユーザが受け取りたいファイル群について記述します。 行の始めは、 サーバ側で定義した論理的なファイルのグループである “コレクション” の名称です。 コレクションの名称を指定して、欲しいファイル群を サーバに伝えます。コレクション名の後には、 ホワイトスペースで区切られた 0 個以上のフィールドが続きます。 これらのフィールドが上記の質問に対する答えになります。 フィールドには 2 種類あります: flag フィールドと value フィールドです。flag フィールドは delete や compress のような 単独のキーワードから成ります。また、value フィールドもキーワードで始まりますが、 キーワードの後にはホワイトスペースは入らず、 = と二つめの単語が続きます。例えば、 release=cvs は value フィールドです。
通常、supfile
には受け取りたいコレクションを一つ以上指定します。 supfile を組み立てる一つの方法として、
コレクション毎にすべての関係の
あるフィールドを明示的に指定する方法があります。しかし、 これでは supfile のすべてのコレクションに対して
ほとんどのフィールドが同じになるため、
行が非常に長くなってしまい不便になります。 これらの問題を避けるため、CVSup ではデフォルトを指定することのできる
メカニズムが提供されています。特殊な擬似コレクション名 *default で始まる行は、 supfile
中の後続の コレクションに対して使用する flag フィールドと value
フィールドのデフォルトを設定するために利用できます。
個々のコレクションで固有の値を指定すると、 デフォルト値を無効にできます。また
*default
行を追加すると、supfile
の途中からデフォルト値の変更や追加が可能になります。
これまでの予備知識を基に、 FreeBSD-CURRENT のメインのソースツリーを受け取って更新するための supfile を組み立ててみましょう。
CVSup を通して入手できるファイルは “コレクション” と呼ばれる名前の付けられたグループにまとめられています。 利用可能なコレクションについては 後の節の中で説明しています。 ここでは、FreeBSD システムのメインのソースツリー全体 を受け取るための設定例を紹介します。 すべてを含む src-all という単一の大きなコレクションがあります。 supfile を組み立てる最初のステップとして、 これらのコレクションを一行に一つずつ記述します (この場合は一行だけです)。
src-all
CVSup を使用すると、
かつて存在していたことのある、事実上どのバージョンの
ソースでも受け取ることができます。これは cvsupd
サーバがすべてのバージョンを含む CVS リポジトリに基づいて動作することにより、
実現されています。 tag= および date=
の value フィールドを使用して、 欲しいバージョンの
一つを指定します。
警告tag= のフィールドの指定は正確に行うように十分注意 してください。いくつかのタグは特定のコレクションに 対してのみ有効です。 タグの綴りが違っていたり不適切なタグを指定すると、 CVSup はユーザが消し たくないファイルまで削除してしまいます。特に ports-* のコレクション に対しては tag=. だけ を指定するようにしてください。
tag= フィールドはリポジトリ中のシンボリックタグを指定します。 tag には revision tag と branch tag の二種類があります。 revision tag は特定のリビジョンを指します。これは、 毎日同じ状態に保つことになります。一方 branch tag は、 ある時点での開発分流の最新のリビジョンを指します。 branch tag は特定のリビジョンを指定している訳ではないので、 今日と明日では 異なるリビジョンを参照することになるかもしれません。
項A.9 にはユーザが興味を持つであろうリビジョンタグの一覧が載せられています。 CVSup の設定ファイル中でタグを指定する時は、 tag= に続けて書きます (RELENG_8 は tag=RELENG_8 になります)。 tag=. だけが Ports Collection には 適切であることに注意してください。
警告tag 名を示した通りにタイプされているか十分注意してく ださい。CVSup は tag 名が正しいかどうかを見分けることはできません。tag が間違っていた場合、 たまたまファイルがまったく存在しない正しい tag が 指定されたものとしてCVSup は動作します。その場合は、現在あるソースが削 除されるでしょう。
branch tag を指定した際には、 通常はその開発分流の最新バージョンの
ファイルを受け取ります。 いくらか前のバージョンを受け取りたい場合は、 date=
の value フィールドを使って日付を指定することで、
これを実現することが できます。
cvsup(1)
のマニュアルページで、 その方法を説明しています。
例として、FreeBSD-CURRENT を受け取りたいとします。 次の行を supfile の始めに追加します:
*default tag=.
tag= フィールドも date= フィールドも指定しなかった場合に 動き出す重要な特殊なケースがあります。そのケースでは、 特定のバージョンの ファイルを受け取るのではなく、 サーバの CVS リポジトリから実際の RCS ファイルを直接受け取ります。 一般的に開発者はこの処理のモードが好きなようです。 彼らのシステム上にリポジトリそのものの コピーを維持することで、 リビジョン履歴を閲覧し過去のバージョンの ファイルを検査できるようになります。しかし、 これには大きなディスクスペースが必要になります。
更新情報をどこから入手するかを cvsup に伝えるために host= フィールドを使用します。 CVSup ミラーサイト のどこからでも入手できますが、 ネット上での最寄りのサイトを選ぶべきでしょう。 この例では、仮想上の FreeBSD 配布サイト cvsup99.FreeBSD.org を使用します:
*default host=cvsup99.FreeBSD.org
CVSup を実行する前にホスト名を
実在のものに変更する必要があります。どのように cvsup
を実行しても、この設定は -h hostname
を
使用してコマンドラインで変更することができます。
prefix= フィールドは、 cvsup に受け取ったファイルをどこに置くかを伝えます。 この例では、ソースファイルを直接メインのソースツリー /usr/src に置きます。 src ディレクトリはすでにファイルを受け取るために 選択したコレクションで暗黙に指定しているので、 これは正しい仕様となります:
*default prefix=/usr
CVSup クライアントは “base” ディレクトリと呼ばれる場所に、ある status ファイルを維持しています。 すでに受け取った更新情報を追従し続けることで、 これらのファイルは CVSup がより効果的に動作することを支援します。標準の base ディレクトリ /var/db を使用します:
*default base=/var/db
base ディレクトリが存在しない場合は作成しておきましょう。base ディレクトリが存在しない場合、cvsup クライアントは実行を拒否します。
その他もろもろの supfile の設定:
通常 supfile に入れておくべき行がもう一つあります:
*default release=cvs delete use-rel-suffix compress
release=cvs は、サーバがメインの FreeBSD CVS リポジトリから その情報を取得するように指示します。 ほとんどの場合はこのようにしておきますが、 ここでの説明の範疇をこえるような 状況では他の指定をすることも可能です。
delete は CVSup にファイルを削除することを許可します。 CVSup が ソースツリーを完全に最新の状態に 保てるようにするためには、これは常に 指定しておくべきでしょう。 CVSup は、 これらの責任範囲のファイルだけを慎重に削除します。 たまたま存在する他の余分なファイルについては、 まったく手をつけずに残しておきます。
use-rel-suffix は、…神秘的なものです。これについて本当に知りたい人は、 cvsup(1) のマニュアルページをご覧ください。 でなければ、何も考えずに指定してみてください。
compress は通信チャネルで gzip 形式の圧縮の使用を有効にします。 ご使用のネットワーク接続が T1 speed 以上である場合、 この圧縮を使用しない方がよいかもしれません。 そうでない場合は十分に役に立ちます。
supfile の例のまとめ:
以下は supfile の例の全体です:
*default tag=. *default host=cvsup99.FreeBSD.org *default prefix=/usr *default base=/var/db *default release=cvs delete use-rel-suffix compress src-all
既に述べたように、CVSup は取り寄せ法 (pull method)を用いるのですが、 これは基本的に次のようなことを意味します。 まずあなたが CVSup サーバに接続します。 するとサーバは “あなたがダウンロードできるのはこれこれです” と言います。 それに対し、あなたが使っているクライアントは “わかりました。 では、これとこれとこれをもらいます” と答えます。 デフォルトの設定の CVSup クライアントは、 設定ファイルで選んだコレクションとタグに適合する すべてのファイルを取得します。 しかし、これは常にあなたの望む動作と一致するとは限りません。 特に doc や ports や www のツリーを同期させる場合などはそうでしょう。 ほとんどの人は四か国語も五か国語も操れるわけではありませんから、 特定の言語のファイルのダウンロードは必要ないでしょう。 Ports Collection を CVSup で取得する場合には、各コレクションを個別に指定することができます (たとえば、単に ports-all とするかわりに ports-astrology、 ports-biology などと書きます)。 一方、doc と www のツリーは言語別のコレクションになっていません。 そこであなたは CVSup のたくさんある洗練された機能の一つ、 refuse ファイルを使う必要があります。
refuse ファイルは CVSup に対し、 コレクションに含まれる一部のファイルを取得することを伝えます。 言い換えれば、それはクライアントに対し、 サーバから来る一部のファイルを拒否するよう指定するということです。 refuse ファイルは base/sup/ にあります (もしファイルがない場合には作成してください)。 base は supfile 内で定義されています。 私達は base に /var/db を定義しています。つまり、 refuse ファイルのデフォルトは /var/db/sup/refuse ということになります。
refuse ファイルの書式は、単にダウンロードしたくないファイルや ディレクトリの名前が書いてあるだけの非常にシンプルなものです。 たとえば、英語以外にはドイツ語を少し話せるだけの人で、 文書のドイツ語訳を読む必要を感じなければ 以下のような refuse ファイルが考えられます。
doc/bn_* doc/da_* doc/de_* doc/el_* doc/es_* doc/fr_* doc/hu_* doc/it_* doc/ja_* doc/mn_* doc/nl_* doc/no_* doc/pl_* doc/pt_* doc/ru_* doc/sr_* doc/tr_* doc/zh_*
他の言語についても同様です (全リストは FreeBSD CVS リポジトリ をご覧になってください)。
この実に便利な機能を使うと まったく必要としないファイルをダウンロードする必要がなくなり、 インターネット接続の回線が遅かったり従量制で課金されている人は 貴重な時間を節約できるようになります。 refuse ファイルの詳細や CVSup が持つその他の便利な機能に関しては マニュアルページを参照してください。
さて、更新の準備ができました。 これを実行するコマンドラインは実に簡単です:
# cvsup supfile
もちろん、ここでの supfile は作成したばかりの supfile のファイル名です。X11 環境で実行するものと仮定して、cvsup は 通常の操作に必要なボタンを持つ GUI ウィンドウを表示します。
ボタンを押して、 実行を監視してください。この例では実際の /usr/src ツリーを更新しているので、cvsup にファイルを更新するのに必要なパーミッションを与えるために、 ユーザ root で実行する必要があります。 コンフィグレーションファイルを作ったばかりで、 しかも以前にこのプログラムを実行したことがないので、 神経質になるのは無理もない話だと思います。 大切なファイルに触らずに試しに実行する簡単な方法があります。 どこか適当な場所に空のディレクトリを作成して、 コマンドラインの引数で指定するだけです:
# mkdir /var/tmp/dest # cvsup supfile /var/tmp/dest
指定したディレクトリは、すべての更新されるファイルの 更新先ディレクトリとして使用します。 CVSup は /usr/src の下のファイルを検査しますが、 変更や削除はまったくおこないません。かわりに /var/tmp/dest/usr/src に更新されたすべてのファイルが置かれるようになります。 この方法で実行した場合は、CVSup は base ディレクトリの status ファイルを更新せずにそのままにします。 これらのファイルの新しいバージョンは指定されたディレクトリ に書き込まれます。/usr/src の読み取り許可がある限り、このような試し実行のためにユーザ root になる必要はありません。
X11 を利用していないとか単に GUI が気に入らない場合は、 cvsup 起動時にコマンドラインに 二つほどオプションを追加する必要があります:
# cvsup -g -L 2 supfile
-g
オプションは CVSup に GUI
を使用しないように伝えます。X11 を利用していない場合には自動的に指定されますが、
そうでない場合は明示的に指定します。
-L 2
オプションは cvsup
にファイル更新中の詳細情報をプリントアウト するように伝えます。冗長性には -L 0
から -L 2
までの三つのレベルがあります。 デフォルトは 0 であり、エラーメッセージ以外はまったく出力
しません。
たくさんの他のオプション変数があります。 それらの簡単な一覧は cvsup -H で表示されます。 より詳しい説明はマニュアルページをご覧ください。
動作している更新の方法に満足したら、cron(8) を使って CVSup を定期的に 実行させる準備をすることができます。cron から起動する際には、 明示的に CVSup が GUI を使わないようにする必要があります。
CVSup 経由で入手できるファイルコレクションは 階層的に組織化されています。 いくつか大きなコレクションがあり、 それらは小さなサブコレクションに 分割されています。 大きなコレクションは、そのサブコレクション毎に 受信することと同じことになります。 下の一覧ではコレクション間の階層関係を 字下げして表現します。
最も一般的に使用するコレクションは src-all、 ports-all です。 他のコレクションは特別な目的を持つ人達だけが使用しており、 ミラーサイトはそれらのすべてを 持っていないかもしれません。
メインの FreeBSD CVS リポジトリであり、 暗号のコードを含んでいます。
FreeBSD の配布とミラーに関連するファイルです。
FreeBSD Ports Collection です。
重要項目: ports-all (ports ツリー全体) を更新せずに、 以下のサブコレクションの一つを使う場合は、常に ports-base サブコレクションを更新することを忘れないでください! ports の構築システムに変更があると、 ports-base に反映されます。 そしてほとんどの場合、その変更は新しい ports で“実際に”使われるからです。 つまり、“個々の ports” だけを更新していると、 奇妙なエラーで構築に失敗する可能性が非常に高くなるということです。 ports-base サブコレクションが 最新状態であるかどうかの確認は、 何よりも最初にやらなければならない ことなのです。
重要項目: ローカルで ports/INDEX を作成するには、 ports-all (ports ツリー全体) が必要です。 サブコレクションのみで ports/INDEX を作成することはできません。 FAQ を参照してください。
障害を持ったユーザの役に立つソフトウェア
アラビア語サポート
アーカイビングのツール。
天文学関連の ports。
サウンドサポート。
Ports Collection の構築システム部分。 /usr/ports のサブディレクトリ Mk/、Tools/ にある、さまざまなファイルが含まれています。
注意: 上の注意文をご覧ください。 FreeBSD Ports Collection の一部分を更新する時には、 このサブコレクションも常に更新しなければなりません。
ベンチマークプログラム。
植物学関連のプログラム。
CAD ツール。
中国語サポート。
通信ソフトウェア。
文字コードコンバータ。
データベース。
コンピュータが発明される前に 卓上で使われていたものたち。
開発ユーティリティ。
DNS 関連のソフトウェア。
エディタ。
他の OS のエミュレータ。
金融、財務関連のアプリケーション。
FTP クライアントとサーバ。
ゲーム。
ドイツ語サポート。
グラフィックユーティリティ。
ヘブライ語サポート
ハンガリー語のサポート。
インターネットリレーチャット (IRC) 用のユーティリティ。
日本語サポート。
Java™ ユーティリティ。
韓国語サポート。
プログラミング言語。
メールソフトウェア。
数値計算ソフトウェア。
色々なユーティリティ。
マルチメディアソフトウェア。
ネットワーキングソフトウェア。
インスタントメッセージングソフト。
ネットワーク管理ソフトウェア
ピアツーピアネットワーク。
USENET ニュースのソフトウェア。
Palm™ シリーズ用ソフトウェア。
ポーランド語のサポート。
ports および packages 管理用のユーティリティ。
ポルトガル語のサポート。
印刷ソフトウェア。
ロシア語サポート。
科学
セキュリティユーティリティ。
コマンドラインシェル。
システムユーティリティ。
文書処理ユーティリティ (デスクトップパブリッシングは含まない)。
ウクライナ語サポート
ベトナム語サポート。
X window システムをサポートする ports。
X11 上で動作する時計の数々。
X11 のドライバ。
X11 上で動作するファイラ。
X11 のフォントとフォントユーティリティ。
X11 のツールキット。
各種 X11 サーバ。
X11 のテーマ
X11 のウィンドウマネージャ。
FreeBSD プロジェクトのリポジトリのソース。
メインの FreeBSD ソース群であり、 暗号のコードを含んでいます。
/usr/src のトップにあるその他のファイル。
シングルユーザモードで必要な ユーザユーティリティ (/usr/src/bin)。
CDDL ライセンスのユーティリティおよびライブラリ (/usr/src/cddl)。
FreeBSD プロジェクト外部からの ユーティリティおよびライブラリ、 比較的無修正 (/usr/src/contrib)。
FreeBSD プロジェクトの外部で開発された暗号ユーティリティとライブラリで、 ほとんどそのままの形で使われます (/usr/src/crypto)。
Kerberos と DES (/usr/src/eBones) のこと。 現在の FreeBSD リリースでは使われていません。
システムコンフィグレーションファイル (/usr/src/etc)。
ゲーム (/usr/src/games)。
GNU Public License 下にあるユーティリティ (/usr/src/gnu)。
ヘッダファイル (/usr/src/include)。
Kerberos5 セキュリティパッケージ (/usr/src/kerberos5)。
KerberosIV セキュリティパッケージ (/usr/src/kerberosIV)。
ライブラリ (/usr/src/lib)。
システムプログラムであり、 通常は他のプログラムから実行される (/usr/src/libexec)。
FreeBSD の release を構築するために必要なファイル (/usr/src/release)。
システム復旧のためのスタティックリンクされている緊急用プログラム。 rescue(8) をご覧ください (/usr/src/rescue)。
シングルユーザモード用の システムユーティリティ (/usr/src/sbin)。
暗号化ライブラリとコマンド (/usr/src/secure)。
多様なシステム間で共有可能なファイル (/usr/src/share)。
カーネル (/usr/src/sys)。
カーネル用の暗号コード (/usr/src/sys/crypto)。
FreeBSD の保守用の色々なツール (/usr/src/tools)。
ユーザユーティリティ (/usr/src/usr.bin)。
システムユーティリティ (/usr/src/usr.sbin)。
FreeBSD WWW サイトのソースです。
CVSup サーバ自身のコンフィグレーションファイルです。CVSup ミラーサイトが使用します。
GNATS バグトラッキングデータベースです。
FreeBSD 関連メーリングリストのアーカイブ。
前処理された FreeBSD WWW サイトのファイルです (ソースではありません)。 WWW ミラーサイトが使用します。
CVSup の FAQ や CVSup に関するその他の情報については The CVSup Home Page をご覧ください。
CVSup のほとんどの FreeBSD 関連の議論は FreeBSD technical discussions メーリングリスト でおこなわれています。 ソフトウェアの新しいバージョンは FreeBSD announcements メーリングリスト で アナウンスされます。
CVSup に関する質問やバグ報告については CVSup FAQ をご覧ください。
FreeBSD の CVSup サーバは以下のサイトで稼働しています。
中央サーバ, 一次ミラーサイト, アイスランド, アイルランド, アメリカ合衆国, アルメニア, イギリス, イスラエル, イタリア, ウクライナ, エストニア, オーストラリア, オーストリア, オランダ, カナダ, キルギス共和国, ギリシア, クウェート, コスタリカ共和国, サンマリノ, スイス, スウェーデン, スペイン, スロバキア共和国, スロベニア, タイ王国, チェコ共和国, デンマーク, トルコ, ドイツ, ニュージーランド, ノルウェー, ハンガリー, フィリピン, フィンランド, フランス, ブラジル, ポーランド, ポルトガル, ラトビア, リトアニア, ルーマニア, ロシア, 韓国, 台湾, 中国, 南アフリカ, 日本.
( UTC 現在)
cvsup.FreeBSD.org
cvsup1.FreeBSD.org
cvsup2.FreeBSD.org
cvsup3.FreeBSD.org
cvsup4.FreeBSD.org
cvsup5.FreeBSD.org
cvsup6.FreeBSD.org
cvsup7.FreeBSD.org
cvsup8.FreeBSD.org
cvsup9.FreeBSD.org
cvsup10.FreeBSD.org
cvsup11.FreeBSD.org
cvsup12.FreeBSD.org
cvsup13.FreeBSD.org
cvsup14.FreeBSD.org
cvsup15.FreeBSD.org
cvsup16.FreeBSD.org
cvsup18.FreeBSD.org
cvsup.is.FreeBSD.org
cvsup.ie.FreeBSD.org
cvsup2.ie.FreeBSD.org
cvsup1.us.FreeBSD.org
cvsup2.us.FreeBSD.org
cvsup3.us.FreeBSD.org
cvsup4.us.FreeBSD.org
cvsup5.us.FreeBSD.org
cvsup6.us.FreeBSD.org
cvsup7.us.FreeBSD.org
cvsup8.us.FreeBSD.org
cvsup9.us.FreeBSD.org
cvsup10.us.FreeBSD.org
cvsup11.us.FreeBSD.org
cvsup12.us.FreeBSD.org
cvsup13.us.FreeBSD.org
cvsup14.us.FreeBSD.org
cvsup15.us.FreeBSD.org
cvsup16.us.FreeBSD.org
cvsup18.us.FreeBSD.org
cvsup1.am.FreeBSD.org
cvsup.uk.FreeBSD.org
cvsup2.uk.FreeBSD.org
cvsup3.uk.FreeBSD.org
cvsup4.uk.FreeBSD.org
cvsup.il.FreeBSD.org
cvsup.it.FreeBSD.org
cvsup3.ua.FreeBSD.org
cvsup5.ua.FreeBSD.org
cvsup6.ua.FreeBSD.org
cvsup.ee.FreeBSD.org
cvsup.au.FreeBSD.org
cvsup.at.FreeBSD.org
cvsup.nl.FreeBSD.org
cvsup2.nl.FreeBSD.org
cvsup3.nl.FreeBSD.org
cvsup1.ca.FreeBSD.org
cvsup.kg.FreeBSD.org
cvsup.gr.FreeBSD.org
cvsup2.gr.FreeBSD.org
cvsup1.kw.FreeBSD.org
cvsup1.cr.FreeBSD.org
cvsup.sm.FreeBSD.org
cvsup.ch.FreeBSD.org
cvsup.se.FreeBSD.org
cvsup2.se.FreeBSD.org
cvsup.es.FreeBSD.org
cvsup2.es.FreeBSD.org
cvsup3.es.FreeBSD.org
cvsup.sk.FreeBSD.org
cvsup.si.FreeBSD.org
cvsup2.si.FreeBSD.org
cvsup.th.FreeBSD.org
cvsup.cz.FreeBSD.org
cvsup.dk.FreeBSD.org
cvsup2.dk.FreeBSD.org
cvsup.tr.FreeBSD.org
cvsup2.tr.FreeBSD.org
cvsup.de.FreeBSD.org
cvsup2.de.FreeBSD.org
cvsup3.de.FreeBSD.org
cvsup4.de.FreeBSD.org
cvsup5.de.FreeBSD.org
cvsup6.de.FreeBSD.org
cvsup7.de.FreeBSD.org
cvsup8.de.FreeBSD.org
cvsup.nz.FreeBSD.org
cvsup.no.FreeBSD.org
cvsup.hu.FreeBSD.org
cvsup1.ph.FreeBSD.org
cvsup.fi.FreeBSD.org
cvsup2.fi.FreeBSD.org
cvsup.fr.FreeBSD.org
cvsup1.fr.FreeBSD.org
cvsup2.fr.FreeBSD.org
cvsup3.fr.FreeBSD.org
cvsup4.fr.FreeBSD.org
cvsup5.fr.FreeBSD.org
cvsup8.fr.FreeBSD.org
cvsup.br.FreeBSD.org
cvsup2.br.FreeBSD.org
cvsup3.br.FreeBSD.org
cvsup4.br.FreeBSD.org
cvsup5.br.FreeBSD.org
cvsup.pl.FreeBSD.org
cvsup2.pl.FreeBSD.org
cvsup3.pl.FreeBSD.org
cvsup.pt.FreeBSD.org
cvsup2.pt.FreeBSD.org
cvsup3.pt.FreeBSD.org
cvsup.lv.FreeBSD.org
cvsup2.lv.FreeBSD.org
cvsup.lt.FreeBSD.org
cvsup2.lt.FreeBSD.org
cvsup3.lt.FreeBSD.org
cvsup.ro.FreeBSD.org
cvsup1.ro.FreeBSD.org
cvsup2.ro.FreeBSD.org
cvsup3.ro.FreeBSD.org
cvsup.ru.FreeBSD.org
cvsup2.ru.FreeBSD.org
cvsup3.ru.FreeBSD.org
cvsup4.ru.FreeBSD.org
cvsup5.ru.FreeBSD.org
cvsup6.ru.FreeBSD.org
cvsup7.ru.FreeBSD.org
cvsup.kr.FreeBSD.org
cvsup2.kr.FreeBSD.org
cvsup3.kr.FreeBSD.org
cvsup.tw.FreeBSD.org
cvsup3.tw.FreeBSD.org
cvsup4.tw.FreeBSD.org
cvsup5.tw.FreeBSD.org
cvsup6.tw.FreeBSD.org
cvsup7.tw.FreeBSD.org
cvsup8.tw.FreeBSD.org
cvsup9.tw.FreeBSD.org
cvsup10.tw.FreeBSD.org
cvsup11.tw.FreeBSD.org
cvsup12.tw.FreeBSD.org
cvsup13.tw.FreeBSD.org
cvsup14.tw.FreeBSD.org
cvsup.cn.FreeBSD.org
cvsup2.cn.FreeBSD.org
cvsup.za.FreeBSD.org
cvsup2.za.FreeBSD.org
cvsup.jp.FreeBSD.org
cvsup2.jp.FreeBSD.org
cvsup3.jp.FreeBSD.org
cvsup4.jp.FreeBSD.org
cvsup5.jp.FreeBSD.org
cvsup6.jp.FreeBSD.org
本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。
FreeBSD に関する質問がある場合には、ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で)
連絡してください。
本文書に関する質問については、<doc@FreeBSD.org> まで電子メールを (英語で)
送ってください。