OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / cvsup / draft / man8 / cvsupd.8
1 .\" Copyright 1996, 1997, 1998, 1999 John D. Polstra.
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgment:
14 .\"      This product includes software developed by John D. Polstra.
15 .\" 4. The name of the author may not be used to endorse or promote products
16 .\"    derived from this software without specific prior written permission.
17 .\"
18 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 .\"
29 .\" $Id: cvsupd.8,v 1.34 1999/12/10 05:31:36 jdp Exp $
30 .\"
31 .\" Originally translated
32 .\"         by Issei Suzuki <issei@issei.org>
33 .\" Updated Sun Jan 23 03:13:03 JST 2000 to match cvsupd.8 included in cvsup-16.1
34 .\"         by FUJIWARA Teruyoshi <fujiwara@linux.or.jp>
35 .\"
36 .\" WORD: access file   アクセス制御ファイル
37 .\"
38 .Dd August 31, 1999
39 .Os FreeBSD
40 .Dt CVSUPD 8
41 .\"O .Sh NAME
42 .Sh 名称
43 .Nm cvsupd
44 .\"O .Nd network distribution server for CVS repositories
45 .Nd ネットワーク上で CVS レポジトリを配布するためのサーバ
46 .\"O .Sh SYNOPSIS
47 .Sh 書式
48 .Nm
49 .Op Fl ev
50 .Op Fl A Ar addr
51 .Op Fl b Ar base
52 .Op Fl c Ar collPath
53 .Op Fl C Ar maxClients
54 .Op Fl l Ar log
55 .Op Fl p Ar port
56 .Op Fl P Ar range
57 .Op Fl s Ar scanDir
58 .Op Fl Z Ar comprLevel
59 .\"O .Sh DESCRIPTION
60 .Sh 解説
61 .\"O .Nm
62 .\"O is the server program for the
63 .\"O .Nm CVSup
64 .\"O network distribution package.
65 .Nm
66 はネットワーク配布のためのパッケージである
67 .Nm CVSup
68 のサーバプログラムです。
69 .\"O For information about the companion client program, see
70 .\"O .Xr cvsup 1 .
71 サーバと組み合わせて動作するクライアントプログラム
72 に関しては
73 .Xr cvsup 1
74 を参照してください。
75 .Pp
76 .\"O In normal usage,
77 .\"O .Nm
78 .\"O should be started with the
79 .\"O .Ql Fl C Ar maxClients
80 .\"O option.  It runs as a background daemon, fielding connection requests
81 .\"O from remote clients.  For each connection,
82 .\"O .Nm
83 .\"O forks a child process to serve the files requested by the client.
84 通常使用時には
85 .Nm
86
87 .Ql Fl C Ar maxClients
88 オプションを指定して実行しなければなりません。
89 .Nm
90 はバッググラウンドデーモンとして実行され、
91 リモートクライアントからの接続要求に対応します。それぞれの接続について
92 .Nm
93 は子プロセスを fork し、クライアントが要求したファイルを送ります。
94 .Pp
95 .\"O The following options are supported:
96 以下のオプションがサポートされています:
97 .Bl -tag -width Fl
98 .It Fl A Ar addr
99 .\"O Specifies a local address (dotted quad or hostname) on which the
100 .\"O server will accept connections.  This may be useful on hosts which
101 .\"O have multiple IP addresses.
102 サーバが接続を受け付ける(accept)するローカルのアドレス(IP アドレス
103 またはホスト名)を指定します。このオプションは複数個の IP アドレスを持つ
104 ホストで役立つでしょう。
105 .It Fl b Ar base
106 .\"O Uses
107 .\"O .Ar base
108 .\"O as the base directory for the configuration files.
109 .Ar base
110 を設定ファイルの起点ディレクトリとして使います。
111 .\"O The default is
112 .\"O .Pa /usr/local/etc/cvsup .
113 デフォルト値は
114 .Pa /usr/local/etc/cvsup
115 です。
116 .It Fl c Ar collPath
117 .\"O Searches the specified directories for information about the collections
118 .\"O being offered.
119 提供されるコレクションに関する情報を得るために、指定されたディレクトリを
120 検索します。
121 .\"O .Ar collPath
122 .\"O contains of one or more directory names, separated by colons.
123 .Ar collPath
124 は 1 つのディレクトリ、もしくはコロンで区切った複数のディレクトリを
125 含みます。
126 .\"O Non-absolute pathnames are interpreted relative to the base
127 .\"O directory.
128 絶対パスで指定されていない場合は、起点ディレクトリからの相対パスと解釈
129 されます。
130 .\"O The default search path is
131 .\"O .Ql sup .
132 デフォルトの検索パスは
133 .Ql sup
134 です。
135 .It Fl C Ar maxClients
136 .\"O Limits the number of simultaneous clients to
137 .\"O .Ar maxClients .
138 同時に接続できるクライアントの数を
139 .Ar maxClients
140 に制限します。
141 .\"O Clients beyond the specified maximum are politely refused service.
142 指定した最大数を超えた場合、クライアントはサービスを丁寧に
143 断わられます。
144 .Pp
145 .\"O If this option is not specified,
146 .\"O .Nm
147 .\"O serves one client in the foreground and then exits.
148 このオプションが指定されていない場合、
149 .Nm
150 はフォアグラウンドで動作して 1 クライアントに対してのみサービスを行い、
151 それが終わると終了します。
152 .It Fl e
153 .\"O Suppresses the redirection of the standard output and standard
154 .\"O error when running as a daemon and logging to a syslog facility.
155 デーモンモードで動作している場合に、標準出力と標準エラー出力への
156 メッセージのリダイレクトを抑制し、syslog を用いてログを記録します。
157 .\"O Otherwise, these descriptors are redirected to
158 .\"O .Pa /dev/null .
159 このオプションを設定しない場合、標準出力と標準エラー出力は
160 .Pa /dev/null
161 にリダイレクトされます。
162 .\"O This option is useful for capturing any panic messages which might
163 .\"O be emitted in the rare event of a crash of the server.
164 このオプションは、サーバのクラッシュのような滅多にないパニックの際の
165 メッセージを押さえるのに役立ちます。
166 .\"O Such messages are very helpful for debugging, but there
167 .\"O is no reliable way to send them to syslog.
168 こういったメッセージはデバッグに非常に有用ですが、それらを syslog に送
169 るための確実な方法がないためです。
170 .\"O A recommended way to use the option is like this:
171 .\"O .Dl cvsupd -e ... >>/var/tmp/cvsupd.out 2>&1
172 .\"O assuming that the command line syntax of
173 .\"O .Xr sh 1
174 .\"O is used.
175 このオプションのお勧めの使い方は次のようなものです:
176 .Dl cvsupd -e ... >>/var/tmp/cvsupd.out 2>&1
177 ただし、このコマンドラインでは
178 .Xr sh 1
179 の表記を使っています。
180 .It Fl l Ar log
181 .\"O Directs log messages to
182 .\"O .Ar log .
183 ログメッセージを
184 .Ar log
185 に書き出します。
186 .\"O If
187 .\"O .Ar log
188 .\"O is of the form
189 .\"O .Cm @ Ns Ar facility
190 .\"O (e.g.,
191 .\"O .Ql @local0 )
192 .\"O then logging is done via syslog to the indicated facility.
193 .Ar log
194
195 .Cm @ Ns Ar facility
196 (例 
197 .Ql @local0 )
198 のような形式で指定された場合、ロギングは指定された facility を使い
199 syslog 経由で行われます。
200 .\"O Otherwise,
201 .\"O .Ar log
202 .\"O is treated as the name of a log file.
203 そうでない場合、
204 .Ar log
205 はログファイルの名前として扱われます。
206 .\"O If the file
207 .\"O already exists, new messages are appended to its end.
208 そのファイルがすでに存在している場合には、新しいメッセージはファイルの最
209 後に追加されます。
210 .Pp
211 .\"O For each client served, at least two messages are logged.  The first
212 .\"O message identifies the client by username and hostname.  The last
213 .\"O message reports the success or failure of the update and gives the
214 .\"O total network I/O in Kbytes (1K = 1024).  Additional messages may be
215 .\"O emitted to report errors or other noteworthy conditions.
216 サービスを受ける各クライアントについて、少なくとも 2 つのメッセージが
217 記録されます。最初のメッセージはユーザ名とホスト名でクライアントを
218 識別します。最後のメッセージは更新の成功・失敗と、合計のネットワーク I/O 
219 の量をキロバイト単位(1K = 1024)で報告します。エラーやその他の知らせる
220 べき状態を知らせるために、この 2 つ以外のメッセージが送られることがあ
221 ります。
222 .\" FIXME - default
223 .It Fl p Ar port
224 .\"O Listens for connections on an alternate TCP port.
225 サーバが接続を待ち受ける(listen する) TCP ポートを指定します。
226 .\"O The default port is 5999.
227 デフォルト値は 5999 です。
228 .\"O When not in passive mode, the server also uses the next lower port
229 .\"O to establish a second
230 .\"O connection (called the data connection) back to the client.
231 パッシブモードでない場合には、サーバからクライアントに向かって張る 2
232 番目の接続(データ接続と呼ばれます)のために、サーバはこれより 1 つ小さ
233 い番号のポートも使います。
234 .It Fl P Ar range
235 .\"O Sets the range of server TCP ports to be used for the data connection,
236 .\"O when in passive mode.
237 パッシブモードの時にデータ接続に使うサーバ側の TCP ポートの範囲を指定
238 します。
239 .\"O .Ar Range
240 .\"O may be a single integer or a range given as
241 .\"O .Ql lo-hi .
242 .Ar 範囲
243 は単一の整数もしくは
244 .Ql lo-hi
245 の範囲のどちらかの形で指定できます。
246 .It Fl s Ar scanDir
247 .\"O Enables mirror mode, and specifies the directory under which the scan
248 .\"O files can be found.  If it is not an absolute pathname,
249 .\"O .Ar scanDir
250 .\"O is interpreted relative to the base directory.  See
251 .\"O .Sx RUNNING A CVSup MIRROR SITE ,
252 .\"O below.
253 ミラーモードを有効にし、scan ファイルがあるディレクトリを指定します。
254 .Ar scanDir
255 が絶対パスで指定されていなければ、これは起点ディレクトリからの相対パス
256 と解釈されます。後述の
257 .Sx CVSup を使ったミラーサイトの運用
258 をご覧ください。
259 .It Fl v
260 .\"O Prints the version number and exits, without serving any clients.
261 バージョン番号を表示して終了します。クライアントには何も提供しません。
262 .It Fl Z Ar comprLevel
263 .\"O Sets the compression level to
264 .\"O .Ar comprLevel .
265 圧縮レベルを
266 .Ar comprLevel
267 に設定します。
268 .\"O The compression level must be between 0 and 9.
269 圧縮レベルは 0 から 9 の間で指定します。
270 .\"O A level of 0 means no compression, while 9 provides maximum compression.
271 レベル 0 では圧縮は行われず、9 で圧縮率が最大となります。
272 .\"O The default level is 1.
273 デフォルトの圧縮レベルは 1 です。
274 .\"O Higher levels provide relatively little improvement, at a rather high
275 .\"O cost in CPU cycles.
276 これよりも高い圧縮レベルを使っても、CPU パワーが大幅に消費される割には
277 ファイルサイズはほとんど改善されません。
278 .El
279 .\"O .Sh PREPARING A FILE COLLECTION REPOSITORY
280 .Sh ファイルコレクションレポジトリを準備する
281 .\"O The file collections which
282 .\"O .Nm
283 .\"O makes available to clients are described by various configuration files.
284 .Nm
285 がクライアントに提供するファイルコレクションは、様々な設定ファイルで記述
286 します。
287 .\"O The configuration files reside under the directory
288 .\"O .Sm off
289 .\"O .Ar base / Ar collDir ,
290 .\"O .Sm on
291 .\"O where
292 .\"O .Ar base
293 .\"O is the directory specified by the
294 .\"O .Fl b Ar base
295 .\"O command line option, or
296 .\"O .Pa /usr/local/etc/cvsup
297 .\"O by default.
298 設定ファイルは
299 .Sm off
300 .Ar base / Ar colldir
301 .Sm on
302 ディレクトリ下に置きます。ここで
303 .Ar base
304
305 .Fl b Ar base
306 コマンドラインオプションで指定されたもの、もしくはデフォルト値の
307 .Pa /usr/local/etc/cvsup
308 です。
309 .\"O .Ar collDir
310 .\"O is any of the directories specified with the
311 .\"O .Fl c
312 .\"O option, or
313 .\"O .Ql sup
314 .\"O by default.
315 .Ar collDir
316
317 .Fl c
318 オプションで指定されたディレクトリのいずれか、もしくはデフォルト値の
319 .Ql sup
320 です。
321 .Pp
322 .\"O Each collection's configuration files are kept in a separate
323 .\"O subdirectory of
324 .\"O .Sm off
325 .\"O .Ar base / Ar collDir ,
326 .\"O .Sm on
327 .\"O named after the collection itself.
328 各コレクションの設定ファイルは、
329 .Sm off
330 .Ar base / Ar collDir
331 .Sm on
332 下に作ったコレクション名と同名のサブディレクトリに個別に置かれます。
333 .\"O For example, the configuration for the
334 .\"O .Ql src-base
335 .\"O collection would be found in
336 .\"O .Sm off
337 .\"O .Ar base / Ar collDir Pa /src-base .
338 .\"O .Sm on
339 例えば
340 .Ql src-base
341 コレクションの設定ファイルは
342 .Sm off
343 .Ar base / Ar collDir Pa /src-base
344 .Sm on
345 に置かれます。
346 .\"O Within the collection's subdirectory, there should be a
347 .\"O .Pa releases
348 .\"O file and a list file.
349 コレクションのサブディレクトリ中には、
350 .Pa releases
351 ファイルとリストファイルが置かれます。
352 .\"O The
353 .\"O .Pa releases
354 .\"O file contains one line per release.
355 .Pa releases
356 ファイルはリリースごとに一行の記述を含みます。
357 .\"O The first word of each line is the name of the release, e.g.,
358 .\"O .Ql cvs .
359 各行の最初の語はリリース名です。例えば
360 .Ql cvs
361 となります。
362 .\"O That must be followed by the following phrases, in any order:
363 その後には、順不同で以下のようなフレーズが続きます:
364 .Bl -tag -width Fl
365 .It Cm list= Ns Ar file
366 .\"O Specifies the name of the list file, relative to the collection's
367 .\"O subdirectory.  The list file is described below.
368 リストファイルの名前を、コレクションのサブディレクトリに対する相対パス
369 で指定します。リストファイルについては後ほど説明します。
370 .It Cm prefix= Ns Ar directory
371 .\"O Specifies where the files making up the collection are to be found.
372 コレクションを構成するファイルのある場所を指定します。
373 .\"O If
374 .\"O .Ar directory
375 .\"O is not an absolute pathname, it is interpreted relative to the base
376 .\"O directory
377 .\"O .Ar base .
378 もし
379 .Ar directory
380 が絶対パスでなければ、起点ディレクトリ
381 .Ar base
382 からの相対パスと見なされます。
383 .\"O If there is no
384 .\"O .Cm prefix
385 .\"O clause, the prefix defaults to
386 .\"O .Ar base .
387 .Cm prefix
388 が指定されていない場合のデフォルト値は
389 .Ar base
390 です。
391 .It Cm keywordprefix= Ns Ar directory
392 .\"O Specifies a
393 .\"O .Dq pseudo-prefix
394 .\"O which is used only for expanding the absolute pathnames for the
395 .\"O .Ql $\&Header$
396 .\"O and
397 .\"O .Ql $\&Source$
398 .\"O RCS keywords.
399 .Dq 仮想プレフィックス
400 を指定します。これは RCS のキーワードである
401 .Ql $\&Header$
402
403 .Ql $\&Source$
404 を絶対パスに展開するためにのみ用いられます。
405 .\"O The
406 .\"O .Ar directory
407 .\"O should normally be the absolute pathname of the CVS repository on the
408 .\"O machine containing the master copy of the repository.
409 普通は、
410 .Ar direcotry
411 はマスターの CVS レポジトリを持っているマシンにおける、その
412 CVS レポジトリの絶対パスです。
413 .\"O The use of
414 .\"O .Cm keywordprefix
415 .\"O ensures that
416 .\"O .Nm CVSup
417 .\"O will expand the RCS keywords identically on all machines, even though
418 .\"O the repositories may reside in different directories.
419 .Cm keywordprefix
420 を用いると、
421 .Nm CVSup
422 は必ず、
423 実際のレポジトリの位置によらず全てのマシン上で RCS 
424 キーワードを同一の形に展開します。
425 .It Cm super= Ns Ar collection
426 .\"O Specifies the immediate super-collection of the current collection.
427 現在のコレクションの直接のスーパーコレクションを指定します。
428 .\"O In large distributions, the collections are often organized in a
429 .\"O hierarchical manner.  At the top of the hierarchy is a collection
430 .\"O containing all of the distributed files.  At the next level are
431 .\"O several sub-collections, each containing a subset of the files.
432 配布物が大きな場合には、コレクションに階層を持たせてまとめることがよく
433 あります。最も上の階層は、配布されている全てのファイルを含む
434 コレクションです。次の階層はいくつかのサブコレクションからなり、それぞ
435 れは全体のファイルの部分集合となります。
436 .\"O Each sub-collection may in turn have further sub-collections, and so
437 .\"O forth.  The
438 .\"O .Cm super
439 .\"O keyword specifies the collection's parent in such a hierarchical
440 .\"O arrangement.
441 各サブコレクションは自分の下にサブコレクションを持てますし、それ以降も
442 同様です。
443 .Cm super
444 キーワードは、こういった階層的な配置において、そのコレクションの
445 親コレクションを指定します。
446 .Pp
447 .\"O This keyword is optional.  If it is omitted,
448 .\"O .Nm
449 .\"O assumes nothing about the relationship between the current
450 .\"O collection and the other available collections.
451 このキーワードは省略してもかまいません。省略された場合には、
452 .Nm
453 は現在のコレクションと利用可能な他のコレクションの間に
454 何の関連もないとみなします。
455 .Pp
456 .\"O Information from the
457 .\"O .Cm super
458 .\"O keywords is used for finding the appropriate scan files when the
459 .\"O server is running as a mirror site.  See
460 .\"O .Sx RUNNING A CVSup MIRROR SITE .
461 .Cm super
462 キーワードから得た情報は、サーバがミラーサイトとして動作している時に、
463 適切な scan ファイルを見つけるために使われます。
464 .Sx CVSup を使ったミラーサイトの運用
465 をご覧ください。
466 .It Cm nocheckrcs
467 .\"O Disables the comparison of MD5 checksums for updated RCS files.
468 更新される RCS ファイル群について、MD5 チェックサムの比較を行いません。
469 .\"O Checksum mismatches for RCS files may not be meaningful, since a given
470 .\"O logical RCS file can have many different textual renditions.
471 RCS ファイルにおけるチェックサムの不一致は意味を持ちません。なぜなら、
472 ある論理的な意味を持った RCS ファイルには、テキストとしての表現はたく
473 さんあるからです。
474 .It Cm norcs
475 .\"O Disables special processing for RCS files.  They will be treated the
476 .\"O same as other files.
477 RCS ファイルを特別扱いしません。RCS ファイルを他のファイルと同様に扱い
478 ます。
479 .It Cm norsync
480 .\"O Disables the use of the
481 .\"O .Em rsync
482 .\"O algorithm.
483 .Em rsync
484 アルゴリズムを使わないようにします。
485 .\"O .Sy Note:
486 .Sy 注意:
487 .\"O this keyword is deprecated in the
488 .\"O .Pa releases
489 .\"O file.  Use
490 .\"O .Cm norsync
491 .\"O or
492 .\"O .Cm rnorsync
493 .\"O in the list file instead.  (See below.)
494 このキーワードを
495 .Pa releases
496 ファイルで使うのは古いやり方です。これを使わないでリストファイル内で
497 .Cm norsync
498 または
499 .Cm rnorsync
500 を使ってください(後述)。
501 .El
502 .Pp
503 .\"O Unrecognized phrases are accepted but ignored, for backward
504 .\"O compatibility with the
505 .\"O .Nm sup
506 .\"O package.
507 認識できないキーワードは受け付けられますが、無視されます。
508 これは
509 .Xr sup 1
510 パッケージとの後方互換性のためです。
511 .\"O Note that even though
512 .\"O .Nm
513 .\"O often serves only a single release, the
514 .\"O .Pa releases
515 .\"O file is still required.
516 .Nm
517 が提供するリリースが 1 つだけであっても、
518 .Pa releases
519 ファイルは必要であることを覚えておいてください。
520 .Pp
521 .\"O The list file specifies the details of how to upgrade the client's
522 .\"O version of the collection.
523 リストファイルは、クライアントのコレクションのバージョンを更新する方法
524 を詳しく指定します。
525 .\"O Each line contains a single command.  Blank lines are ignored, as are
526 .\"O lines beginning with
527 .\"O .Ql # .
528 各行には 1 つだけコマンドが書かれます。空行と
529 .Ql #
530 から始まる行は無視されます。
531 .\"O Any filenames specified are taken as relative to the
532 .\"O .Cm prefix
533 .\"O directory given in the
534 .\"O .Pa releases
535 .\"O file.
536 指定される全てのファイル名は
537 .Pa releases
538 内で指定されている
539 .Cm prefix
540 ディレクトリからの相対パスとして扱われます。
541 .Pp
542 .\"O Many of the list file commands accept file name patterns as
543 .\"O arguments.
544 リストファイルのコマンドの多くは、ファイル名のパターンを引数として
545 受け付けます。
546 .\"O These are similar to the patterns accepted by
547 .\"O .Xr sh 1 ,
548 .\"O and may include the wild card constructs
549 .\"O .Ql * ,
550 .\"O .Ql ? ,
551 .\"O and
552 .\"O .Ql [...] .
553 このパターンは
554 .Xr sh 1
555 が受け付けるパターンに似ており、
556 .Ql * ,
557 .Ql ? ,
558 .Ql [...]
559 を組み合わせたワイルドカードが使えます。
560 .\"O With the exception of
561 .\"O .Cm omitany
562 .\"O patterns, any slash characters in file names must be matched
563 .\"O explicitly by slash characters in the pattern.
564 .Cm omitany
565 パターンだけは例外ですが、その他の場合には、ファイル名に含まれる
566 スラッシュ文字は、パターン中のスラッシュ文字とだけマッチします。
567 .\"O Leading periods in file names are not treated specially.
568 .\"O For example, the pattern
569 .\"O .Ql *
570 .\"O matches the filename
571 .\"O .Ql .profile .
572 例えば
573 .Ql *
574
575 .Ql .prifole
576 というファイル名にマッチします。
577 .Bl -tag -width Fl
578 .It Cm upgrade Ar pattern ...
579 .\"O All files and directories matching any of the given patterns
580 .\"O will be included in the list of files to be upgraded.
581 与えられたパターンのいずれかにマッチした、すべてのファイルとディレクトリ
582 が更新ド対象のリストに含められます。
583 .\"O If a directory name is matched, it recursively includes all
584 .\"O files and subdirectories within it.
585 ディレクトリ名がマッチした場合、その中にある全てのファイルと
586 サブディレクトリが再帰的に含まれます。
587 .It Cm always Ar pattern ...
588 .\"O This command is the same as
589 .\"O .Cm upgrade ,
590 .\"O except that it overrides any
591 .\"O .Cm omitany
592 .\"O commands.
593 このコマンドは、全ての
594 .Cm omitany
595 コマンドを上書きすることを除いて、
596 .Cm upgrade
597 コマンドと同一です。
598 .It Cm omitany Ar pattern ...
599 .\"O Files or directories matching any of the given patterns will be
600 .\"O omitted from the upgrade.  If a directory name is matched,
601 .\"O then it and all files and subdirectories beneath it are omitted.
602 与えられたパターンのいずれかにマッチした、すべてのファイルとディレクトリ
603 は更新対象のリストから除外されます。
604 ディレクトリ名がマッチした場合、その中にある全てのファイルと
605 サブディレクトリが除外されます。
606 .Pp
607 .\"O The patterns for
608 .\"O .Cm omitany
609 .\"O are interpreted differently than other patterns.  For normal
610 .\"O patterns, a slash character in a pathname must be matched explicitly
611 .\"O by a slash character in the pattern.  For
612 .\"O .Cm omitany
613 .\"O patterns, slashes are treated the same as other characters.
614 .Cm omitany
615 に対するパターンの解釈は他のパターンと異なります。
616 一般のパターンでは、パス名に含まれるスラッシュ文字はパターン中の
617 スラッシュ文字にのみマッチしますが、
618 .Cm omitany
619 に与えるパターンでは、スラッシュ文字は他の文字と同じように扱われます。
620 .\"O Thus the pattern
621 .\"O .Ql *.c
622 .\"O will match any pathname ending in
623 .\"O .Ql \&.c ,
624 .\"O including, for example,
625 .\"O .Ql foo/bar/lam.c .
626 したがって、
627 .Ql *.c
628
629 .Ql \&.c
630 で終わるすべてのパス名にマッチします。例えば
631 .Ql foo/bar/lam.c
632 も含まれます。
633 .It Cm symlink Ar pattern ...
634 .\"O Symbolic links matching any of the given patterns will be upgraded
635 .\"O as symbolic links, rather than as the files they refer to.
636 与えられたパターンのいずれかにマッチしたシンボリックリンクは、その
637 シンボリックリンクが指すファイルとしてではなく、シンボリックリンクとし
638 てアップグレードされます。
639 .\"O Otherwise, symbolic links are followed and their target files are
640 .\"O sent to the client.
641 この指定がない場合、シンボリックリンクのリンク先が参照され、リンクが指
642 すファイルがクライアントに送られます。
643 .It Cm rsymlink Ar pattern ...
644 .\"O This command is similar to
645 .\"O .Cm symlink ,
646 .\"O but if a directory is matched, all symbolic links beneath it in the
647 .\"O tree are treated as matched.
648 このコマンドは
649 .Cm symlink
650 に似ていますが、もしディレクトリがマッチした場合、そのディレクトリ
651 ツリー以下のすべてのシンボリックリンクもマッチしたものとして扱われます。
652 .It Cm norsync Ar pattern ...
653 .\"O The rsync algorithm will not be used for updating files matching any
654 .\"O of the given patterns.  This is useful for log files, where
655 .\"O .Nm CVSup Ns "'s"
656 .\"O .Dq append
657 .\"O optimization is more effective than the rsync algorithm.
658 与えられたパターンのいずれかにマッチしたファイルの更新において、rsync 
659 アルゴリズムが使われません。この指定はログファイルで役立ちます。
660 というのも、
661 .Nm
662
663 .Dq append
664 最適化の方が rsync アルゴリズムよりも効率的だからです。
665 .It Cm rnorsync Ar pattern ...
666 .\"O This command is similar to
667 .\"O .Cm norsync ,
668 .\"O but if a directory is matched, all files beneath it in the tree are
669 .\"O treated as matched.
670 このコマンドは
671 .Cm norsync
672 に似ていますが、もしディレクトリがマッチした場合、そのディレクトリ
673 ツリー以下の全てのファイルがマッチしたものとして扱われます。
674 .It Cm execute Ar command Pq Ar pattern ...
675 .\"O The given
676 .\"O .Ar command
677 .\"O will be executed by the client whenever a file matching one of the
678 .\"O .Ar pattern Ns s
679 .\"O is successfully updated.
680 .Ar pattern
681 の 1 つにマッチするファイルの更新が成功したときに、指定された
682 .Ar command
683 がクライアントによって実行されます。
684 .\"O The
685 .\"O .Ar command
686 .\"O comprises all words up to the first
687 .\"O .Ql (
688 .\"O character.  Any occurrences of the string
689 .\"O .Ql %s
690 .\"O are replaced by the pathname of the updated file on the client host.
691 .Ar command
692 は、最初の
693 .Ql (
694 までの全ての語からなります。
695 .Ql %s
696 という文字列はすべて、クライアントホストで更新されたファイルのパス名に
697 置き換えられます。
698 .\"O Occurrences of
699 .\"O .Ql %%
700 .\"O are replaced by
701 .\"O .Ql % .
702 存在する
703 .Ql %%
704 はすべて
705 .Ql %
706 に置き換えられます。
707 .\"O The command is executed by passing it to
708 .\"O .Pa /bin/sh .
709 コマンドは文字列を
710 .Pa /bin/sh
711 に渡すことで実行されます。
712 .Pp
713 .\"O There may be multiple patterns, separated by white space.
714 空白文字で区切って複数のパターンを指定することができます。
715 .\"O They are interpreted relative to the
716 .\"O .Cm prefix
717 .\"O directory.
718 それらのファイルは
719 .Cm prefix
720 ディレクトリからの相対パスとして解釈されます。
721 .\"O Each pattern should be written to match the appropriate files as they
722 .\"O exist on the
723 .\"O .Em server .
724 それぞれのパターンは、ファイルが
725 .Em server
726 上に存在する場合でも適切なファイルにマッチするように記述しなければなり
727 ません。
728 .\"O For example, the
729 .\"O .Ql ,v
730 .\"O suffix of an RCS file name must be matched, even though that suffix
731 .\"O will not be present on the client if checkout mode is in effect.
732 例えば RCS ファイル名の
733 .Ql ,v
734 サフィックスは、たとえチェックアウトモードの結果としてクライアント上にそ
735 のサフィックスが存在しない場合でもマッチしなければなりません。
736 .\"O Slashes in file names must be matched by explicit slashes in the pattern.
737 ファイル名に含まれるスラッシュ文字は、パターン中のスラッシュと正確に一
738 致しなければなりません。
739 .\"O CVS
740 .\"O .Ql Attic
741 .\"O directories are implicitly included in the matching process, and
742 .\"O should not be specified directly in the patterns.
743 CVS の
744 .Ql Attic
745 ディレクトリはマッチングの処理に暗黙的に含まれるで、パターン中で直接指
746 定してはいけません。
747 .\"O A matching file will be found whether it is in the Attic or not.
748 マッチするファイルは、それが Attic かどうかに関わらず発見されます。
749 .Pp
750 .\"O If an
751 .\"O .Cm execute
752 .\"O statement matches a directory, its command is executed if the
753 .\"O directory is created for the first time, or if its attributes are
754 .\"O changed.
755 .Cm execute
756 文がディレクトリにマッチした場合、コマンドが実行されるのは、
757 ディレクトリが新規に作成されたとき、またはディレクトリの属性が変更され
758 たときです。
759 .\"O The command is executed when ascending out of the directory, i.e.,
760 .\"O after its files and subdirectories have been processed.
761 コマンドはディレクトリから上ったとき、つまりそのディレクトリ内の
762 ファイルとサブディレクトリの処理が終わった後に実行されます。
763 .Pp
764 .\"O If multiple
765 .\"O .Cm execute
766 .\"O statements match a file, all of the associated commands are executed
767 .\"O in sequence.
768 複数の
769 .Cm execute
770 文が 1 つのファイルにマッチした場合、全ての関係するコマンドが順に実行
771 されます。
772 .Pp
773 .\"O For security reasons, the client may choose to ignore all
774 .\"O .Cm execute
775 .\"O statements.
776 セキュリティ上の理由で、クライアントは全ての
777 .Cm execute
778 文を無視するかもしれません。
779 .El
780 .Pp
781 .\"O Unrecognized commands are accepted but ignored, for backward
782 .\"O compatibility with
783 .\"O .Nm sup .
784 認識できないコマンドは受け付けられますが、無視されます。これは
785 .Xr sup 1
786 との後方互換性のための動作です。
787 .\"O .Sh RUNNING A CVSup MIRROR SITE
788 .Sh CVSup によるミラーサイトの運営
789 .\"O A mirror is a server which obtains and updates its files from a master
790 .\"O site by means of
791 .\"O .Nm CVSup ,
792 .\"O and redistributes them via
793 .\"O .Nm CVSup
794 .\"O to other sites.  Mirror sites are commonly used in large projects
795 .\"O to spread the load among a number of servers.  The files being
796 .\"O distributed originate at a master site.  Each mirror site updates its
797 .\"O own copies of the files periodically from there.  Clients in turn
798 .\"O obtain their updates from any of the mirror sites.
799 ミラーサイトとは、
800 .Nm CVSup 
801 を用いてマスターのサイトからファイルの取得と更新を行い、
802 .Nm CVSup
803 経由で他のサイトにファイルを再配布するサーバのことです。ミラーサイトは、
804 大きなプロジェクトで負荷を複数のサーバに分散するためによく使われます。
805 配布されるファイルは元々はマスターサイトに置かれます。各ミラーサイトは
806 マスターサイトを基にして、自分が持っているコピーを定期的に更新します。
807 次に、クライアントはミラーサイトのどれかから更新分のファイルを取得しま
808 す。
809 .Pp
810 .\"O .Nm
811 .\"O has a special mode of operation for mirror sites that dramatically
812 .\"O increases its efficiency.  This mode is enabled by the
813 .\"O .Fl s Ar scanDir
814 .\"O option on the command line.  Without the
815 .\"O .Fl s
816 .\"O option,
817 .\"O .Nm
818 .\"O makes a full file tree traversal over the files in each requested
819 .\"O collection, performing a
820 .\"O .Xr stat 2
821 .\"O system call on every file.  It does this for each client that connects
822 .\"O to it, on the assumption that any of the files could change at any
823 .\"O time.  Such a traversal imposes a heavy seek load on the disks
824 .\"O containing the files, and limits the number of clients that can be
825 .\"O served simultaneously.
826 .Nm
827 には、ミラーサイトの効率を劇的に向上させるための特殊な動作モードがあり
828 ます。このモードはコマンドラインで
829 .Fl s Ar scanDir
830 オプションを指定すると有効になります。
831 .Fl s
832 オプションを指定しないと、
833 .Nm
834 は要求された各コレクションのファイルに対してファイルツリー全体を調
835 べて、全てのファイルについて
836 .Xr stat 2
837 システムコールを実行します。この動作は接続した全てのクライアントに対し
838 て行われます。どのファイルがいつ変更されるか分からないからです。このよ
839 うな調べ方をするとファイルを持っているディスクに対してシークの負荷が大
840 きくかかり、同時にサービスを受けられるクライアントの数が制限されること
841 になります。
842 .Pp
843 .\"O On a mirror site, the files in the collections are known to
844 .\"O change only when new versions of them come in via
845 .\"O .Nm CVSup .
846 ミラーサイトの場合には、コレクション内のファイルが更新されるのは新しい
847 バージョンを
848 .Nm CVSup
849 経由で受け取る時だけであることが分かっています。
850 .\"O The
851 .\"O .Fl s
852 .\"O option allows
853 .\"O .Nm
854 .\"O to take advantage of this property to completely avoid the file tree
855 .\"O traversals.  This reduces the disk load on the server by orders of
856 .\"O magnitude.  In place of the file tree traversal,
857 .\"O .Nm
858 .\"O gets the necessary information about the files in the collections by
859 .\"O reading
860 .\"O .Em scan
861 .\"O files.  The scan files are created by the
862 .\"O .Nm cvsup
863 .\"O client when it updates the files on the mirror site from the
864 .\"O originals at the master site.  In
865 .\"O .Xr CVSUP 1 ,
866 .\"O these files are referred to as
867 .\"O .Em list
868 .\"O files.  Both names refer to the same files.  Each time
869 .\"O .Nm
870 .\"O serves a client, it finds the scan files created by the most recent
871 .\"O update from the master site.  Thus the server always has fully
872 .\"O up-to-date information about the files in the collections, without the
873 .\"O need to perform a file tree traversal.
874 .Fl s
875 オプションを使うと、
876 .Nm
877 はこの性質を生かして、ファイルツリーの調査を全く行わずにすみます。
878 そのため、サーバのディスク負荷は大幅に削減されます。ファイルツリーを調
879 べる代わりに、
880 .Nm
881 はコレクション内のファイルに関する必要な情報を
882 .Em scan
883 ファイルを読むことによって取得します。scan ファイルは、
884 .Nm cvsup
885 クラアイントがミラーサイト上のファイルをマスターサイトにあるオリジナル
886 のデータを使って更新する際に、クライアントが作成します。
887 .Xr CVSUP 1
888 では、これらのファイルは
889 .Em list
890 と書かれています。どちらの呼び方でも同じファイルを指しています。
891 .Nm
892 はクライアントにサービスする際は毎回、最後のマスターサイトからの更新の
893 ときに生成された scan ファイルを見つけます。したがって、サーバは
894 コレクション内にあるファイルに関する最新の情報を常に持っており、
895 ファイルツリーを調べる必要はありません。
896 .Pp
897 .\"O The
898 .\"O .Fl s
899 .\"O option is followed by a directory name which specifies where the
900 .\"O scan files can be found.  It is normally a subdirectory
901 .\"O of the base directory, and it must match the location where the
902 .\"O .Nm cvsup
903 .\"O client maintains its list files.  By default,
904 .\"O .Nm cvsup
905 .\"O locates these files under the
906 .\"O .Pa sup
907 .\"O subdirectory of the base directory.  To match this,
908 .\"O .Nm
909 .\"O should be run with
910 .\"O .Ql -s sup .
911 .Fl s
912 オプションの後には、scan ファイルがあるディレクトリ名を指定します。こ
913 れは普通、起点ディレクトリのサブディレクトリであり、
914 .Nm cvsup
915 クライアントがリストファイルを管理している場所と一致していなければなり
916 ません。デフォルトでは、
917 .Nm cvsup
918 は起点ディレクトリのサブディレクトリである
919 .Pa sup
920 にこれらのファイルを置きます。これに合わせるには、
921 .Nm
922
923 .Ql -s sup
924 で実行しなければなりません。
925 .\"O If
926 .\"O .Nm cvsup Ns 's
927 .\"O list file location is changed from the default using the
928 .\"O .Fl c
929 .\"O option, then
930 .\"O .Nm Ns 's
931 .\"O scan directory must be changed the same way.  There is no default
932 .\"O for the
933 .\"O .Fl s
934 .\"O option.  If it is not given explicitly on the command line, no scan
935 .\"O files are used.
936 .Fl c
937 オプションによって
938 .Nm cvsup
939 のリストファイルの位置がデフォルト値から変更されている場合、
940 .Nm Ns
941 の scan ディレクトリも同じように変更しなければなりません。
942 .Fl s
943 オプションにはデフォルト値はありません。コマンドラインで明示的に指定し
944 ていなければ、scan ファイルは全く使われません。
945 .Pp
946 .\"O There does not need to be a scan file for every collection.
947 全てのコレクションに対して scan ファイルが存在する必要はありません。
948 .\"O .Nm
949 .\"O first looks for the scan file for the collection requested by the
950 .\"O client.  If that scan file does not exist,
951 .\"O .Nm
952 .\"O tries the scan files for each successive super-collection, and uses
953 .\"O the first one it finds.  (See the description of the
954 .\"O .Cm super
955 .\"O keyword in
956 .\"O .Sx PREPARING A FILE COLLECTION REPOSITORY
957 .\"O for details.)
958 .\"O If no suitable scan file is located,
959 .\"O .Nm
960 .\"O falls back on performing a file tree traversal.
961 .Nm
962 はまずクライアントが要求したコレクションについて scan ファイルを探しま
963 す。その scan ファイルが存在しなければ、
964 .Nm
965 は順にスーパーコレクションの scan ファイルを探していき、最初に見つかっ
966 た scan ファイルを使います。
967 (詳しくは
968 .Sx ファイルコレクションレポジトリを準備する
969 で説明されている
970 .Cm super
971 キーワードの説明を参照してください。)
972 適切な scan ファイルがなければ、
973 .Nm
974 は最終的にファイルツリーを全て調べます。
975 .\"O .Sh ACCESS CONTROL
976 .Sh アクセス制御
977 .\"O Access to the server is unrestricted by default, but there is a
978 .\"O reasonably flexible mechanism for limiting access based on the IP
979 .\"O addresses of connecting clients.  It is enabled by placing a set
980 .\"O of rules into the access file
981 .\"O .Ar base Ns Pa /cvsupd.access .
982 .\"O The access file is a text file with one rule per line.  Comments
983 .\"O begin with
984 .\"O .Ql #
985 .\"O and extend to the end of the line.  White space is ignored except
986 .\"O where it is needed to separate adjacent tokens.  Blank lines are
987 .\"O ignored.
988 デフォルトの動作ではサーバへのアクセスは制限されていませんが、接続する
989 クライアントの IP アドレスに基づくかなり柔軟な機構があります。この機構は
990 アクセス制御ファイル
991 .Ar base Ns Pa /cvsupd.access
992 に規則を書くことによって有効になります。アクセス制御ファイルは
993 テキストファイルであり、1 行に 1 つの規則が書かれます。コメントは
994 .Ql #
995 で始まり、その行の最後まで続きます。空白文字は無視されますが、隣り合う
996 トークンを区切る場合は除きます。空行は無視されます。
997 .Pp
998 .\"O Each rule consists of the following components:
999 それぞれの規則は以下の要素からなります:
1000 .Bl -bullet
1001 .It
1002 .\"O A flag indicating whether the rule is a
1003 .\"O .Em permit
1004 .\"O rule, an
1005 .\"O .Em authenticate
1006 .\"O rule, or a
1007 .\"O .Em deny
1008 .\"O rule.  The flag is expressed as a single character:
1009 規則が
1010 .Em 許可(permit)
1011 規則、
1012 .Em 認証(authenticate)
1013 規則、
1014 .Em 拒否(deny)
1015 規則のいずれであるかを示すフラグ。このフラグは 1 つの文字で表されます:
1016 .\"O .Ql +
1017 .\"O means
1018 .\"O .Em permit ,
1019 .\"O .Ql *
1020 .\"O means
1021 .\"O .Em authenticate,
1022 .\"O and
1023 .\"O .Ql -
1024 .\"O means
1025 .\"O .Em deny.
1026 .Ql +
1027 は許可規則、
1028 .Ql *
1029 は認証規則、
1030 .Ql -
1031 は拒否規則を表します。
1032 .It
1033 .\"O An IP address to compare with the client's IP address to determine
1034 .\"O whether the rule applies to the client.  This may be expressed either
1035 .\"O as a numeric IP address or as a host name.  Numeric addresses consist
1036 .\"O of 1 to 4 octet values, separated by dots.  If fewer than 4 octets are
1037 .\"O specified, the trailing octets are assumed to contain 0.
1038 クライアントの IP アドレスと比較され、そのクライアントに規則を適用する
1039 かどうかが決めるための IP アドレス。これは数値の IP アドレスでも
1040 ホスト名でも記述できます。数値のアドレスは、ドットで区切った 1 個から 
1041 4 個のオクテットで表します。指定したオクテットが 4 個より少ない場合は、
1042 後ろのオクテットが 0 であるとして扱われます。
1043 .Pp
1044 .\"O Host names are converted to numeric addresses when they are read.
1045 ホスト名は読み込まれる時に数値アドレスに変換されます。
1046 .\"O If a host has multiple addresses, a separate rule is added for each
1047 .\"O address.  This may or may not have the desired effect.
1048 ホストが複数個のアドレスを持っている場合、それぞれのアドレスに対する
1049 規則が個別に追加されます。これは望み通りの動作をするかもしれませんし、
1050 そうでないかもしれません。
1051 .Pp
1052 .\"O Host names should be used with caution.  A name that is slow to
1053 .\"O resolve can bog down the server significantly.
1054 ホスト名は注意して使うべきです。解決に時間がかかる名前があると、
1055 サーバの動作が著しく遅くなるからです。
1056 .It
1057 .\"O A
1058 .\"O .Em matching
1059 .\"O mask to be ANDed with the IP addresses of the rule and the client
1060 .\"O before comparing the addresses.  This mask is specified as
1061 .\"O .Ql /
1062 .\"O followed by an integer giving the number of high-order 1s in the
1063 .\"O mask.  For example,
1064 .\"O .Ql /24
1065 .\"O specifies a mask of 0xffffff00.  The
1066 .\"O .Em matching
1067 .\"O mask is optional; if omitted, it defaults to
1068 .\"O .Ql /32 .
1069 アドレスを比較する前に規則とクライアントの IP アドレスとの AND を取る
1070 ための
1071 .Em matching
1072 マスク。このマスクは、
1073 マスクの上位ビットにある 1 の個数を
1074 .Ql /
1075 の後に書いて指定します。例えば、
1076 .Ql /24
1077 は 0xffffff00 というマスクを示します。
1078 .Em matching
1079 マスクは省略してもかまいません。省略した場合のデフォルト値は
1080 .Ql /32
1081 です。
1082 .It
1083 .\"O A
1084 .\"O .Em counting
1085 .\"O mask that determines how the clients that match the rule are counted.
1086 規則にマッチしたクライアントを数える方法(後述)を決める
1087 .Em counting
1088 マスク。
1089 .\"O (See below.)  It is specified the same way as the
1090 .\"O .Em matching
1091 .\"O mask.  The
1092 .\"O .Em counting
1093 .\"O mask is optional; if omitted, it defaults to the same value as the
1094 .\"O .Em matching
1095 .\"O mask.
1096 指定方法は
1097 .Em matching
1098 マスクと同じです。
1099 .Em counting
1100 マスクは省略してもかまいません。省略した場合はデフォルト値として、
1101 .Em matching
1102 マスクと同じ値を持ちます。
1103 .It
1104 .\"O A
1105 .\"O .Em limit
1106 .\"O specifying the maximum number of matching clients allowed at the same
1107 .\"O time.  This is specified as a decimal integer, preceded by white
1108 .\"O space to separate it from the preceding component.  The
1109 .\"O .Em limit
1110 .\"O is optional.  If omitted, it defaults to 0 for a
1111 .\"O .Em deny
1112 .\"O rule, or to infinity for a
1113 .\"O .Em permit
1114 .\"O rule.
1115 同時にマッチできるクライアントの最大数を指定する
1116 .Em limit
1117 値。これは 10 進の整数で指定し、前の要素と区別するために空白を前に
1118 置きます。
1119 .Em limit
1120 は省略してもかまいません。省略した場合のデフォルト値は、
1121 .Em 拒否
1122 規則については 0 であり、
1123 .Em 許可
1124 規則については無制限です。
1125 .El
1126 .Pp
1127 .\"O When a client connects to the server, its IP address is checked
1128 .\"O against successive rules in sequence.  Each rule is processed as
1129 .\"O follows:
1130 クライアントがサーバに接続した際、クライアントの IP アドレスは
1131 規則に対して順番にチェックされていきます。
1132 それぞれの規則は以下のように処理されます:
1133 .Bl -enum
1134 .It
1135 .\"O The IP address of the rule is compared with the IP address of the
1136 .\"O client, after ANDing each address with the
1137 .\"O .Em matching
1138 .\"O mask.  If the addresses do not match, the rule is ignored.
1139 規則の IP アドレスとクライアントの IP アドレスを比較します。
1140 比較の前にはそれぞれのアドレスと
1141 .Em matching
1142 マスクとの AND を取っておきます。
1143 アドレスがマッチしなければ、この規則は無視されます。
1144 .It
1145 .\"O The IP addresses of all other currently connected clients are compared
1146 .\"O with the IP address of the connecting client, after ANDing each
1147 .\"O address with the
1148 .\"O .Em counting
1149 .\"O mask.  If the number of matching clients (not counting the connecting
1150 .\"O client) is less than the
1151 .\"O .Em limit ,
1152 .\"O then the rule
1153 .\"O .Em succeeds .
1154 現在接続している他の全てのクライアントの IP アドレスと
1155 接続しようとしているクライアントの IP アドレスを比較します。
1156 比較の前には各アドレスと
1157 .Em counting
1158 マスクとの AND を取っておきます。マッチしているクライアントの数
1159 (接続しようとしているクライアントは数えません)が
1160 .Em limit
1161 より小さければ規則は
1162 .Em 成功
1163 となります。
1164 .\"O Otherwise, the rule
1165 .\"O .Em fails .
1166 そうでなければ規則は
1167 .Em 失敗
1168 します。
1169 .It
1170 .\"O If the rule is a
1171 .\"O .Em permit
1172 .\"O rule and it succeeded, the client is allowed access, and the rest of the
1173 .\"O rules are ignored.
1174 規則が
1175 .Em 許可
1176 規則であり、かつ成功であれば、クライアントの接続が許可され、残りの規則
1177 は無視されます。
1178 .It
1179 .\"O If the rule is an
1180 .\"O .Em authenticate
1181 .\"O rule and it succeeded, the server attempts to verify the client's
1182 .\"O identity using a challenge-response protocol (see
1183 .\"O .Sx AUTHENTICATION ,
1184 .\"O below).
1185 規則が
1186 .Em 認証
1187 規則であり、かつ成功であれば、サーバはクライアントが何者であるかを確認
1188 しようとします。確認には challenge-response プロトコルを用います(後述の
1189 .Sx 認証
1190 の節を見てください)。
1191 .\"O Access is granted or denied based on the outcome of authentication.
1192 アクセスが許可されるか拒否されるかは認証の結果によって決まります。
1193 .\"O The rest of the rules are ignored.
1194 残りの規則は無視されます。
1195 .It
1196 .\"O If the rule is a
1197 .\"O .Em deny
1198 .\"O rule and it failed, the client is denied access, and the rest of the
1199 .\"O rules are ignored.
1200 規則が
1201 .Em 拒否
1202 規則であり、かつ失敗であれば、クライアントはアクセスを拒否され、残りの
1203 規則は無視されます。
1204 .It
1205 .\"O Otherwise, processing continues with the next rule.
1206 これ以外の場合には、次の規則について処理が継続されます。
1207 .El
1208 .Pp
1209 .\"O There is an implicit
1210 .\"O .Em authenticate
1211 .\"O rule at the end of the list which matches any IP address.  Thus,
1212 .\"O if the processing reaches the end of the list of rules without having
1213 .\"O allowed or denied access, access is controlled by the authentication
1214 .\"O mechanism.
1215 リストの最後には、どんな IP アドレスにもマッチする
1216 .Em 認証
1217 規則が暗黙的に置かれています。したがって、アクセスが許可も拒否もされず
1218 に処理が終わった場合は、アクセスは認証機構によって制御されます。
1219 .Pp
1220 .\"O Here are some examples illustrating how the rules are commonly used.
1221 規則の一般的な使用方法の例を以下に示します。
1222 .Pp
1223 .Dl -spam.cyberpromo.com
1224 .\"O Deny all access from a specific host.
1225 特定のホストからのアクセスを全て拒否します。
1226 .Pp
1227 .Dl +mirror.FreeBSD.org
1228 .\"O Permit unlimited access from a specific host.
1229 特定のホストからのアクセスを無制限に許可します。
1230 .Pp
1231 .Dl -user.FreeBSD.org 1
1232 .\"O Limit a specific host to at most 1 connection at a time.
1233 特定のホストからの同時接続を 1 つだけに制限します。
1234 .Pp
1235 .Dl -198.211.214/24
1236 .\"O Deny all access from hosts in a specific class C address block.
1237 特定のクラス C アドレスのホストからのアクセスを拒否します。
1238 .Pp
1239 .Dl -198.211.214/24 3
1240 .\"O Allow at most 3 connections total from the hosts in a specific class C
1241 .\"O address block.
1242 特定のクラス C アドレスのホストからの同時アクセスを、
1243 合計 3 つまで許可します。
1244 .Pp
1245 .Dl -198.211.214/24/32 3
1246 .\"O Allow at most 3 connections from each of the hosts in a specific
1247 .\"O class C address block.
1248 特定のクラス C アドレスに含まれるホストからの同時アクセスを、
1249 ホストごとに合計 3 つまで許可します。
1250 .Pp
1251 .\"O Note the difference between the previous two examples.
1252 上記 2 つの例の違いに注意してください。
1253 .\"O The first example imposes a per-network limit, while the second
1254 .\"O example imposes a per-host limit.  The difference is in the
1255 .\"O .Em counting
1256 .\"O mask.  The 24 bit mask in the first example produces a single counter
1257 .\"O that is shared by all of the hosts in the specified address block.  The
1258 .\"O 32 bit mask in this example produces a separate counter for each host.
1259 前者の例はネットワークごとの制限を行い、後者の例はホスト単位の制限を行っ
1260 ています。両者の相違点は
1261 .Em counting
1262 マスクです。最初の例はマスクが 24 ビットなので、指定したアドレスブロッ
1263 クに含まれる全てのホストについて共通のカウンタが作られます。後者の例は
1264 マスクが 32 ビットなので、ホストごとに別々のカウンタが作られます。
1265 .Pp
1266 .Dl -0.0.0/0/24 1
1267 .\"O Allow no more than 1 connection at a time from each block of 256
1268 .\"O addresses.
1269 各アドレスブロック(アドレス 256 個)からの同時接続をそれぞれ 1 つだけ
1270 許可します。
1271 .Pp
1272 .Dl *0.0.0.0/0
1273 .\"O For all clients, use authentication to decide whether access is allowed.
1274 全てのクライアントについて、認証を行ってアクセスを許可するかどうかを決
1275 めます。
1276 .Pp
1277 .\"O When updating the access file, it is not necessary to halt the
1278 .\"O server.  But the file should be copied for editing, and then the new
1279 .\"O version should be moved atomically into place.  There is no need to
1280 .\"O signal the server after updating the file.  The server will notice
1281 .\"O that the file has been touched, and will rescan it automatically.
1282 アクセス制御ファイルを更新する際にサーバを止める必要はありません。
1283 しかし、編集の際にはコピーを取って別の場所で編集し、それからアトミック
1284 に新しいファイルに置き換えるべきです。ファイルを更新した後にサーバに
1285 シグナルを送る必要はありません。サーバはファイルが触られたことを
1286 検出し、再読み込みを自動的に行います。
1287 .\"O In addition, the server rescans the file every 3 hours to keep up
1288 .\"O with DNS changes that might affect the resolved addresses of host
1289 .\"O names.
1290 さらに、サーバは 3 時間ごとにファイルを再読み込みします。
1291 これは DNS の変更で解決されるホスト名が変わるかもしれないので、これに
1292 対応するためです。
1293 .Pp
1294 .\"O Syntax errors in individual rules are logged, and the offending
1295 .\"O rules are ignored.  Host name lookup failures are also logged.
1296 個々の規則における文法違反はログに記録され、違反している規則は無視され
1297 ます。ホスト名解決の失敗もログに記録されます。
1298 .\"O .Sh AUTHENTICATION
1299 .Sh 認証
1300 .\"O .Nm CVSup
1301 .\"O implements an authentication mechanism which can be used to control
1302 .\"O access to the server.  It uses a challenge-response protocol which is
1303 .\"O immune to packet sniffing and replay attacks.  No passwords are sent
1304 .\"O over the network in either direction.  Both the client and the server
1305 .\"O can independently verify the identities of each other.
1306 .Nm CVSup
1307 はサーバへのアクセスの制御に使える認証機構を備えています。この認証機構
1308 はパケットの盗聴攻撃や再生攻撃の影響を受けない challenge-response 
1309 プロトコルを使っています。ネットワーク上ではどちらの方向にもパスワード
1310 は流れません。クライアントとサーバはどちらとも、相手が何者であるかを
1311 独立して確認できます。
1312 .Pp
1313 .\"O Authentication of the client is invoked by a successful
1314 .\"O .Em authenticate
1315 .\"O rule in the
1316 .\"O .Ar base Ns Pa /cvsupd.access
1317 .\"O file, or by
1318 .\"O .Dq falling off the end
1319 .\"O of the file.  If there is no
1320 .\"O .Pa cvsupd.access
1321 .\"O file, clients are not authenticated.
1322 クライアントの認証は
1323 .Ar base Ns Pa /cvsupd.access
1324 ファイル内の
1325 .Em 認証
1326 規則が成功するか、
1327 .Dq 規則が適用されないままファイル末尾まで来た
1328 場合に呼び出されます。
1329 .Pa cvsupd.access
1330 が存在しない場合はクライアントの認証は行われません。
1331 .Pp
1332 .\"O The file
1333 .\"O .Ar base Ns Pa /cvsupd.passwd
1334 .\"O holds the information used for performing authentication.  This file
1335 .\"O contains a record for each client who is allowed access to the
1336 .\"O server.  Each record occupies one line in the file.  Lines beginning
1337 .\"O with
1338 .\"O .Ql #
1339 .\"O are ignored, as are lines containing only white space.
1340 .Ar base Ns Pa /cvsupd.passwd
1341 ファイルには認証時に使う情報が入っています。このファイルには、
1342 サーバへのアクセスが許可されたクライアントについてのレコードが書かれて
1343 います。ファイル中では 1 行に 1 レコードが書かれます。
1344 .Ql #
1345 で始まる行と、空白文字しか含まない行は無視されます。
1346 .\"O White space is significant everywhere else in the file.  Fields are
1347 .\"O separated by
1348 .\"O .Ql \&:
1349 .\"O characters.
1350 ファイル中の別の場所では空白文字は必ず意味を持ちます。フィールドは
1351 .Ql \&:
1352 文字で区切ります。
1353 .Pp
1354 .\"O The first record of the file is special.  It specifies the identity
1355 .\"O of the server itself.  This server record has the form:
1356 ファイルの最初のレコードは特別です。最初のレコードはサーバ自身を表しま
1357 す。サーバのレコードは以下の形式になります:
1358 .Pp
1359 .Dl Ar serverName Ns No : Ns Ar privateKey
1360 .Pp
1361 .\"O .Ar ServerName
1362 .\"O is the canonical name of the server, e.g.,
1363 .\"O .Ql CVSup.FreeBSD.ORG .
1364 .Ar ServerName
1365 はサーバのカノニカル名です(例:
1366 .Ql CVSup.FreeBSD.ORG
1367 )。
1368 .\"O This name is sent to the client, which uses it to choose an
1369 .\"O appropriate client name and shared secret for authentication.  The
1370 .\"O name is case-insensitive.
1371 この名前がクライアントに送られ、クライアントはこの名前を使って適切なク
1372 ライアント名と、認証のために共有している秘密の文字列を選びます。
1373 この名前では大文字と小文字は区別されません。
1374 .Pp
1375 .\"O .Ar PrivateKey
1376 .\"O is any string of characters except
1377 .\"O .Ql \&: .
1378 .Ar PrivateKey
1379
1380 .Ql \&:
1381 を除く任意の文字からなる文字列です。
1382 .\"O When the server generates random challenges to send to the client,
1383 .\"O it uses
1384 .\"O .Ar privateKey
1385 .\"O to make the challenges harder to guess.  Challenges are random and
1386 .\"O quite unpredictable in any case, so the
1387 .\"O .Ar privateKey
1388 .\"O isn't really very important.  It can be left empty if desired, but
1389 .\"O the
1390 .\"O .Ql \&:
1391 .\"O that precedes it must be present.
1392 サーバがランダムな challenge 文字列を生成してクライアントに送った時、
1393 サーバは推測が困難な challenge 文字列を
1394 .Ar privateKey
1395 を使って作ります。challenge 文字列はランダムであり、まず予測できないの
1396 で、
1397 .Ar privateKey
1398 は実はあまり重要ではありません。そうしたければ空のままでもかまいません
1399 が、文字列の前の
1400 .Ql \&:
1401 は必ず必要です。
1402 .Pp
1403 .\"O All of the remaining records in the file correspond to individual
1404 .\"O clients.  Each client record has the following form:
1405 ファイル中の残り全てのレコードは、個々のクライアントに対応します。
1406 クライアント用のレコードは以下の形となります:
1407 .Bd -literal -offset indent
1408 .Sm off
1409 .Xo Ar clientName No : Ar sharedSecret No :
1410 .Ar class No : Ar comment
1411 .Xc
1412 .Sm on
1413 .Ed
1414 .Pp
1415 .\"O All fields must be present even if some of them are empty.
1416 空のフィールドがある場合でも、全てのフィールドが存在しなければなりません。
1417 .\"O .Ar ClientName
1418 .\"O is the name of the client to which the record applies.  By
1419 .\"O convention, e-mail addresses are used for all client names, e.g.,
1420 .\"O .Ql BillyJoe@FreeBSD.ORG .
1421 .Ar ClientName
1422 はレコードが適用されるクライアントの名前です。慣習では、全ての
1423 クライアント名には e-mail アドレスが使われます(例: 
1424 .Ql BillyJoe@FreeBSD.ORG
1425 )。
1426 .\"O Client names are case-insensitive.
1427 クライアント名では大文字と小文字は区別されません。
1428 .Pp
1429 .\"O .Ar SharedSecret
1430 .\"O is a secret string of characters known only to the client and the server.
1431 .Ar SharedSecret
1432 は、クライアントとサーバだけが知っている秘密の文字列です。
1433 .\"O It is generated from a password chosen by the client, using the
1434 .\"O .Nm cvpasswd
1435 .\"O utility.
1436 この文字列はクライアントが選んだパスワードから
1437 .Nm cvpasswd
1438 ユーティリティを使って生成されます。
1439 .\"O The client proves its identity to the server (and vice versa) by
1440 .\"O demonstrating that it knows the
1441 .\"O .Ar sharedSecret .
1442 クライアントは
1443 .Ar sharedSecret
1444 を知っていることを示すことにより、自分の身分をサーバに対して証明します
1445 (その逆も同じです)。
1446 .\"O A client's access may be disabled by changing its
1447 .\"O .Ar sharedSecret
1448 .\"O field to
1449 .\"O .Ql * .
1450 .Ar sharedSecret
1451 フィールドを
1452 .Ql *
1453 にすることにより、クライアントのアクセスを禁止できます。
1454 .Pp
1455 .\"O The shared secret is never sent across the network, nor can it be used
1456 .\"O to find out the client's password.  However, given the shared secret,
1457 .\"O a modified version of
1458 .\"O .Nm cvsup
1459 .\"O could impersonate the client.  Thus, care must be taken to ensure that
1460 .\"O the
1461 .\"O .Pa cvsupd.passwd
1462 .\"O file is readable only by the server.
1463 共有している秘密の文字列がネットワーク上を流れることはありませんし、
1464 秘密の文字列からクライアントのパスワードを調べることもできません。しか
1465 し、共有している秘密の文字列があれば、改造した
1466 .Nm cvsup
1467 を使ってクライアントのふりをすることができるかもしれません。したがって、
1468 .Pa cvsupd.passwd
1469 必ずファイルはサーバしか読めないように注意してください。
1470 .Pp
1471 .\"O .Ar Class
1472 .\"O is reserved for future use.  It should be empty.
1473 .Ar Class
1474 は将来使うために予約しています。空にしてください。
1475 .Pp
1476 .\"O .Ar Comment
1477 .\"O contains any additional information about the client that might be
1478 .\"O useful to the server administrator.  For example, it may contain
1479 .\"O the client's full name and other contact information.
1480 .Ar Comment
1481 はサーバの管理者が便利なように、クライアントに関する備考が書かれていま
1482 す。例えば、クライアントの本名や、別の連絡手段などです。
1483 .Pp
1484 .\"O When updating the
1485 .\"O .Pa cvsupd.passwd
1486 .\"O file, it is not necessary to halt the server.  But the file should
1487 .\"O be copied for editing, and then the new version should be moved
1488 .\"O atomically into place.  There is no need to signal the server after
1489 .\"O updating the file.
1490 .Pa cvsupd.passwd
1491 ファイルを更新する際にサーバを止める必要はありません。
1492 しかし、編集の際にはコピーを取って別の場所で編集し、それからアトミック
1493 に新しいファイルに置き換えるべきです。ファイルを更新した後にサーバに
1494 シグナルを送る必要はありません。
1495 .Pp
1496 .\"O Syntax errors in individual records of the
1497 .\"O .Pa cvsupd.passwd
1498 .\"O file are logged, and the offending records are ignored.
1499 .Pa cvsupd.passwd
1500 ファイル中では、個々のレコードの文法違反はログに記録され、違反している
1501 レコードは無視されます。
1502 .\" ---------------------------------------
1503 .\"O .Sh HOW ACCESS CONTROL AND AUTHENTICATION INTERACT
1504 .Sh アクセス制御と認証通信の方法
1505 .\"O Here is a summary of the interactions between the access control and
1506 .\"O authentication mechanisms.  The key principle is that access control
1507 .\"O takes place first.  The outcome of access control determines whether
1508 .\"O authentication is performed too.
1509 アクセス制御と認証機構の関係を以下にまとめます。重要な原則は、アクセス
1510 制御が先に行われる点です。アクセス制御の結果によって認証が行われるかど
1511 うかが決まります。
1512 .Bl -enum
1513 .It
1514 .\"O If there is no
1515 .\"O .Pa cvsupd.access
1516 .\"O file, then all clients are granted access.  No authentication is
1517 .\"O done, even if
1518 .\"O .Pa cvsupd.passwd
1519 .\"O exists.
1520 .Pa cvsupd.access
1521 ファイルがなければ、全てのクライアントのアクセスが許可されます。たとえ
1522 .Pa cvsupd.passwd
1523 があっても認証は行われません。
1524 .It
1525 .\"O If the
1526 .\"O .Pa cvsupd.access
1527 .\"O file exists but is empty, all clients are subjected to
1528 .\"O authentication.  If
1529 .\"O .Pa cvsupd.passwd
1530 .\"O does not exist, nobody can access the server.
1531 .Pa cvsupd.access
1532 ファイルが存在するけれど、空である場合、全てのクライアントに対して認証
1533 が行われます。
1534 .Pa cvsupd.passwd
1535 が存在しなければ、誰もサーバにアクセスできません。
1536 .It
1537 .\"O If
1538 .\"O .Pa cvsupd.access
1539 .\"O exists and has some rules in it, but there is no
1540 .\"O .Pa cvsupd.passwd
1541 .\"O file, then successful
1542 .\"O .Em authenticate
1543 .\"O rules cause access to be denied.  Access is still granted to those
1544 .\"O who match successful
1545 .\"O .Em permit
1546 .\"O rules.  Falling off the end of the
1547 .\"O .Pa cvsupd.access
1548 .\"O file results in denial of access.
1549 .Pa cvsupd.access
1550 が存在してファイル中に規則が書かれているけれど、
1551 .Pa cvsupd.passwd
1552 ファイルが存在しない場合は、
1553 .Em 認証
1554 規則が成功するとアクセスが拒否されます。この場合でも、
1555 .Em 許可
1556 規則が成功したクライアントはアクセスできます。
1557 .Pa cvsupd.access
1558 ファイルの最後まで来た場合には、アクセスは拒否されます。
1559 .It
1560 .\"O If both the
1561 .\"O .Pa cvsupd.access
1562 .\"O and
1563 .\"O .Pa cvsupd.passwd
1564 .\"O files exist, then:
1565 .Pa cvsupd.access
1566
1567 .Pa cvsupd.passwd
1568 がどちらも存在する場合の動作は以下の通りです:
1569 .Bl -bullet -compact
1570 .It
1571 .\"O Successful
1572 .\"O .Em permit
1573 .\"O rules cause access to be granted without authentication.
1574 .Em 許可
1575 規則が成功すると認証無しでアクセスが許可されます。
1576 .It
1577 .\"O Successful
1578 .\"O .Em authenticate
1579 .\"O rules cause authentication to be performed.  Access is granted or
1580 .\"O denied based on the outcome of that.  Falling off the end of the
1581 .\"O .Pa cvsupd.access
1582 .\"O file is included in this case.
1583 .Em 認証
1584 規則が成功すると認証が実行されます。アクセスの可否は認証の結果によって
1585 決まります。
1586 .Pa cvsupd.access
1587 ファイルの最後に来るケースは、これに含まれます。
1588 .It
1589 .\"O Failing
1590 .\"O .Em deny
1591 .\"O rules cause access to be denied.
1592 .Em 拒否
1593 規則が失敗するとアクセスは拒否されます。
1594 .El
1595 .El
1596 .\"O .Sh RCS KEYWORD EXPANSION
1597 .Sh "RCS キーワードの展開"
1598 .\"O In checkout mode,
1599 .\"O .Nm CVSup
1600 .\"O expands RCS keywords as described in
1601 .\"O .Xr co 1 .
1602 チェックアウトモードでは、
1603 .Nm CVSup
1604
1605 .Xr co 1
1606 で説明されているように RCS キーワードを展開します。
1607 .\"O It expands all of the standard keywords, and also the non-standard
1608 .\"O .Ql $\&CVSHeader$
1609 .\"O keyword.
1610 .Nm CVSup
1611 は標準的キーワードは全て展開し、さらに非標準のキーワードである
1612 .Ql $\&CVSHeader$
1613 も展開します。
1614 .\"O This expands the same as
1615 .\"O .Ql $\&Header$ ,
1616 .\"O except that the RCS file's pathname is expressed relative to the
1617 .\"O .Cm prefix
1618 .\"O directory, rather than as an absolute pathname.
1619 この展開は
1620 .Ql $\&Header$
1621 と同様に行われますが、RCS ファイルのパス名が絶対パスではなく
1622 .Cm prefix
1623 ディレクトリからの相対パスで表記される点が異なります。
1624 .\"O The
1625 .\"O .Cm prefix
1626 .\"O is assumed to be the root of the CVS repository.
1627 ここで
1628 .Cm prefix
1629 は CVS レポジトリのルートディレクトリです。
1630 .Pp
1631 .\"O It is also possible to define aliases for the standard RCS keywords,
1632 .\"O and to selectively enable or disable the recognition of individual
1633 .\"O keywords.
1634 標準 RCS キーワードの別名を定義し、それぞれのキーワードの解釈を選択的に
1635 有効・無効にすることも可能です。
1636 .\"O These properties are controlled on a repository-wide basis by
1637 .\"O directives in a file named
1638 .\"O .Ar prefix Ns Pa /CVSROOT/options .
1639 この設定は、
1640 .Ar prefix Ns Pa /CVSROOT/options
1641 ファイルに書かれているキーワードによって、
1642 レポジトリ全体を単位として制御されます。
1643 .\"O Each directive occupies one line of the file.
1644 1 行には 1 つのキーワードが書かれます。
1645 .\"O Comments begin with
1646 .\"O .Ql #
1647 .\"O and extend to the end of line.
1648 .Ql #
1649 から行末まではコメントと見なされます。
1650 .\"O Blank lines are ignored.
1651 また空白行は無視されます。
1652 .\"O The syntax is ridiculous, for historical reasons.
1653 歴史的な経緯のために文法は変てこです。
1654 .Pp
1655 .\"O To define a keyword alias, use a line of the form:
1656 キーワードの別名を定義するには、次の形式の行を使います :
1657 .Sm off
1658 .Dl tag= Ar alias Op Li = Ar keyword
1659 .Sm on
1660 .\"O For example:
1661 例えば:
1662 .\"O .Dl tag=FreeBSD=CVSHeader
1663 .\"O defines a new RCS keyword
1664 .\"O .Ql $\&FreeBSD$ ,
1665 .\"O which expands the same as
1666 .\"O .Ql $\&CVSHeader$ .
1667 .Dl tag=FreeBSD=CVSHeader
1668 は新しい RCS キーワード
1669 .Ql $\&FreeBSD$
1670 を定義し、これは
1671 .Ql $\&CVSHeader$
1672 と同様に展開されます。
1673 .\"O If the second
1674 .\"O .Ql =
1675 .\"O and the
1676 .\"O .Ar keyword
1677 .\"O are omitted, the keyword defaults to
1678 .\"O .Ql Id .
1679 二番目の
1680 .Ql =
1681
1682 .Ar keyword
1683 がない場合、キーワードのデフォルト値は
1684 .Ql Id
1685 です。
1686 .Pp
1687 .\"O To disable all but certain selected keywords, use a line of the
1688 .\"O form:
1689 選んだ特定のキーワード以外を全て無効にするには、次の形式の行を使います:
1690 .Sm off
1691 .Dl tagexpand=i Ar keyword Op , Ar ...
1692 .Sm on
1693 .\"O For example:
1694 .\"O .Dl tagexpand=iFreeBSD,Id
1695 .\"O disables the expansion of all keywords except
1696 .\"O .Ql $\&FreeBSD$
1697 .\"O and
1698 .\"O .Ql $\&Id$ .
1699 例えば
1700 .Dl tagexpand=iFreeBSD,Id
1701 と書くと
1702 .Ql $\&FreeBSD$
1703
1704 .Ql $\&Id$
1705 以外の全てのキーワードの展開を行わなくなります。
1706 .\"O The leading
1707 .\"O .Ql i
1708 .\"O stands for
1709 .\"O .Dq include .
1710 最初の
1711 .Ql i
1712
1713 .Dq include
1714 の意味です。
1715 .Pp
1716 .\"O To enable all but certain selected keywords, use a line of the
1717 .\"O form:
1718 選択した特定のキーワード以外を全て有効にするためには、次の形式の行を使
1719 います:
1720 .Sm off
1721 .Dl tagexpand=e Ar keyword Op , Ar ...
1722 .Sm on
1723 .\"O For example:
1724 .\"O .Dl tagexpand=eFreeBSD,Id
1725 .\"O enables the expansion of all keywords except
1726 .\"O .Ql $\&FreeBSD$
1727 .\"O and
1728 .\"O .Ql $\&Id$ .
1729 例えば
1730 .Dl tagexpand=eFreeBSD,Id
1731 と書くと、
1732 .Ql $\&FreeBSD$
1733
1734 .Ql $\&Id$
1735 以外の全てのキーワードの展開を行うようになります。
1736 .\"O The leading
1737 .\"O .Ql e
1738 .\"O stands for
1739 .\"O .Dq exclude .
1740 先頭の
1741 .Ql e
1742
1743 .Dq exclude
1744 の意味です。
1745 .\"O .Sh SHUTDOWN
1746 .Sh シャットダウン
1747 .\"O If there exists a file
1748 .\"O .Ar base Ns Pa /cvsupd.HALT
1749 .\"O that is newer than the time when the server was started, then the server
1750 .\"O will reject all new incoming connection requests.
1751 サーバの起動よりも後に作られた
1752 .Ar base Ns Pa /cvsupd.HALT
1753 というファイルが存在すると、サーバは全ての新規接続要求を受け入れなくな
1754 ります。
1755 .\"O Clients which had already started will run to completion, but no new
1756 .\"O ones will be accepted.
1757 すでに接続されているクライアントは最後まで実行されますが、新しい接続は一
1758 切受け付けなくなります。
1759 .\"O This mechanism is awkward and weak, and will probably be changed in a
1760 .\"O future release.
1761 この仕組みは不便で非力なため、おそらく将来のリリースでは変更されるでしょ
1762 う。
1763 .\"O .Sh SECURITY
1764 .Sh セキュリティ
1765 .\"O .Nm
1766 .\"O does not create or write any files, except for its log file if one
1767 .\"O is specified on the command line.
1768 .Nm
1769 は、コマンドラインで指定するログファイルを除いて、新しいファイルの作成
1770 やファイルへの書き込みは行いません。
1771 .\"O There is thus little risk that
1772 .\"O .Nm
1773 .\"O can be subverted into damaging the system on which it is running.
1774 .Nm
1775 が動作していることによってシステムにダメージを与える可能性はほとんどあり
1776 ません。
1777 .\"O A more likely risk is that
1778 .\"O .Nm
1779 .\"O might be spoofed into sending out files that are not intended to be
1780 .\"O publicly distributed.
1781 それよりも可能性の高いセキュリティ上の危険として、
1782 .Nm
1783 が騙されて公開すべきでないファイルを送り出してしまうことがあります。
1784 .\"O .Nm
1785 .\"O takes pains to prevent this from happening.
1786 .Nm
1787 ではこのようなことがないように細心の注意を払っています。
1788 .\"O Nevertheless, for maximum protection
1789 .\"O .Nm
1790 .\"O should be run as a completely unprivileged user analogous to
1791 .\"O .Ql nobody ,
1792 .\"O and should serve only files that are readable by everyone.
1793 それでもやはり、最大の防御は
1794 .Nm
1795
1796 .Ql nobody
1797 のような全く権限のないユーザで実行し、誰でも読めるファイルしか提供でき
1798 ないようにすることです。
1799 .Pp
1800 .\"O .Nm CVSup
1801 .\"O has no provision for encrypting the data sent across the network.  If
1802 .\"O secrecy is desired then the connection can be tunneled through
1803 .\"O .Nm ssh .
1804 .Nm CVSup
1805 は、ネットワーク上を流れるデータの暗号化には対応していません。
1806 機密性が必要であれば、
1807 .Nm ssh
1808 を使って接続をトンネリングしてください。
1809 .\"O .Sh FILES
1810 .Sh ファイル
1811 .Bl -tag -width base/sup/collection/releasesxx -compact
1812 .It Pa /usr/local/etc/cvsup
1813 .\"O Default
1814 .\"O .Ar base
1815 .\"O directory.
1816 デフォルトの
1817 .Ar 起点
1818 ディレクトリ。
1819 .It Pa sup
1820 .\"O Default
1821 .\"O .Ar collDir
1822 .\"O subdirectory.
1823 デフォルトの
1824 .Ar collDir
1825 サブディレクトリ。
1826 .Sm off
1827 .It Xo Ar base / Ar collDir / Ar collection
1828 .Pa /releases
1829 .Xc
1830 .Sm on
1831 .\"O Releases file.
1832 リリースファイル。
1833 .Sm off
1834 .It Xo Ar base / Ar collDir / Ar collection
1835 .No / Ar list
1836 .Xc
1837 .Sm on
1838 .\"O List file.
1839 リストファイル。
1840 .It Ar base Ns Pa /cvsupd.HALT
1841 .\"O Shutdown file.
1842 シャットダウンファイル。
1843 .It Ar base Ns Pa /cvsupd.access
1844 .\"O Access control file.
1845 アクセス制御ファイル。
1846 .It Ar base Ns Pa /cvsupd.passwd
1847 .\"O Authentication password file.
1848 認証パスワードファイル。
1849 .Sm off
1850 .It Ar prefix Pa /CVSROOT/options
1851 .Sm on
1852 .\"O RCS keyword configuration file.
1853 RCS キーワード設定ファイル。
1854 .El
1855 .\"O .Sh SEE ALSO
1856 .Sh 関連項目
1857 .Xr co 1 ,
1858 .Xr cvpasswd 1 ,
1859 .Xr cvs 1 ,
1860 .\"O .Xr cvsup 1 .
1861 .Xr cvsup 1
1862 .Pp
1863 .Bd -literal
1864 http://www.polstra.com/projects/freeware/CVSup/
1865 .Ed
1866 .\"O .Sh AUTHORS
1867 .Sh 作者
1868 .\"O .An John Polstra Aq jdp@polstra.com .
1869 .An John Polstra Aq jdp@polstra.com
1870 .\"O .Sh BUGS
1871 .Sh バグ
1872 .\"O An RCS file is not recognized as such unless its name ends with
1873 .\"O .Ql \&,v .
1874 ファイル名の末尾が
1875 .Ql \&,v
1876 になっていない RCS ファイルは認識されません。
1877 .Pp
1878 .\"O Any directory named
1879 .\"O .Ql Attic
1880 .\"O is assumed to be a CVS Attic, and is treated specially.
1881 .Ql Attic
1882 という名前のディレクトリは全て CVS Attic と見なされ、特別な扱いを受けます。