diff --git a/ja_JP.eucJP/man/man1/crunchgen.1 b/ja_JP.eucJP/man/man1/crunchgen.1 index 726e58452a..79f00d84de 100644 --- a/ja_JP.eucJP/man/man1/crunchgen.1 +++ b/ja_JP.eucJP/man/man1/crunchgen.1 @@ -1,466 +1,471 @@ .\" .\" Copyright (c) 1994 University of Maryland .\" All Rights Reserved. .\" .\" Permission to use, copy, modify, distribute, and sell this software and its .\" documentation for any purpose is hereby granted without fee, provided that .\" the above copyright notice appear in all copies and that both that .\" copyright notice and this permission notice appear in supporting .\" documentation, and that the name of U.M. not be used in advertising or .\" publicity pertaining to distribution of the software without specific, .\" written prior permission. U.M. makes no representations about the .\" suitability of this software for any purpose. It is provided "as is" .\" without express or implied warranty. .\" .\" U.M. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL U.M. .\" BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR .\" IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Author: James da Silva, Systems Design and Analysis Group .\" Computer Science Department .\" University of Maryland at College Park -.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11.2.8 2001/08/16 15:55:47 ru Exp % +.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11.2.9 2002/04/14 20:55:21 luigi Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/crunchgen.1,v 1.11 2001/07/29 05:14:50 horikawa Exp $ +.\" $FreeBSD$ .Dd November 16, 2000 .Dt CRUNCHGEN 1 .Os .Sh 名称 .Nm crunchgen .Nd クランチバイナリ構築環境を作成する .Sh 書式 .Bk -words .Nm .Op Fl foql .Op Fl h Ar makefile-header-name .Op Fl m Ar makefile-name .Op Fl p Ar obj-prefix .Op Fl c Ar c-file-name .Op Fl e Ar exec-file-name .Op Ar conf-file .Ek .Sh 解説 クランチバイナリ (crunched binary) は、 たくさんの別々のプログラムをひとつにまとめて 単一の実行形式にしたプログラムです。 クランチバイナリの .Fn main 関数は、 .Va argv[0] の値をみて、 どのコンポーネントプログラムが実行されるべきかを決定します。 複数プログラムをクランチしてひとつにまとめる主たる理由は、 インストールフロッピあるいはシステム回復フロッピ上に、 できるだけ多くのプログラムを収納するためです。 .Pp .Nm は .Ar conf-file に記述されたクランチバイナリのための設定項目を読み込み、 .Pa Makefile とそれに付随するトップレベルの C ソースファイルを生成します。 これらはビルド時に各コンポーネントプログラムからクランチした実行形式を 作成します。 オプションにより、 .Nm は、各コンポーネントプログラムに対して、 そのソースディレクトリの .Pa Makefile から プログラムを構成するオブジェクトファイル (.o) を決定することも試みます。 この情報は実行のたびにキャッシュされます。 .Nm は関連するもうひとつのプログラム .Xr crunchide 1 を用い、全ての不要なシンボルを隠すことで コンポーネントプログラム間のリンク時のシンボル競合を防ぎます。 .Pp .Nm は特殊な要件をパッケージの .Pa Makefile に課しており、このことが原因で .Pa Makefile が非 .Bx ソース用に使えなくなっています。 特に、 .Pa Makefile はターゲット .Ic depend を含むことが必要であり、全オブジェクトファイルを変数 .Va OBJS で定義することが必要です。 場合によっては、偽の .Pa Makefile を使えるでしょう。 .Nm は、ソースディレクトリ .Pa foo 中の .Pa Makefile を見る前に、現在のディレクトリ中の .Pa Makefile.foo を見ます。 .Pp .Nm 実行後、 .Dq Li make -f .mk を実行することで クランチバイナリを作成できます。 コンポーネントプログラムのオブジェクトファイルは既に作成されている 必要があります。 出力される makefile に含まれる .Ic objs ターゲットは、 各コンポーネントプログラムのソースディレクトリで .Xr make 1 を実行し、ユーザのためにオブジェクトファイルを作成してくれます。 しかしこのターゲットは自動的には実行されません。 リリースエンジニアリング環境では、オブジェクトを他のディレクトリで 修正するのは一般に望ましくないからです。 .Pp オプションは以下の通りです: .Bl -tag -width indent .It Fl c Ar c-file-name 出力する C のファイル名を .Ar c-file-name とします。デフォルトの名前は .Pa .c です。 .It Fl e Ar exec-file-name クランチバイナリの実行形式ファイルの名前を .Ar exec-file-name とします。デフォルトの名前は .Pa です。 .It Fl f キャッシュを消去し、キャッシュされていたパラメータを強制的に再計算します。 .It Fl l 名前の表示。このバイナリが対応する名前を一覧表示します。 .It Fl h Ar makefile-header-name .Nm が生成する .Pa Makefile の先頭に含めるファイルの名前を設定します。 make の変数を定義するのに便利です。 これには、 .Xr make 1 の動作に影響を与え、環境変数を介してでは面倒である、 .Va RELEASE_CRUNCH が含まれます。 .It Fl m Ar makefile-name 出力する .Pa Makefile の名前を .Ar makefile-name とします。デフォルトの名前は .Pa .mk です。 .It Fl o 各プログラムの make ターゲットに対し、 .Dq Li make obj ルールを追加します。 .It Fl p Ar obj-prefix .Ic objdir を計算するときに、 .Ic srcdir の前に付けるパス名を設定します。 このオプションが存在しない場合、使用するプレフィックスは .Ev MAKEOBJDIRPREFIX 環境変数の内容か、または .Pa /usr/obj です。 .It Fl q 静粛処理モード。状況報告メッセージを抑制します。 .El .Sh CRUNCHGEN コンフィギュレーションファイルコマンド .Nm は、クランチバイナリのコンポーネントについて記述した設定項目を .Ar conf-file から読み取ります。 最も単純な場合は、各コンポーネントプログラム名を、 そのソースファイルが置かれたトップレベルのディレクトリ名とともに、 単に列挙するだけです。 次に .Nm は (ソースの makefile によって) オブジェクトファイルリストと その位置を求め、それをキャッシュします。 もっと特殊な場合には、 .Nm が必要とするあらゆるパラメータを、ユーザが手動で指定することができます。 .Pp .Ar conf-file のコマンドは以下の通りです: .Bl -tag -width indent .It Ic srcdirs Ar dirname ... コンポーネントプログラムのソースディレクトリがあるソースツリーのリスト。 これらのディレクトリは .Bx の .Dq Pa // 方式を用いて検索されます。 .Ic srcdirs 行は複数あってもよく、ディレクトリは記述された順に検索されます。 .It Ic progs Ar progname ... クランチバイナリを構成するプログラムのリスト。 .Ic progs 行は複数あっても構いません。 .It Ic libs Ar libspec ... クランチバイナリのリンク時に含めるライブラリ指定のリスト。 .Ic libs 行は複数あっても構いません。 .It Ic buildopts Ar buildopts ... 各 make ターゲットに追加追加される、ビルドオプションのリスト。 .It Nm ln Ar progname linkname .Va argv[0] に .Ar linkname が現われたときはいつも .Ar progname を起動するよう、クランチバイナリに要請します。 これにより、起動時の名前によって振る舞いを変えるようなプログラムも 正しく動作するようにできます。 .El .Pp 特別な状況、例えば ソースファイルがないとか、 従来の .Pa Makefile によらないビルドを行うといった場合に対応するため、以下に述べる .Ic special コマンドを用いてコンポーネントプログラムの .Nm パラメータを指定できます。 .Bl -tag -width indent .It Ic special Ar progname Ic srcdir Ar pathname プログラム用 .Ar progname のオブジェクトファイル一覧を保持する make 変数の名前を設定します。 これは通常 .Nm OBJS ですが、Makefile によっては、他の約束が好ましい場合や、 .Nm SSHD_OBJS のようにプログラム名が前に付くものがあります。 .It Nm special Ar progname Nm srcdir Ar pathname プログラム .Ar progname のソースディレクトリを指定します。 通常は指定されたディレクトリ .Ic srcdirs 内の .Ar progname ディレクトリを検索して決定されます。 .It Ic special Ar progname Ic objdir Ar pathname プログラム .Ar progname の .Pa obj ディレクトリを指定します。 通常、 .Pa obj ディレクトリは、 ソースディレクトリ名の前に次のいずれかのコンポーネントを付けたものとして 計算され、コンポーネントには次の順番で優先度があります: コマンドラインにおける .Fl p の引数、環境変数 .Ev MAKEOBJDIRPREFIX の値、または .Pa /usr/obj です。 もしディレクトリが見つからなければ、ディレクトリ .Ic srcdir 自身が .Ic objdir となります。 .It Ic special Ar progname Ic buildopts Ar buildopts ビルドオプション集合を定義します。 .Ar progname 処理時には、 .Nm buildopts で指定されたものに加え、これらが追加されて .Xr make 1 のターゲットが作成されます。 .It Ic special Ar progname Ic objs Ar object-file-name ... プログラム .Ar progname のオブジェクトファイルのリストを指定します。 通常は、 .Dq Ic srcdir Ns / Ns Pa Makefile をインクルードし .Va $(OBJS) の値を出力するような一時 makefile を構築する ことで決定されます。 .It Ic special Ar progname Ic objpaths Ar full-pathname-to-object-file ... プログラム .Ar progname のオブジェクトファイルのパス名を指定します。 通常は .Ic objs リスト中の各ファイルのパス名の先頭に .Ic objdir を付加することで決定されます。 .It Ic special Ar progname Ic objvar Ar variable_name プログラム .Ar progname 用のオブジェクトファイルリストを保持する .Xr make 1 変数名を設定します。 これは通常 .Va OBJS ですが、 .Pa Makefile によっては別の規約を使用したいかもしれませんし、 変数名の前にプログラム名を付けたいかもしれません。例えば .Va SSHD_OBJS など。 +.It Ic special Ar progname Ic lib Ar library-name ... +.Ar progname.lo +を生成するためにオブジェクトファイルとリンクするライブラリを指定します。 +標準ライブラリに含まれるルーチンを再定義するライブラリを使用するときに +有用です。 .It Ic special Ar progname Ic keep Ar symbol-name ... プログラム .Ar progname の保持リストに、指定するシンボルのリストを追加します。 各シンボルの前にはアンダスコア .Pq Ql _ が付加され、 .Xr crunchide 1 フェーズでは .Fl k オプションの引数となります このオプションはシンボルが衝突するときの最後の拠所ですが、 シンボル解決の唯一の方法である場合もあります。 .It Ic special Ar progname Ic ident Ar identifier .Ar progname に対する .Pa Makefile Ns / Ns Tn C 識別子を設定します。 これは通常、 .Ar progname を元に、 .Ql - を .Ql _ にマップし、他のすべての非識別子文字を無視することにより、生成されます。 この結果、 .Qq Li foo.bar と .Qq Li foobar は、同一の識別子にマップされてしまいます。 .El .Pp 実際に .Nm が必要とするのは .Ic objpaths だけですが、 これは .Ic objdir と .Ic objs から求められ、これらも .Ic srcdir から求められます。 ですから、もし可能なら、初期のパラメータを指定し、あとは .Nm に求めさせたほうが便利な場合もあります。 .Pp .Nm が生成する makefile はオプションのターゲット .Ic objs を含みます。 これは、各コンポーネントプログラムのソースディレクトリ内で .Xr make 1 を実行してオブジェクトファイルを作成するターゲットです。 これがうまく動作するためには .Ic srcdir および .Ic objs パラメータが正しいものでなくてはなりません。 もしこれらの値があるプログラムに対して不正なものであると、 .Ic objs ターゲットではそのプログラムはスキップされてしまいます。 .Sh 実行例 .Nm の入力コンフィギュレーションファイルの例として .Dq Pa kcopy.conf の内容を示します。 .Pp .Bd -literal -offset indent srcdirs /usr/src/bin /usr/src/sbin progs test cp echo sh fsck halt init mount umount myinstall progs anotherprog ln test [ # test は [ として起動することもできる ln sh -sh # init は argv[0] を "-sh" としてシェルを起動する special myprog objpaths /homes/leroy/src/myinstall.o # ソースなし special anotherprog -DNO_FOO WITHOUT_BAR=YES libs -lutil -lcrypt .Ed .Pp このコンフィギュレーションファイルでは、 いくつかの基本的なシステムユーティリティと 自家製のインストールプログラム .Dq Pq myinstall から成る 小さなクランチバイナリを記述しています。 ソースディレクトリは全く指定されていませんが、 オブジェクトファイルは .Nm special 行で直接指定されています。 .Pp さらに、 .Dq Pa anotherprog 構築時には、引数 .Pp .Dl -DNO_FOO WITHOUT_BAR=YES .Pp がすべてのビルドターゲットに対して追加されます。 .Pp クランチバイナリ .Dq Pa kcopy は以下のようにして作成できます: .Pp .Bd -literal -offset indent % crunchgen -m Makefile kcopy.conf # Makefile と kcopy.c 作成 % make objs # コンポーネントプログラムの *.o 作成 % make # クランチバイナリ kcopy の作成 % kcopy sh # シェル sh を起動できるかどうか試すと.. $ # うまくいった! .Ed .Pp ここまでくれば、バイナリ .Dq Pa kcopy をインストールフロッピにコピーし、 各コンポーネントプログラムの名前でハードリンクを設けることができます。 .Sh 関連項目 .Xr crunchide 1 .Xr make 1 .Sh 警告 .Nm はクランチバイナリ中の各コンポーネントプログラム間のリンク競合を 除去するのに気を配っていますが、依然としてリンクされたライブラリ間で 競合が発生する可能性が残っています。 ライブラリ順の入れ換えが必要な場合もありますし、 二つのライブラリ間にどうしても解消できない競合が発生し、 結局ひとつにまとめられない場合も稀にあります。 .Pp .Bx のバージョンによっては、デフォルトのビルド環境では 単一ソースファイルのプログラムに対して 中間オブジェクトファイルを作成しないことがあります。 その場合は .Dq Li make objs ターゲットを用いてオブジェクトファイルを 作成するか、他の調整を施す必要があります。 .Sh 作者 .Nm は .An James da Silva Aq jds@cs.umd.edu によって作成されました。 .Pp Copyright (c) 1994 University of Maryland. All Rights Reserved. diff --git a/ja_JP.eucJP/man/man1/date.1 b/ja_JP.eucJP/man/man1/date.1 index f510bb1141..3947a3618b 100644 --- a/ja_JP.eucJP/man/man1/date.1 +++ b/ja_JP.eucJP/man/man1/date.1 @@ -1,381 +1,386 @@ .\" Copyright (c) 1980, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)date.1 8.2 (Berkeley) 11/17/93 -.\" %FreeBSD: src/bin/date/date.1,v 1.34.2.11 2001/08/16 10:01:04 ru Exp % +.\" %FreeBSD: src/bin/date/date.1,v 1.34.2.12 2002/04/17 14:52:05 trhodes Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/date.1,v 1.27 2001/08/17 06:18:09 horikawa Exp $ +.\" $FreeBSD$ .Dd November 17, 1993 .Dt DATE 1 .Os .Sh 名称 .Nm date .Nd 日付と時刻の表示、設定 .Sh 書式 .Nm date .Op Fl jnu .Op Fl d Ar dst .Op Fl r Ar seconds .Op Fl t Ar minutes_west .Oo .Fl v .Sm off .Op Cm + | - .Ar val Op Ar ymwdHMS .Sm on .Oc .Ar ... .Oo .Fl f .Ar fmt date | .Sm off .Op Oo Oo Oo Oo Ar cc Oc Ar yy Oc Ar mm Oc Ar dd Oc Ar HH .Ar MM Op Ar .ss .Sm on .Oc .Op Cm + Ns Ar format .Sh 解説 引数なしで実行すると、 .Nm ユーティリティは現在の日付と時刻を表示します。 引数を与えると、日時の設定、 あるいはユーザが定義したフォーマットに従った日付や時刻の表示を行います。 .Pp +.Nm +ユーティリティは、カーネルクロックから読み取った日付と時刻を表示します。 +日付と時刻の設定に使用された場合、 +カーネルクロックとハードウェアクロックの両方が更新されます。 +.Pp なお、日付と時刻を設定できるのはスーパユーザだけです。 システムのセキュリティレベル ( .Xr securelevel 8 を参照) が 1 より大きい場合、1 秒を越える時刻修正は許されません。 .Pp オプション: .Bl -tag -width Ds .It Fl d Ar dst 夏時間用のカーネル値を設定します。もし .Ar dst が 0 でなければ、そのあとの .Xr gettimeofday 2 呼び出しでは .Ql tz_dsttime に 0 以外の値が返ります。 .It Fl f デフォルトの .Ar [[[[yy]mm]dd]HH]MM[.ss] フォーマットの代りに .Ar fmt を、時刻をパーズするフォーマットとして使用します。 .Xr strptime 3 を使用してパーズします。 .It Fl j 日付の設定を行いません。 本フラグを使用し、 .Fl f フラグを .Cm + オプションとともに用いることで、日付の書式の変換ができます。 .It Fl n .Xr timed が動作している場合、デフォルトでは .Nm コマンドによりグループ内のすべてのマシンの時刻が変更されます。しかし、 .Fl n オプションを指定した場合には、他のマシンの時刻は変更せず、 このマシンのみで時刻を設定します。 .It Fl r Ar seconds 基準時点 (1970 年 1 月 1 日 00:00:00; .Xr time 3 参照) から .Ar seconds 秒経過した日時を表示します。 10 進数、8 進数、16 進数のいずれの指定も可能です。 .It Fl t Ar minutes_west カーネルに .Tn GMT (グリニッジ標準時) からの時差を設定します。このあとに呼ばれる .Xr gettimeofday 2 では、ここで指定された値が .Ql tz_minuteswest に入ります。 .It Fl u .Tn UTC (協定世界時) の日付を表示、設定します。 .\" 訳注(Mar.1996):UTC (Universal Time Coordinate) .It Fl v 秒、分、時、日、曜日、月、年のいずれかを .Ar val にもとづき修正します (すなわち、現在の日付を取得し、修正した結果を表示します。 日付を設定するのではありません)。 .Ar val の前にプラスもしくはマイナスが付いている場合、 時刻はそれに従い前後に修正されます。 そうでない場合は、指定した部分が設定されます。 必要なら任意個このフラグを指定して時刻を修正することが出来ます。 フラグは指定した順序に処理されます。 .Pp (値を修正するのではなく) 値を指定する場合、 秒の範囲は 0-59、 分の範囲は 0-59、時の範囲は 1-12、日の範囲は 1-31、曜日の範囲は 0-6 (Sun-Sat)、月の範囲は 1-12 (Jan-Dec)、 年の範囲は 80-38 もしくは 1980-2038 です。 .Pp .Ar val が数値の場合、 .Ar y , .Ar m , .Ar w , .Ar d , .Ar H , .Ar M , .Ar S のいずれかを使用して、時刻のどの部分を修正するのかを指定する必要があります。 .Pp 曜日もしくは月は数値の代りに名前で指定可能です。 名前と共にプラス (もしくはマイナス) 記号を使用した場合、 日付は適合する次の (前の) 曜日もしくは月に進みます (戻ります)。 曜日もしくは月が現在のものと変らない場合、日は修正しません。 .Pp 特定の値に時刻を修正する場合や、単位が 1 時間よりも大きい場合には、 夏時間の概念は無視されます。 1 時間以下の単位での修正は、夏時間の概念を持ちます。 現在の時刻を 3 月 26 日 0:30 であり、 夏時間の修正により 01:00 から 02:00 へ進むと仮定した場合、 .Fl v No +1H は時刻を 3 月 26 日 2:30 へ修正します。 同様に、現在の時刻が 10 月 29 日 0:30 であり、 夏時間の修正により 02:00 から 01:00 へ戻ると仮定した場合、 .Fl v No +3H とすると時刻は 10 月 29 日 2:30 になります。 .Pp 存在しない特定の値 (例えば、ヨーロッパ/ロンドンのタイムゾーンで 2000 年 3 月 26 日 1:30 BST) へ時刻を修正する場合、 正当な時刻になるまで、時刻は黙って 1 時間の単位で進められます。 2 回存在する特定の値 (例えば 2000 年 10 月 29 日 1:30) へ時刻を修正する場合、最終的なタイムゾーンは、 2 回の時刻のうち早いものに適合するものとなります。 .Pp 詳細に関しては、下記の例を参照して下さい。 .El .Pp プラス .Pq Sq + で始まるオプションは、日付と時刻の表示方法を指定する フォーマット文字列です。フォーマット文字列には、 .Xr strftime 3 で記述されているような変換文字列と、任意のテキストを含むことができます。 フォーマット文字列によって指定された文字の後には、つねに改行文字 .Pq Ql \en が出力されます。 .Nm のデフォルトの表示形式は、 .Bd -literal -offset indent ``+%+'' .Ed .Pp としたものと同じです。 .Pp もし、引数が ``+'' 記号で始まる文字列でなければ、それはシステムに 日時を設定するための値と解釈されます。日時を設定するための正式な 表現は以下のとおりです: .Pp .Bl -tag -width Ds -compact -offset indent .It Ar cc 世紀 (19 または 20 のいずれか) であり、西暦の省略表現の前に付きます。 .It Ar yy 西暦の省略表現です。西暦の 10 の位と 1 の位です (1989 年なら 89、06 なら 2006)。 .It Ar mm 月の数字表現です。1 から 12 までの数字です。 .It Ar dd 日です。1 から 31 までの数字です。 .It Ar HH 時です。0 から 23 までの数字です。 .It Ar MM 分です。0 から 59 までの数字です。 .It Ar ss 秒です。0 から 61 までの数字です。 (59 秒 + 2 秒までのうるう秒) .El .Pp 分の指定以外はすべて省略可能です。 .Pp 夏時間と標準時の切り替えや、閏秒や閏年の取り扱いは自動的に行われます。 .Sh 使用例 以下のコマンド: .Bd -literal -offset indent date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S" .Ed .Pp は、下のような表示を行ないます。 .Bd -literal -offset indent DATE: 1987-11-21 TIME: 13:36:16 .Ed .Pp ヨーロッパ/ロンドンのタイムゾーンでは、 以下のコマンド: .Pp .Bd -literal -offset indent date -v1m -v+1y .Ed .Pp は以下を表示します: .Bd -literal -offset indent Sun Jan 4 04:15:24 GMT 1998 .Ed .Pp (現在 Mon Aug 4 04:15:24 BST 1997 の場合)。 .Pp 以下のコマンド: .Bd -literal -offset indent date -v1d -v3m -v0y -v-1d .Ed .Pp は 2000 年 2 月の最後の日を表示します: .Bd -literal -offset indent Tue Feb 29 03:18:00 GMT 2000 .Ed .Pp 以下のコマンド: .Bd -literal -offset indent date -v1d -v+1m -v-1d -v-fri .Ed .Pp は今月最後の金曜日を表示します: .Bd -literal -offset indent Fri Aug 29 04:31:11 BST 1997 .Ed .Pp (現在 Mon Aug 4 04:31:11 BST 1997 の場合)。 .Pp 以下のコマンド: .Bd -literal -offset indent date 8506131627 .Ed .Pp は、 .\" '\ ' 無しでは引数の数が限界を越えるため .Dq Li "1985\ 年\ 6\ 月\ 13\ 日午後\ 4\ 時\ 27\ 分" に日時を設定します。 .Pp 以下のコマンド: .Pp .Bd -literal -offset indent date 1432 .Ed .Pp は、日を修正することなく、時だけを .Li "午後 2 時 32 分" に設定します。 .Sh 環境変数 .Nm の実行は以下の環境変数の影響を受けます. .Bl -tag -width Ds .It Ev TZ 日時を表示する際に用いられるタイムゾーンを設定します。 通常のフォーマットは .Pa /usr/share/zoneinfo からの相対パス名です。例えば、コマンド .Dq TZ=America/Los_Angeles date はカリフォルニアの現在の時刻を表示します。 詳しいことは、 .Xr environ 7 を参照してください。 .El .Sh 関連ファイル .Bl -tag -width /var/log/messages -compact .It Pa /var/log/wtmp 日付のリセットおよび時刻変更の記録がこのファイルに残されます。 .It Pa /var/log/messages 日付を変更したユーザの記録がこのファイルに残されます。 .El .Sh 関連項目 .Xr gettimeofday 2 , .Xr strftime 3 , .Xr strptime 3 , .Xr utmp 5 , .Xr timed 8 .Rs .%T "TSP: The Time Synchronization Protocol for UNIX 4.3BSD" .%A R. Gusella .%A S. Zatti .Re .Sh 診断 .Nm ユーティリティは、 成功した場合は 0 を、日時を設定できなかった場合は 1 を、 ローカルマシンの設定はできたが、グループのマシン全体の設定に失敗した 場合は 2 を返します。 .Pp timed が多数のマシンの時計をあわせる場合には、新しい時刻のセットに 数秒かかることがあります。このとき .Nm は、 .Ql Network time being set と表示します。 .Nm と .Xr timed 8 との間で通信に失敗した場合は、 .Ql Communication error with timed が表示されます。 .Sh バグ システムは .Tn VMS と高い互換性を持つフォーマットで日時を保持しようとしています。しかし、 .Tn VMS は .Tn GMT ではなくローカルな時刻を使っており、夏時間を理解しません。そのため、 .Tn UNIX と .Tn VMS を同時に使う場合は、 .Tn VMS を .Tn GMT で使うべきでしょう。 .Sh 規格 .Nm ユーティリティは .St -p1003.2 互換であると想定しています。 .Sh 歴史 .Nm date コマンドは .At v1 から導入されました。 diff --git a/ja_JP.eucJP/man/man1/df.1 b/ja_JP.eucJP/man/man1/df.1 index 23a8f2878d..c6203c7093 100644 --- a/ja_JP.eucJP/man/man1/df.1 +++ b/ja_JP.eucJP/man/man1/df.1 @@ -1,185 +1,185 @@ .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)df.1 8.3 (Berkeley) 5/8/95 -.\" %FreeBSD: src/bin/df/df.1,v 1.18.2.6 2001/08/16 10:01:04 ru Exp % +.\" %FreeBSD: src/bin/df/df.1,v 1.18.2.7 2002/04/22 22:17:36 keramida Exp % .\" .\" $FreeBSD$ .Dd May 8, 1995 .Dt DF 1 .Os .Sh 名称 .Nm df .Nd ディスクの空き領域等の表示 .Sh 書式 .Nm df .Oo .Fl b | h | H | k | .Fl m | P .Oc .Op Fl ailn .Op Fl t Ar type .Op Ar file | filesystem ... .Sh 解説 .Nm -は、 +ユーティリティは、 .Ar file_system で指定したファイルシステム、 もしくは .Ar file で指定したファイルが実際に格納されているファイルシステムの空きディスク容量の 表示を行います。 ディスク容量は、512 バイトを 1 ブロックとしたブロック数で表示 します。 .Nm の引数として、 .Ar file_system も .Ar file も指定されなかった場合は、マウントされているすべてのファイ ルシステムについての情報を表示します。 ただし、 .Fl t オプションによって、表示するファイルタイプの指示が可能です。 .Pp オプションとしては以下のものがあります: .Bl -tag -width Ds .It Fl a MNT_IGNORE フラグ付きでマウントされたものを含め、 全マウントポイントを表示します。 .It Fl b デフォルト値でなく 512 バイトブロックを使用します。 これは、環境の .Ev BLOCKSIZE 指定に優先することに注意してください。 .It Fl g デフォルト値でなく 1073741824 バイト (1 G バイト) ブロックを使用します。 これは、環境の .Ev BLOCKSIZE 指定に優先することに注意してください。 .It Fl H 「人間が読める」出力です。 単位サフィックスに、バイト、キロバイト、メガバイト、 ギガバイト、テラバイト、ペタバイトを使用して数字を 3 桁以下に減らします。 大きさの基数は 10 です。 .It Fl h 「人間が読める」出力です。 単位サフィックスに、バイト、キロバイト、メガバイト、 ギガバイト、テラバイト、ペタバイトを使用して数字を 3 桁以下に減らします。 大きさの基数は 2 です。 .It Fl i フリーな inode の情報も表示します。 .It Fl k デフォルトの 512 バイトではなく、 1024 バイト (1K バイト) を 1 ブロックとしてディスク容量を表示します。 このオプションは、環境変数 .Ev BLOCKSIZE の指示を無効にします。 .It Fl l ローカルにマウントされたファイルシステムの情報のみを表示します。 .It Fl m デフォルトの代りに 1048576 バイト (1 M バイト) ブロックを使用します。 これは、環境の .Ev BLOCKSIZE 指定に優先することに注意してください。 .It Fl n .Fl n オプションが指定されると、 .Nm は、ファイルシステムから以前に得た情報を返します。 情報の問い合わせに長い時間を要するおそれのあるファイルシステムに対して 用いるオプションです。 このオプションを指定すると、 .Nm はファイルシステムに新しい情報を問い合わせず、 以前に取得しておいた最新ではない可能性のある情報を表示します。 .It Fl P デフォルトの代りに POSIX 準拠の 512 バイトブロックの出力を行います。 これは、環境の .Ev BLOCKSIZE 指定に優先することに注意してください。 .It Fl t 指示されたタイプのファイルシステムに関する情報のみ を表示します。 複数のタイプをコンマで区切ってリスト指定可能です。 リスト中のファイルシステムタイプの前に .Dq no を付けて、そのファイルシステムタイプに対しては動作 .Em しない ように指定可能です。 例えば、 .Nm コマンド: .Bd -literal -offset indent df -t nonfs,mfs .Ed .Pp は .Tn NFS および .Tn MFS 以外の全ファイルシステムを表示します。 システム上で利用可能なファイルシステムタイプは .Xr lsvfs 1 コマンドを使用して調べられます。 .El .Sh 環境変数 .Bl -tag -width BLOCKSIZE .It Ev BLOCKSIZE 環境変数 .Ev BLOCKSIZE が設定されていれば、指定された値をブロックサイズとしてブロック数を表示します。 .El .Sh バグ .Ar file_system または .Ar file が指示されてた場合は、 .Fl n オプションと .Fl t オプションは 無効になります。 .Sh 関連項目 .Xr lsvfs 1 , .Xr quota 1 , .Xr fstatfs 2 , .Xr getfsstat 2 , .Xr statfs 2 , .Xr getmntinfo 3 , .Xr fstab 5 , .Xr mount 8 , .Xr quot 8 .Sh 歴史 .Nm ユーティリティは .At v1 から登場しています。 diff --git a/ja_JP.eucJP/man/man1/domainname.1 b/ja_JP.eucJP/man/man1/domainname.1 index 9b160f8260..ef313ba8eb 100644 --- a/ja_JP.eucJP/man/man1/domainname.1 +++ b/ja_JP.eucJP/man/man1/domainname.1 @@ -1,67 +1,67 @@ .\" Copyright (c) 1983, 1988, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)hostname.1 8.1 (Berkeley) 5/31/93 -.\" %FreeBSD: src/bin/domainname/domainname.1,v 1.8.2.5 2001/12/14 14:22:09 ru Exp % +.\" %FreeBSD: src/bin/domainname/domainname.1,v 1.8.2.6 2002/04/22 22:18:50 keramida Exp % .\" .\" $FreeBSD$ .Dd September 18, 1994 .Dt DOMAINNAME 1 .Os .Sh 名称 .Nm domainname .Nd 現在の YP/NIS ドメイン名の設定、表示 .Sh 書式 .Nm domainname .Op Ar ypdomain .Sh 解説 -.Nm domainname -は現在の YP/NIS ドメイン名の表示をします。 +.Nm +ユーティリティは、現在の YP/NIS ドメイン名の表示をします。 スーパユーザは、引数にドメイン名を指定することでドメイン名の設定を することもできます。 通常このコマンドは、起動時のネットワークの初期化スクリプト .Pa /etc/rc.network で実行されます。 .Sh 注意事項 YP/NIS (昔は ``Yellow Pages'' でしたが、法律上の問題で改名しました) のドメイン名は、 必ずしもドメインネームシステム (DNS) のドメイン名とは関係有りません。 しかし、しばしば管理上の便利さから同じに設定される 場合があるようです。 .Sh 関連項目 .Xr getdomainname 3 .Sh 歴史 .Nm domainname コマンドは .Tn SunOS の同様のコマンドをベースに、 .Fx 1.1 で登場しました。 diff --git a/ja_JP.eucJP/man/man1/doscmd.1 b/ja_JP.eucJP/man/man1/doscmd.1 index 2c710de2d9..e61ee0cdf1 100644 --- a/ja_JP.eucJP/man/man1/doscmd.1 +++ b/ja_JP.eucJP/man/man1/doscmd.1 @@ -1,756 +1,761 @@ .\" .\" Copyright (c) 1992, 1993, 1996 .\" Berkeley Software Design, Inc. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by Berkeley Software .\" Design, Inc. .\" .\" THIS SOFTWARE IS PROVIDED BY Berkeley Software Design, Inc. ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL Berkeley Software Design, Inc. BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" BSDI doscmd.1,v 2.3 1996/04/08 19:32:29 bostic Exp -.\" %FreeBSD: src/usr.bin/doscmd/doscmd.1,v 1.12.2.9 2001/08/16 13:16:46 ru Exp % +.\" %FreeBSD: src/usr.bin/doscmd/doscmd.1,v 1.12.2.10 2002/04/25 11:04:51 tg Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/doscmd.1,v 1.13 2001/08/05 02:45:48 horikawa Exp $ +.\" $FreeBSD$ .\" WORD: raw file ロウファイル (mknod.8 によると character special file) .\" WORD: cooked device 加工されたデバイス (mknod.8 によると block special) .Dd January 30, 1995 .Dt DOSCMD 1 .Os .Sh 名称 .Nm doscmd .Nd リアルモード DOS プログラムのサブセットを実行する .Sh 書式 .Nm doscmd -.Fl 23AbDEfHIMOPRrtVvXxYz +.Fl 23AbDEfGHIMOPRrtVvXxYz .Fl c Ar file .Fl d Ar file .Fl i Ar port Ns Xo .Op : Ns Ar cnt .Xc .Fl o Ar port Ns Xo .Op : Ns Ar cnt .Xc .Fl S Ar int .Fl U Ar int .Op Ar cmd Op Ar args ... .Sh 解説 .Nm は、DOS のサブセットをエミュレートして単一コマンド .Ar cmd .Ar args を実行することができますし、 PC をエミュレートして DOS をブートすることもできます。 DOS をブートする場合には、より多様な DOS アプリケーションを 実行することができます。 MS-DOS 6.2 以降は .Nm ではうまく扱えないようです。 DOS をブートするには、 .Fl b フラグを指定するか、 .Ar cmd 引数を省略してください。 .Fl b を指定すると、 .Ar cmd と .Ar args は無視されます。 .Pp .Nm は DOS のサブセットを提供するだけですが、 多くのプログラムを実行するには十分です。 コンパイラ、アセンブラ、リンカローダといったプログラムも実行できますが、 これらに限定するものではありません。 .Pp 次に示す多様なフラグを .Nm に指定可能です: .Bl -tag -width indent .It Fl 2 DOS プログラムからの .Nm エミュレータへのすべてのトラップのデバッグトレースを有効にします。 カーネルによって扱われるためにトレースされないトラップがあることに 注意してください。 .It Fl 3 割り込みベクタの変更や論理ドライブへのパスの初期化といった、 いくつかの下位レベル機能のデバッグを有効にします。 .\" .\" .\" .It Fl A エミュレータを通過するすべての割り込みのトレースを有効にします。 .Fl S オプションを、255 個すべての割り込みの値とともに指定する場合と同じです。 .\" .\" .\" .It Fl b DOS をエミュレートする代りに DOS をブートします。 .\" .\" .\" .It Fl c Ar file 画面へのすべての出力を捕まえて、 .Ar file へ出力します。 画面の直接の書き込みは捕まえられないことに注意してください。 .\" .\" .\" .It Fl C MS-DOS の呼び出しエミュレーションと戻り値をリストします。 .\" .\" .\" .It Fl D ディスクとファイルの操作に関するデバッグを有効にします。 .\" .\" .\" .It Fl d Ar file デバッグ出力を、標準エラー出力の代りに .Ar file へ送ります。 .\" .\" .\" .It Fl E exec ルーチンのデバッグを有効にします。 .\" .\" .\" +.It Fl G +ビデオ (グラフィックス) ルーチンのデバッグを有効にします。 +.\" +.\" +.\" .It Fl H 中途半端に実装された呼び出しのトレースを有効にします。 .\" .\" .\" .It Fl I すべての割り込みのトレースを有効にします。 .Fl A とほとんど同じですが、有効になるトレースは少しだけ少ないです。 .\" .\" .\" .It Fl i Ar port Ns Xo .Op : Ns Ar cnt .Xc 入出力ポート .Ar port からのすべての入力要求のトレースを有効にします。 もし .Ar cnt が与えられると、 .Ar port から .Ar port+cnt Ns No -1 までをトレースします。 .\" .\" .\" .It Fl M メモリ操作のデバッグを有効にします。 .\" .\" .\" .It Fl O デバッグ出力を、標準エラー出力の代りに、標準出力へ出力します。 .\" .\" .\" .It Fl o Ar port Ns Xo .Op : Ns Ar cnt .Xc 入出力ポート .Ar port からのすべての出力要求のトレースを有効にします。 もし .Ar cnt が与えられると、 .Ar port から .Ar port+cnt Ns No -1 までをトレースします。 .\" .\" .\" .It Fl p Ar port Ns Xo .Op : Ns Ar cnt .Xc 要求された I/O .Ar port (オプションとして .Ar port+cnt Ns No -1 までの範囲を指定可能です) を実機ハードウェア I/O ポートへマップします。 アクセスには root 権限が必要でしょう。 .\" .\" .\" .It Fl P 入出力ポート呼び出し (例えば .Li inb , .Li outb など) のトレースを有効にします。 .\" .\" .\" .It Fl R ファイルリダイレクトコードのデバッグを有効にします。 .\" .\" .\" .It Fl r 生のキーボード入力と表示を使用します。 を押すと、 doscmd は終了します。VGA グラフィックスが使えるようになります。 .\" .\" .\" .It Fl S Ar int 割り込み .Ar int のトレースを有効にします。 .\" .\" .\" .It Fl t 命令レベルのトレースを試みます。 トレースを混乱させる命令があります。 .Li を押すとトレースモードの有効と無効とを切り替えます。 .\" .\" .\" .It Fl U Ar int 割り込み .Ar int のトレースを無効にします。 .Fl A や .Fl I の後で使用すると便利です。 .\" .\" .\" .It Fl V 未知の割り込みを報告する際、レジスタダンプも含めます。 .\" .\" .\" .It Fl v .Fl AH と同じです。 .\" .\" .\" .It Fl X XMS 操作のデバッグを有効にします。 .\" .\" .\" .It Fl x X11 のウィンドウを表示出力のためにオープンします。 他の方法では利用できない様々な割り込みを有効にします。 .Fl b を指定しても、指定しなくても、使用可能です。 .\" .\" .\" .It Fl Y EMS 操作のデバッグを有効にします。 .\" .\" .\" .It Fl z DOS プログラムにジャンプする直前に .Nm を停止させます。 .Nm を開発する以外の用途はほとんどありません。 .El .Pp 起動時に、 .Nm はコンフィギュレーションファイルを読もうとします。 まず、カレントディレクトリのファイル .Cm .doscmdrc を試します。もし見付からない場合、 .Cm $HOME を検索します。それでもなお見付からない場合、ファイル .Cm /etc/doscmdrc を使用します。 .Pp コンフィギュレーションファイルでは、コメントは \fB#\fP 文字から開始します。 また、空行は無視されます。 非空行は、環境変数またはデバイスを設定するコマンドです。 空白の前に \fB=\fP がある行は、環境変数への代入であると扱われ、 DOS の環境に追加されます。 その他の行は次のいずれかです。 .Bl -tag -width XXXXX .\" .\" .\" .It Cm boot Op Cm A: | C: ブートするデバイスを設定します。 デフォルトでは、 .Cm A: が定義されていれば最初に試され、もしそれが失敗すると、 .Cm C: が試されます。 .\" .\" .\" .It Cm assign Xo .Op Cm A-Z : .Op Fl ro .Ar path .Xc .Bsx のディレクトリ .Ar path を、指定したドライブに割り当てます。 .Fl ro フラグを指定すると、読み取り専用ファイルシステムになります。 DOS ブート時には、 .Pa /usr/libdata/doscmd/redir.com バイナリが実行されるまでは、これらの割り当ては実行されません。 .\" .\" .\" .It Cm assign Xo .Cm lpt Ns Op Cm 0-4 : .Op Cm direct .Ar path .Op Ar timeout .Xc 指定したプリンタを .Ar path に割り当てようとします。 .Ar timeout が指定された場合、 その期間 (秒数) 活動がない場合に、プリンタをフラッシュすべきことを示します。 デフォルトは 30 秒です。 .Ar path が本物のプリンタを参照している場合には、 .Cm direct オプションを指定してください。 .\" .\" .\" .It Cm assign Xo .Op Cm A: | B: .Op Fl ro .Ar path .Ar density .Xc .It Cm assign Xo .Cm flop Ns Op Cm 01 .Op Fl ro .Ar path .Ar density .Xc ファイル .Ar path を、次に利用可能なフロッピまたは指定したフロッピに割り当てます。 .Fl ro が指定されると、フロッピは読み取り専用になります。 .Ar density は次のいずれかです: .sp .Bl -tag -compact -width 1440x .It 180 9 ヘッド 40 トラック片面フロッピ .It 360 9 ヘッド 40 トラック両面フロッピ .It 720 9 ヘッド 80 トラック両面フロッピ .It 1200 15 ヘッド 80 トラック両面フロッピ .It 1440 18 ヘッド 80 トラック両面フロッピ .It 2880 36 ヘッド 80 トラック両面フロッピ .El .\" .\" .\" .It Cm assign Xo .Op Cm C-Z : .Op Fl ro .Ar path .Op Ar type | cyl head sec .Op Ar fdisk_tab .Xc .It Cm assign Xo .Cm hard Ns Op Cm 01 .Op Fl ro .Ar path .Op Ar type | cyl head sec .Op Ar fdisk_tab .Xc ファイル .Ar path を、次に利用可能なハードディスクまたは指定したハードディスクに割り当てます。 ディスクのジオメトリは、シリンダ数 .Ar cyl とヘッド数 .Ar head とトラックあたりのセクタ数 .Ar sec で直接指定することもできますし、標準タイプから 1 つを .Ar type (後述) で指定することもできます。 オプションの .Ar fdisk_tab 引数は、このディスクの最初のセクタとして使用するファイルを指定します。 .Ar path がディスクの一部のみを参照する場合に、 偽の fdisk テーブルを挿入するために使用できます。 .\" .\" .\" .It Cm assign Xo .Cm com Ns Op Cm 1-4 : .Ar path .Ar port .Ar irq .Xc .Ar path で指定した tty または pty を、 指定した com ポートとして使用するように割り当てます。 ベースアドレスは .Ar port でエミュレートされ、割り込みは .Ar irq で指定されます。 このコードは軽くテストしただけなので、向かない用途があるかもしれません。 .\" .\" .\" .It Cm "setver command version" doscmd が DOS をエミュレートする場合、 .Cm command という名前のプログラムから呼ばれた時に、DOS バージョンとして .Cm version を報告するようにします。 .Cm version のフォーマットは、後述の .Cm MS_VERSION 変数と同じです。 .El .Pp .Cm C: は、まだ割り当てられていない場合には、ルートディレクトリ (/) に割り当てられ、 .Cm C: のカレントディレクトリは、現在のカレントディレクトリに設定されます。 これはすなわち、 .Pp .Dl "doscmd ../foo .Pp のように起動しても、動作しないことを意味することに注意してください。 なぜなら .Cm C: ディレクトリはカレントパスで開始するからです。 また、次の環境変数も、未設定の場合には設定されます: .Bd -literal .Cm "COMSPEC=C:\eCOMMAND.COM .Cm "PATH=C:\e .Cm "PROMPT=DOS> .Ed .Pp .Cm PATH 変数は .Ar cmd を検索する際にも使用されます。 DOS のように、まず .Ar cmd.com が検索され、それから .Ar cmd.exe が検索されます。 .Sh コンフィギュレーション変数 doscmd の内部変数であり、実際の DOS の環境では設定されない変数が、 .Cm .doscmdrc ファイル中にいくつかあります。 それらを以下に示します: .Bl -tag -width MS_VERSION .It Cm MS_VERSION この変数の値は、 .Nm が報告を行なう DOS のバージョンを決定するために使用されます。 .Nm は、動作を変えずに、報告方法だけを変えることに注意してください。 デフォルトでは、この値は .Cm 410 であり、 .Tn "MS-DOS バージョン 4.1 に対応します。 バージョン 3.2 (以前の .Nm のデフォルトでした) に変更するには、値 .Cm 320 を使用してください。 .It Cm X11_FONT この変数の値は X window で使用するフォントを決定します。 デフォルトのフォントは .Cm vga であり .Pa /usr/libdata/doscmd/fonts にインストールされています。 X サーバがフォントを見付けられるように .Ql xset fp+ /usr/libdata/doscmd/fonts を .Pa ${HOME}/.xsession か .Pa ${HOME}/.xinitrc に追加してください。 .El .Sh ファイル変換 .Nm は .Bsx のファイル名を .Tn DOS のファイル名に変換する際、すべて大文字に変換し、無効な文字を除去します。 ASCII ファイルを、DOS の世界で好まれる .Cm 形式へ変換するということはありません。 ASCII ファイルを変換するには、プログラム .Xr fconv 1 (ports コレクションの一部です) か、これに類するツール を使用してください。 .bp .Sh ディスクタイプ .TS H expand, box; r | r | r | r | r. タイプ シリンダ ヘッド セクタ サイズ = 01 306 4 17 10MB 02 615 4 17 20MB 03 615 6 17 30MB 04 940 8 17 62MB 05 940 6 17 46MB _ 06 615 4 17 20MB 07 462 8 17 30MB 08 733 5 17 30MB 09 900 15 17 112MB 10 820 3 17 20MB _ 11 855 5 17 35MB 12 855 7 17 49MB 13 306 8 17 20MB 14 733 7 17 42MB 15 976 15 17 121MB _ 16 612 4 17 20MB 17 977 5 17 40MB 18 977 7 17 56MB 19 1024 7 17 59MB 20 733 5 17 30MB _ 21 733 7 17 42MB 22 733 5 17 30MB 23 306 4 17 10MB 24 925 7 17 53MB 25 925 9 17 69MB _ 26 754 7 17 43MB 27 754 11 17 68MB 28 699 7 17 40MB 29 823 10 17 68MB 30 918 7 17 53MB _ 31 1024 11 17 93MB 32 1024 15 17 127MB 33 1024 5 17 42MB 34 612 2 17 10MB 35 1024 9 17 76MB _ 36 1024 8 17 68MB 37 615 8 17 40MB 38 987 3 17 24MB 39 987 7 17 57MB 40 820 6 17 40MB _ 41 977 5 17 40MB 42 981 5 17 40MB 43 830 7 17 48MB 44 830 10 17 68MB 45 917 15 17 114MB _ 46 1224 15 17 152MB .TE .bp .Sh 擬似ディスクへの DOS のインストール doscmd の擬似ハードディスクに DOS をインストールするには、 次のようにします: .Bl -tag -width XXXX .It 1 少なくとも次の記述を含む .Pa .doscmdrc を作成します: .Bd -literal -offset indent assign A: /dev/fd0.1440 1440 assign A: /dev/fd0.720 720 assign hard boot_drive 80 2 2 .Ed .Pp A: ドライブに対応するロウファイル (訳注: キャラクタスペシャルファイル) を、 システムに応じて修正する必要があるかもしれません。 この例では、HD ドライブを最初に試し、DD ドライブを次に試します (訳注: HD = High Density; 高密度、DD = Double Density; 倍密度)。 .\" HD = Hard Disk と思ってしまうと混乱するので、訳注を追加したい。 .\" HD = High Density, DD = Double Density .\" 1998/09/20 by horikawa@jp.FreeBSD.org .Pp ここでは、 ロウデバイスやロウファイルのみを使用する必要があることに注意してください。 加工された (cooked) デバイス (訳注: ブロックスペシャルファイル) を使用しないこと! (おそらくハードディスクは大丈夫でしょうが、フロッピは確実に駄目です) .Pp .Li boot_drive は、ブート可能なイメージを格納するファイルの名前です。 .Li 80 2 2 という 3 つの数字は、 ドライブが 80 個のシリンダと 2 個のヘッドとトラックあたり 2 個のセクタを 持つことを示します。 これは、MS-DOS 5.0 を .Pa config.sys と .Pa autoexec.bat のファイルと共にインストールすることが可能な、最小のドライブです。 .Pp もっと大きなブートドライブを作成したいかもしれません。 .Pp ファイル .Pa boot_drive は存在する必要がありますので、touch コマンドで作成してください。 .It 2 MS-DOS をブート可能で fdisk, format, sys コマンドを含むフロッピディスクを、 A: ドライブに挿入してください。 ファイル redir.com もフロッピにコピーしてください。 この際、msdos ファイルシステム型でフロッピをマウントするか、mtools を使用してください (例えば .Dq Li mwrite redir.com a: とします)。 .It 3 doscmd を実行してください。 .It 4 > プロンプトにて、 .Li fdisk とタイプします。 .It 5 .Li Create DOS partition or Logical Drive を選択します。 .It 6 .Li Create Primary DOS Partition を選択します。 .It 7 大きさを指定します (典型的にはドライブ全体です。それでも非常に小さいものです。) .It 8 .Li を何度か押して、FDISK を終了します。 .It 9 doscmd が実行中断するでしょうから、 そうなった場合、doscmd を再度実行します。 .It 10 > プロンプトにて、 .Li format c: とタイプし、指示に従います。 .It 11 > プロンプトにて、 .Li sys c: とタイプします。 .It 12 doscmd を終了します。 .It 13 ドライブからフロッピを取り除くか、 .Bd -literal -offset indent boot C: .Ed という行をあなたの .Pa .doscmdrc に加えてください。 .It 14 新しいディスクから DOS を動かします。 config.sys と autoexec.bat の両ファイルが欲しいでしょうから、 まず最初は次のようにします: .Bd -literal -offset indent > copy con: config.sys LASTDRIVE=Z ^Z > copy con: autoexec.bat @echo off redir.com ^Z .Ed .It 15 doscmd を終了します。 .It 16 .Fx ディスクを組み込む魔法のプログラム .Li redir を自動的に呼び出す、ブート可能な擬似ディスクが完成しました。 FreeBSD ディスクを使用するためには、次の行をあなたの .doscmdrc に追加します: .Bd -literal -offset indent assign D: /usr/dos assign P: -ro /usr/prb .Ed 名前の問題により、 アクセスできないファイルがあるかもしれないことに注意してください。 .El .Sh 診断 実装されていない割り込みに出会うと、 .Nm は次のようなメッセージを表示し終了します: .Pp .Dl Unknown interrupt 21 function 99 .Pp .Pp .Nm .Fl x スイッチ指定時に、 .Ic X11 support not compiled in というメッセージが表示された場合、環境変数 .Ev X11BASE を X Window System をインストールした場所 (通常 .Pa /usr/X11R6 ) に設定し、ソースディレクトリ (通常 .Pa /usr/src/usr.bin/doscmd ) で .Ic make install とタイプすることで、本機能を有効にすることができます。 このように動作するためには、 X プログラマキットがインストールしてある必要があります。 .Sh 作者 .An Pace Willisson , .An Paul Borman .Sh 歴史 .Nm は .Tn BSD/386 に初めて登場しました。 diff --git a/ja_JP.eucJP/man/man1/ed.1 b/ja_JP.eucJP/man/man1/ed.1 index aa641096ae..35bc17d048 100644 --- a/ja_JP.eucJP/man/man1/ed.1 +++ b/ja_JP.eucJP/man/man1/ed.1 @@ -1,886 +1,887 @@ -.\" %FreeBSD: src/bin/ed/ed.1,v 1.17.2.9 2001/08/16 10:01:05 ru Exp % +.\" %FreeBSD: src/bin/ed/ed.1,v 1.17.2.10 2002/04/22 22:19:52 keramida Exp % .\" .\" $FreeBSD$ .Dd May 21, 1993 .Dt ED 1 .Os .Sh 名称 .Nm ed , .Nm red .Nd 行指向のテキストエディタ .Sh 書式 .Nm ed .Op Fl .Op Fl sx .Op Fl p Ar string .Op Ar file .\" .LP .\" red [-] [-sx] [-p \fIstring\fR] [\fIfile\fR] .Sh 解説 -.Nm ed -は、行指向のテキストエディタです。 +.Nm +ユーティリティは、行指向のテキストエディタです。 本コマンドを用いることで、テキストファイルの生成、表示、変更その他の操作を 行なうことができます。 .\" .B red .\" is a restricted .\" .BR ed : .\" it can only edit files in the current .\" directory and cannot execute shell commands. .Pp .Ar file 引数を指定して本コマンドを起動すると、ファイル .Ar file のコピーをエディタのバッファに読み込みます。 以後の変更はそのコピーに対して行なわれ、 .Ar file で指定したファイル自身が直接変更されることはありません。 .Nm コマンドを終了する際、 .Em w コマンドで明示的にセーブしなかった変更点はすべて失われます。 .Pp 編集は、 .Em コマンド モードと .Em 入力 モードの 2 つの異なるモードを使い分けて行ないます。 .Nm を起動したら、まずコマンドモードに入ります。 本モードでは、標準入力からコマンドを読み込み、それを実行することで エディタバッファの内容操作を行ないます。 典型的なコマンドは、以下のようなものです。 .Pp .Sm off .Cm ,s No / Em old Xo .No / Em new .No / Cm g .Xc .Sm on .Pp これは、編集しているテキストファイル中に .Em old という文字列があったら、これらをすべて文字列 .Em new に置き換えるコマンドです。 .Pp .Em a (append)、 .Em i (insert)、あるいは .Em c (change) といった入力コマンドが入力された場合、 .Nm は入力モードに移行します。これが、ファイルにテキストを追加する 主たる方法です。 このモードでは、コマンドを実行することはできません。 そのかわり、標準入力から入力されたデータは、 直接エディタバッファへと書き込まれます。行は、改行キャラクタまで のテキストデータおよび、最後の .Em 改行 キャラクタを含むデータから構成されます。 ピリオド 1 つだけ .Pq Em .\& の行を入力すると、入力モードを終了します。 .Pp すべての .Nm コマンドは、全ての行もしくは指定した範囲の行の操作が可能です。例えば、 .Em d コマンドは指定した行を削除し、 .Em m コマンドは指定した行を移動します。 上に示した例のように、置換によってある行の一部分のみを変更することは 可能ですが、 .Em s コマンドは、一度に全部の行にわたって変更を行なうことも可能です。 .Pp 一般的には、 .Nm コマンドは、0 個以上の行番号および、それに連なる 1 文字コマンドから 成り立ちます。場合によっては追加のパラメータをもつこともあります。 いうなれば、コマンドは以下の構造を持ちます。 .Pp .Sm off .Xo .Op Ar address Op , Ar address .Ar command Op Ar parameters .Xc .Sm on .Pp 行番号はコマンドの操作対象行あるいは対象行範囲を示します。 行番号の指定個数が、コマンドが受け付け可能な個数よりも少ない場合には、 デフォルトの行番号が採用されます。 .Sh オプション 以下のオプションが使用できます。 .Bl -tag -width indent .It Fl s 診断メッセージを抑制します。本オプションは、 .Nm の入力がスクリプトによって行なわれる場合に有効です。 .It Fl x 続く読み書きの際に行なわれる暗号化に用いる鍵の入力を促します ( .Em x コマンドを参照して下さい)。 .It Fl p Ar string コマンドプロンプトとして表示する文字列を指定します。 コマンドプロンプトは、コマンドモードで .Em p コマンドを実行することで、表示する/しないを切り替えることが可能です。 .It Ar file 編集対象のファイルを指定します。 .Ar file 名の先頭に感嘆符 (!) が付加されていた場合、そのファイル名はシェルコマンドと して解釈されます。この場合、編集対象として読み込まれるテキストは、 .Xr sh 1 が .Ar file で指定したコマンドを実行した結果、標準出力に出力されるデータです。 先頭が感嘆符で始まるファイルを編集する場合には、ファイル名の先頭に バックスラッシュ (\\) を付加して下さい。 感嘆符以外の文字で始まるファイル名については、編集対象のファイル名は .Ar file となります。 .El .Sh 行指定 行は、バッファ内の行番号で表現されます。 .Nm -は +ユーティリティは .Em 現在行 を管理しており、 コマンドに行番号が指定されない場合は、 現在行がデフォルト行として用いられます。 ファイルが最初に読み出された直後は、現在行はファイルの最後の行となります。 一般的に、現在行はコマンドが操作した最後の行となります。 .Pp 行番号は、以下の一覧のうち 1 つおよび、補助的に付加される 相対行番号 (オフセット) から構成されます。 相対行番号は、任意の数字の組み合わせと演算子、そして空白文字を含みます ( 例えば .Em + , .Em - や .Em ^ が演算子に含まれます )。 行番号は、左から右に解釈され、それらの演算子を含む値は、現在行からの相対行番 号と解釈されます。 .Pp 行番号の表現に関して上記の規則が適用される中で、行番号 .Em 0 ( ゼロ ) に関しては、例外的な扱いがされます。 これは「最初の行より前」を意味し、 それが正しい意味を持つ場合は常に利用可能です。 .Pp 行範囲は、コンマもしくはセミコロンで区切られた 2 つのアドレスで示されます。 最初に指定される行番号は、2 番目に指定される行番号を超える値を指定して はいけません。行範囲指定で行番号が 1 つしか指定されなかった場合には、2 番目に 指定されるアドレスとして最初に指定されたアドレスが設定され ます。ここで 3 個以上の行番号が指定されると、最後の 2 つの行番号で 決定される範囲がコマンド実行対象になります。行番号の指定を 1 つだけしか 想定していないコマンドの場合、最後の 1 つの行番号の行がコマンド実行対象 となります。 .Pp コンマで区切られた各行番号は、現在行からの相対行を指し示します。 セミコロンで区切られている場合は、範囲の始めの行は現在行が設定され、 範囲の終りは始めの行からの相対行で表わされます。 .Pp 行番号の指定には、以下のシンボルが使用可能です。 .Bl -tag -width indent .It . バッファ中の現在行を表します。 .It $ バッファ中の最終行を表します。 .It n バッファ内の .Em n 番目の行を表します。 .Em n は、 .Em [0,$] の間です。 .It - or ^ 1 行前の行です。 相対行指定 .Em -1 と同等であり、複数指定することで効果を累積することが可能です。 .\" --- という指定をすることで、2 行前を示すことができます。 .\" ↑原文中に無いのでコメントアウト sakai@jp.freebsd.org (Jun 9,1997) .It -n or ^n .Em n 行前の行を表します。 .Em n は、負でない整数です。 .It + 次の行を表します。 これは、 .Em +1 と同様であり、 .Em - と同様の累積的指定が可能です。 .It +n or whitespace .Em n 行後ろの行を表します。 .Em n は、負でない整数です。 .Em n の前に .Em whitespace ( 空白文字 ) を付加して指定した場合も .Em +n と解釈されます。 .\" ↓原文中に無いのでコメントアウト sakai@jp.freebsd.org (Jun 9,1997) .\" ただし、空白文字による指定を行なった場合は、単独では現在行からの相対行数を .\" 指定することはできず、相対行指定の基準となる行をその前に指定しなければなり .\" ません。 .It , or % バッファの最初から最後までを表します。これは、 .Em 1,$ と指定した場合と同等です。 .It ; バッファ中の現在行から最後の行までを表します。これは、 .Em .,$ と指定した場合と同等です。 .It /re/ 指定された正規表現 .Em re を含む、(現在行よりも後ろの) 次の行を表します。 必要であれば、文字列検索はテキスト先頭に折り返し、 現在行に達するまで検索を行ないます。 // は、最後に行なった検索を繰り返します。 .It ?re? 指定した正規表現 .Em re を含む、現在行より前の行を表します。 必要であれば、文字列検索はテキストの最後に折り返し、 現在行に達するまで検索を行ないます。 ?? は、最後に行なった検索を繰り返します。 .It 'lc .Em k (mark) コマンドでマークをつけた行を表します。ここで .Em lc は、英小文字1文字です。 .El .Sh 正規表現 正規表現はテキストを選択する際に用いるパターンです。 例えば次の .Em ed コマンド .Pp .Sm off .Cm g No / Em string Xo .No / .Xc .Sm on .Pp は .Em string を含む全ての行を表示します。 正規表現は .Em s コマンドで古いテキストを新しいテキストで置き換える際にも用いられます。 .Pp 文字リテラルを指定するのに加え、 正規表現は文字列のクラスを表現することができます。 このようにして表現された文字列は、それに対応する正規表現に「マッチする」と 言います。 ある正規表現が一つの行の中の複数の文字列にマッチする場合、 マッチする部分のうち最も左にあって最も長いものが選択されます。 .Pp 正規表現を組み立てる際には以下のシンボルが用いられます: .Bl -tag -width indent .It c 以下に挙げるものを除く任意の文字 .Em c は、その文字自身にマッチします。 このような文字には `{', '}', `(', `)', `<', `>' が含まれます。 .It Pf \e c バックスラッシュでエスケープした文字 .Em c は、その文字自身にマッチします。 ただし `{', '}', `(', `)', `<', `>' を除きます。 .It . 任意の一文字にマッチします。 .It Op char-class 文字クラス .Em char-class に含まれる任意の一文字にマッチします。 文字クラス .Em char-class に `]' を含めるには、文字 `]' を最初の文字に指定します。 文字の範囲を指定するには、範囲の両端の文字の間を `-' でつなぎます。 例えば `a-z' は小文字全体を表します。 以下のようなリテラル表記も、文字集合を指定するために文字クラス .Em char-class で使用することができます: .Pp .Bl -column "[:alnum:]" "[:cntrl:]" "[:lower:]" "[:xdigit:]" -compact .It [:alnum:] Ta [:cntrl:] Ta [:lower:] Ta [:space:] .It [:alpha:] Ta [:digit:] Ta [:print:] Ta [:upper:] .It [:blank:] Ta [:graph:] Ta [:punct:] Ta [:xdigit:] .El .Pp 文字クラス .Em char-class の最初あるいは最後の文字として `-' が用いられると、 それはその文字自身にマッチします。 文字クラス .Em char-class 中のこれ以外の文字は全て、それら自身にマッチします。 .Pp 以下の形式の文字クラス中のパターン: .Pp .Bl -item -compact -offset 2n .It .Op \&. Ns Ar col-elm Ns .\& or, .It .Op = Ns Ar col-elm Ns = .El .Pp は .Xr locale 5 に沿って解釈されます (現在のところサポートされません)。ここで .Ar col-elm は .Em collating element です。詳しい説明は .Xr regex 3 を参照して下さい。 .It Op ^char-class 文字クラス .Em char-class に含まれない、改行以外の任意の一文字にマッチします。 文字クラス .Em char-class は上で定義しています。 .It ^ .Em ^ が正規表現の最初の文字である場合、 その正規表現は行頭でのみマッチします。 それ以外の場合、 .Em ^ はそれ自身にマッチします。 .It $ .Em $ が正規表現の最後の文字である場合、 その正規表現は行末でのみマッチします。 それ以外の場合、 .Em $ はそれ自身にマッチします。 .It Pf \e < これに続く単一文字の正規表現あるいはその部分式が、 単語の先頭でのみマッチするようにします (この機能は利用できない 場合があります)。 .It Pf \e > これに続く単一文字の正規表現あるいはその部分式が、 単語の末尾でのみマッチするようにします (この機能は利用できない 場合があります)。 .It Pf \e (re\e) 部分式 (subexpression) .Em re を定義します。部分式はネストできます。 これ以降、 .Pf \e Em n ( .Em n は [1,9] の範囲の数) の形式の後方参照は、 .Em n 番目の部分式にマッチしたテキストに展開されます。 例えば、正規表現 `\e(.*\e)\e1' は、 同じ文字列が隣接しているような任意の文字列にマッチします。 部分式は左側のデリミタから順に番号が振られます。 .It * 直前にある単一文字の正規表現あるいはその部分式のゼロ回以上の繰り返しに マッチします。 .Em * が正規表現あるいはその部分式の最初の文字として用いられた場合、 .Em * はその文字自身にマッチします。 .Em * 演算子は時に予期しない結果をもたらすことがあります。 例えば、正規表現 `b*' は文字列 `abbb' の先頭に マッチします (部分文字列 `bbb' ではありません)。 これはヌルへのマッチが最も左にあるマッチだからです。 .It \e{n,m\e} or \e{n,\e} or \e{n\e} 直前にある単一文字の正規表現あるいはその部分式の、 .Em n 回以上 .Em m 回以下の繰り返しにマッチします。 .Em m が省略された場合、 .Em n 回以上の繰り返しにマッチします。 更にコンマも省略された場合、ちょうど .Em n 回の繰り返しにのみマッチします。 .El .Pp 各 .Xr regex 3 の実装によっては、 更に正規表現演算子がいくつか定義されていることがあります。 .Sh コマンド 全ての .Nm コマンドは、1 文字からなりますが、追加パラメータが必要なコマンドもあります。 コマンドのパラメータが複数の行にわたる場合には、そのパラメータを含めたコマンド の終りを含む行を除き、行末にバックスラッシュ (\\) を付加して下さい。 .Pp 一般的には、1 行ごとに 1 コマンドを入れることが許されています。 しかしながら、ほとんどのコマンドは、コマンド実行を行なった後のデータ更新 その他を確認するために、 .Em p (print)、 や .Em l (list)、 .Em n (enumerate), のような表示系のコマンドを同時に指定できます。 .Pp インタラプト (一般的には ^C) を入力することで、現在実行しているコマンドを 強制終了し、コマンドモードに戻すことができます。 .Pp .Nm -は、以下のコマンドを使用できます。コマンド実行時に何の指定もない場合の +ユーティリティは、以下のコマンドを使用できます。 +コマンド実行時に何の指定もない場合の デフォルトの行番号もしくは行範囲が括弧内に示されています。 .Bl -tag -width indent .It (.)a 指定した行の後にテキストを追加します。 テキストは入力モードで入力されていきます。 現在行番号は、入力された最後の行に設定されます。 .It (.,.)c バッファ内の指定した行を変更します。指定した行のデータは、バッファから消去 され、そこに対してテキストデータを入力するようになります。 テキストは入力モードで入力されていきます。 現在行番号は、入力した最後の行に設定されます。 .It (.,.)d 指定した範囲をバッファから削除します。 削除した範囲の後に行が続いている場合、現在行番号は、その行に設定されます。 そうでない場合には、現在行番号は、削除された範囲の前の行に設定されます。 .It e Ar file .Ar file を編集し、デフォルトのファイル名を設定します。 もし .Ar file が指定されなかった場合には、デフォルトのファイル名が使用されます。 本コマンド実行時に、それまで別のファイルを編集していた場合には、 その内容はすべて消去され、新しいファイルが読み込まれます。 現在行番号は、入力された最後の行に設定されます。 .It e Ar !command .Ar !command で指定されたコマンドを実行し、その結果として標準出力へ 出力されたデータを編集します (後述する .Ar ! command を参照して下さい)。 デフォルトのファイル名は変更されません。 .Ar command の出力が読み込まれる前に、バッファ内に存在した行はすべて消去されます。 現在行番号は、入力された最後の行に設定されます。 .It E Ar file 無条件で .Ar file で指定したファイルを読み込み、編集します。 .Em e コマンドと動作は似ていますが、すでにバッファ上のデータに変更が加えられ ている場合でも、未書き込みの変更を警告を出さずに捨ててしまう点が異なります。 現在行番号は、入力された最後の行に設定されます。 .It f Ar file デフォルトファイル名を .Ar file に設定します。 .Ar file 名が指定されない場合には、デフォルトファイル名が表示されます。 .It (1,$)g/re/command-list .Ar command-list で指定されたコマンドを、指定した正規表現 .Ar re に一致する各行に対して実行します。 現在行番号は、 .Ar command-list で指定されたコマンドが実行される前に、指定した正規表現に一致した行 に設定されます。 .Em g コマンドが終了した場合、現在行番号は最後に .Ar command-list 実行の影響を受けた行に設定されます。 .Pp .Ar command-list で指定されるコマンドは、1 行ごとに 1 つずつ書かれる必要があります。各コマンド 行の終りには、一番最後のコマンド行を除いてはバックスラッシュ (\\) を記述する 必要があります。 コマンド .Em g , .Em G , .Em v , .Em V を除くすべてのコマンドを指定可能です。 .Ar command-list 中の空行は、 .Em p コマンドと同等に扱われます。 .It (1,$)G/re/ 指定した正規表現 .Ar re に一致した行に対して、対話編集を行ないます。 指定した正規表現に一致する文字列を含む行があると、その行を表示し、現在行番号を 設定します。 そして、ユーザに .Ar command-list の入力を促します。 .Em G コマンドが終了した場合、現在行番号は、 .Ar command-list 実行の影響を受けた最後の行に設定されます。 .Pp .Ar command-list の記述形式は、 .Em g コマンドで指定するものと同じです。改行のみの場合は、コマンド実行をしない ( ヌルコマンドリストを指定した ) ものとみなされます。 `&' 文字のみを入力した場合には、 直前に実行した ( ヌルコマンドリストではない ) コマンドを再実行します。 .It H エラーメッセージの出力の有無を切り替えます。 デフォルトでは、エラーメッセージは出力されません。 ed スクリプトを作成する場合、スクリプトのデバッグのために、本コマンドを 最初に実行することをおすすめします。 .It h 最後に表示されたエラーメッセージを表示します。 .It (.)i 編集バッファ中の現在行の前に、テキストを挿入します。 テキストは入力モードで入力されていきます。 現在行番号は、入力された最後の行に設定されます。 .It (.,.+1)j 指定した範囲の行を 1 行に連結します。指定した行はバッファから削除され、 その行の内容を含む 1 行に置き換えられます。 現在行番号は、置き換えられた行に設定されます。 .It (.)klc 行に、英小文字 .Em lc で指定したマークをつけます。 その後、マークをつけられた行は、コマンド中で .Em 'lc (つまり、シングルクォートと小文字 .Em lc ) として指定できるようになります。 マークは、その行が削除されるかもしくは変更されるかしない限り、消えることは ありません。 .It (.,.)l 指定した範囲の行の内容を見やすく表示します。 もし 1 つの行が 1 画面以上を占める場合 ( 例えばバイナリファイルを見ている 場合など ) `--More--' プロンプトが最下行に表示されます。 次の画面を表示する前に .Nm -はリターンキーが入力されるまで待ちます。 +ユーティリティはリターンキーが入力されるまで待ちます。 現在行番号は、表示された最後の行に設定されます。 .It (.,.)m(.) 指定した範囲の行をバッファ内で移動します。指定した行は、 コマンドの右辺で指定した行の後ろに 移動されます。移動先の行としては、 .Em 0 (ゼロ) が指定可能です。 現在行番号は、移動された最後の行に設定されます。 .It (.,.)n 指定した行の内容を、行番号つきで表示します。 現在行番号は、表示された最後の行に設定されます。 .It (.,.)p 指定した範囲の行の内容を表示します。 現在行番号は、表示された最後の行に設定されます。 .It P コマンドプロンプト表示の有無を切り替えます。 コマンド起動時のオプション .Fl p Ar string でプロンプトが指定されていなければ、 コマンドプロンプトの表示はデフォルトでオフになっています。 .It q .Nm を終了します。 .It Q 無条件に .Nm を終了します。 このコマンドは .Em q コマンドと似ていますが、まだファイルに書き出されていない 変更があっても警告せずに終了する点が異なります。 .It ($)r Ar file .Ar file で指定されたファイルを、指定した行の後ろに読み込みます。 .Ar file が指定されない場合、デフォルトのファイル名が読み込みに使用されます。 このコマンドに先だってデフォルトのファイル名が設定されていない場合、 デフォルトのファイル名には、 .Ar file で指定されたものが設定されます。 それ以外の場合、デフォルトのファイル名は変更されません。 現在行番号は、読み込まれたファイルの最後の行に設定されます。 .It ($)r Ar !command .Ar command で指定されたコマンドを実行し、その結果として標準出力へ出力された データを指定した行の後ろに読み込みます (後述する .Ar ! command を参照して下さい)。 デフォルトのファイル名は変更されません。現在行番号は、読み込まれた最後の行の 行番号に設定されます。 .It (.,.)s/re/replacement/ .It (.,.)s/re/replacement/g .It (.,.)s/re/replacement/n 指定した行のテキスト中の、正規表現 .Ar re に一致する文字列を、文字列 .Ar replacement に置き換えます。 デフォルトでは、それぞれの行で最初に一致した文字列のみを置き換えます。 .Em g (global) サフィックスが指定された場合、一致した文字列はすべて置き換えられます。 .Em n サフィックス ( .Em n は正の整数) が指定された場合、 .Em n 回目に一致した文字列だけを置き換えます。 指定した範囲で一度も文字列の置換が起こらなかった場合、エラーとみなされます。 現在行番号は、最後に置換が発生した行に設定されます。 .Pp .Ar re および .Ar replacement は、スペースおよび改行を除くすべてのキャラクタを用いて区切ることが 可能です (後述する .Em s コマンドを見て下さい)。 最後のデリミタのうち 1 つか 2 つが省略された場合、 最後に文字列置換が発生した行は、 .Em p コマンドが指定された場合と同様に表示されます。 .Pp .Ar replacement 中のエスケープされていない `&' は、一致した文字列と置き換えられます。 キャラクタシーケンス .Em \em ( .Em m は [1,9] の範囲の整数です ) は、一致した文字列の .Em m 番目の後方参照で置き換えられます。 .Ar replacement の中に入る文字が `%' のみだった場合、 最後に行なった置換の .Ar replacement が使用されます。 改行を .Ar replacement に指定したい場合は、バックスラッシュを用いてエスケープすれば可能です。 .It (.,.)s 最後の置換を繰り返します。 この形式の .Em s コマンドは、回数を示すサフィックス .Em n もしくは、他の .Em r、 .Em g、 .Em p のどのキャラクタとの組み合わせも可能です。 .Em n が指定されると、 .Em n 回目に一致した文字列だけが置換されます。 .Em r サフィックスが指定されると、最後の置換が発生した文字列の変わりに、 最後に指定した正規表現が使用されます。 .Em g サフィックスは、最後の置換で用いたグローバルサフィックスの使用の 有効/無効を切り替えます。 .Em p サフィックスは、最後の置換に指定されたプリントサフィックスを反転します。 現在行番号は、最後に置換が発生した行に設定されます。 .It (.,.)t(.) 指定した範囲の行を、コマンド文字の右辺に指定した行番号の後に コピー (つまり転送) します。コピー先の行番号としては、 .Em 0 (ゼロ) の指定が許されています。 現在行番号は、コピーした一番最後の行の行番号に設定されます。 .It u 最後に実行したコマンドの実行結果を取り消し、現在行番号を、取り消したい コマンドが実行される前のものに戻します。 グローバルコマンドである .Em g、 .Em G、 .Em v、 .Em V については、その改変は 1 コマンドで行なわれたとして扱います。 .Em u は自分自身の動作を取り消すこともできます。 .It (1,$)v/re/command-list 指定した範囲の行のうち、指定した正規表現 .Ar re と一致する文字列が含まれていない行について、 .Ar command-list で指定したコマンドを実行します。 これは .Em g コマンドに動作が似ています。 .It (1,$)V/re/ 指定した範囲の行のうち、指定した正規表現 .Ar re に一致する文字列が含まれていない行について、対話編集を行ないます。 これは .Em G コマンドに動作が似ています。 .It (1,$)w Ar file 指定した範囲の行を、 .Ar file で指定したファイルに書き出します。 それまで .Ar file に格納されていた内容は、警告なしに消去されます。 デフォルトファイル名が設定されていない場合、デフォルトファイル名は .Ar file に設定されます。それ以外の場合では、デフォルトファイル名は変更されません。 ファイル名が指定されなかった場合には、デフォルトファイル名が使用されます。 現在行番号は変更されません。 .It (1,$)wq Ar file 指定した範囲の行を .Ar file で指定したファイルに書き出し、 .Em q コマンドを実行します。 .It (1,$)w Ar !command 指定した範囲の行の内容を .Ar !command の標準入力に書き出します ( .Em !command については、以下の説明を参照して下さい)。 デフォルトファイル名および現在行番号は変更されません。 .It (1,$)W Ar file 指定した範囲の行の内容を、 .Ar file で指定したファイルの後ろに追加書き込みします。 .Em w コマンドと似ていますが、指定したファイルにそれまで格納されていた内容 がなくなることはありません。 現在行番号は変更されません。 .It x 以降の読み書きで用いられる暗号化鍵の入力を促します。 改行のみが入力されると、暗号化は解除されます。 それ以外の場合、キー読み込み中のエコーは抑制されます。 暗号化および復号化は .Xr bdes 1 アルゴリズムを用いて行われます。 .It Pf (.+1)z n 指定した行から一度に .Ar n 行だけスクロールします。 .Ar n が指定されない場合には、現在のウィンドウサイズだけスクロールします。 現在行番号は、最後に表示した行の行番号に設定されます。 .It !command .Ar command で指定したコマンドを、 .Xr sh 1 を用いて実行します。 .Ar command の最初の文字が `!'の場合には、その文字は直前に .Ar !command で実行したコマンド文字列が格納されます。 .Ar command 文字列をバックスラッシュ(\\)でエスケープした場合には、 .Nm -は処理を行ないません。 +ユーティリティは処理を行ないません。 しかし、エスケープされない .Em % 文字があった場合には、その文字列はデフォルトファイル名に置き換えられます。 シェルがコマンド実行から戻ってきた場合には、`!' が標準出力に出力されます。 現在行番号は変更されません。 .It ($)= 指定された行の行番号を表示します。 .It (.+1)newline 指定した行を表示します。そして、現在行番号を表示した行のものに 設定します。 .El .Sh 関連ファイル .Bl -tag -width /tmp/ed.* -compact .It /tmp/ed.* バッファファイル .It ed.hup 端末が回線切断した場合に、 .Nm がバッファ内容を書き出すファイル .El .Sh 関連項目 .Xr bdes 1 , .Xr sed 1 , .Xr sh 1 , .Xr vi 1 , .Xr regex 3 .Pp USD:12-13 .Rs .%A B. W. Kernighan .%A P. J. Plauger .%B Software Tools in Pascal .%O Addison-Wesley .%D 1981 .Re .Sh 制限 .Nm -は +ユーティリティは、 .Ar file 引数に対してバックスラッシュエスケープ処理を施します。 つまり、ファイル名中でバックスラッシュ (\\) を前につけた文字は、 リテラルとして解釈されます。 .Pp (バイナリではない) テキストファイルの最後が改行文字で終っていない場合、 .Nm はそれを読み書きする際に改行文字を追加します。 バイナリファイルの場合は、 .Nm はこのような改行文字追加は行いません。 .Pp 1 行あたりのオーバヘッドは整数 4 つ分です。 .Sh 診断 エラーが発生すると、 .Nm は `?' を表示し、コマンドモードに戻るか、スクリプトによる実行のエラーの場合には プログラムを終了します。 最後のエラーメッセージについての説明は、 .Em h (help) コマンドを用いることで表示可能です。 .Pp .Em g (global) コマンドは、検索や置換が失敗したというエラーを隠蔽します。 そのため、スクリプトの中で条件つきコマンド実行を行なわせるのによく使われます。 例えば .Pp .Sm off .Cm g No / Em old Xo .No / Cm s .No // Em new .No / .Xc .Sm on .Pp は、出現した文字列 .Em old をすべて文字列 .Em new に置き換えます。 .Em u (undo) コマンドがグローバルコマンドリスト内で実行された場合、コマンドリストは 1 度だけの実行になります。 .Pp 診断が無効にされていないと、 .Nm を終了しようとする場合やバッファ内のデータを書き出さずに他のファイルを 編集しようとする場合にエラーになります。 その場合でも、同一のコマンドを 2 回入力すると、コマンドは成功します。 しかし、それまでの未保存の編集結果は、すべて失われます。 .Sh 歴史 .Nm コマンドは Version 1 AT&T UNIX で登場しました。 diff --git a/ja_JP.eucJP/man/man1/fstat.1 b/ja_JP.eucJP/man/man1/fstat.1 index d1e629b02d..730455c251 100644 --- a/ja_JP.eucJP/man/man1/fstat.1 +++ b/ja_JP.eucJP/man/man1/fstat.1 @@ -1,231 +1,231 @@ .\" Copyright (c) 1987, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)fstat.1 8.3 (Berkeley) 2/25/94 -.\" %FreeBSD: src/usr.bin/fstat/fstat.1,v 1.9.2.5 2001/08/16 13:16:48 ru Exp % -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/fstat.1,v 1.11 2001/08/17 06:18:09 horikawa Exp $ +.\" %FreeBSD: src/usr.bin/fstat/fstat.1,v 1.9.2.6 2002/04/16 19:53:35 charnier Exp % +.\" $FreeBSD$ .\" .Dd February 25, 1994 .Dt FSTAT 1 .Os .Sh 名称 .Nm fstat .Nd ファイルのステータスを表示する .Sh 書式 .Nm .Op Fl fmnv .Op Fl M Ar core .Op Fl N Ar system .Op Fl p Ar pid .Op Fl u Ar user -.Op Ar filename ... +.Op Ar .Sh 解説 .Nm は、現在オープンされているファイルについての情報を表示します。 オープンされているファイルとは、プロセスによって明示的にオープンされている もの、ワーキングディレクトリ、ルートディレクトリ、アクティブな実行可能 テキストや、カーネルのトレースファイルなどを指します。引数が何も与え られなければ、 .Nm はシステム中でオープンされているすべてのファイルについての情報を表示します。 .Pp オプション: .Bl -tag -width Ds .It Fl f 表示する情報を、 .Ar filename で指定されたファイルと同じファイルシステム のものに制限します。引数が指定されていない場合は、カレントディレクトリ を含むファイルシステムのものに制限されます。たとえば、 .Pa /usr/src 以下のディレクトリでオープンされているすべてのファイルを見つけるには、 .Dq Li fstat -f /usr/src としてください。 .\" FreeBSD 2.1.0R 英語版マニュアルでは、以下で引数 core を明記していない .\" が、明らかにこれでも妥当だと考えられる。 .\" これ以降でも同様の部分がいくつか存在する。 -- jpman Sakai .\"(訳中)同様のこと確認しました。そのままにしてあります。 .\" 2.2.1R 対象(1997/05/17) Takeshi MUTOH .It Fl M Ar core 名前に関するリストから値を取り出す際、デフォルトの .Pa /dev/kmem のかわりに .Ar core を使います。 .It Fl N Ar system 名前のリストを取り出す際、デフォルトの .Pa /kernel のかわりに .Ar system を使います。 .It Fl m メモリマップされたファイルをリストに含めます。 更なる処理が必要であるため、通常はこれらは除外されています。 .It Fl n 数値フォーマットで表示を行います。マウントポイントの名前を表示する かわりに、そのファイルシステムにおけるデバイス番号 (メジャー、マイナー) を表示します。特殊ファイルに関しては、 .Pa /dev の下のファイル名 は参照されず、特殊デバイスのデバイス番号が表示されます。また、 ファイルの属性も記号ではなく、8 進数で表示されます。 .It Fl p Ar pid 指定されたプロセス ID のプロセスによってオープンされているすべてのファイル の情報を表示します。 .It Fl u Ar user 指定されたユーザによってオープンされているすべてのファイル の情報を表示します。 .It Fl v 詳細報告モード。システムのデータ構造体を見つけるのに失敗した場合などに エラーメッセージを表示します (デフォルトでは無視します)。これらの 構造体の多くは、動的に生成されたり消去されたりするもので、 .Nm を実行中に 消えてしまう可能性があります。これは、 .Nm 実行中にも、システム の残りの部分が動いているためで、ごく普通のことですし、避けることはできません。 -.It Ar filename ... +.It Ar 表示する情報を、指定されたファイル .Ar filename に限定します。 .El .Pp 以下のような項目が表示されます。 .Bl -tag -width MOUNT .It Li USER プロセスの所有者のユーザ名 (実効ユーザ ID のものが表示されます) .It Li CMD プロセスのコマンド名 .It Li PID プロセスID .It Li FD プロセスごとのオープンしているファイルのファイル番号、もしくは 以下の特別な名前のどれかです。 .Pp .Bd -literal -offset indent -compact text - 実行可能テキストの inode wd - 現在のワーキングディレクトリ root - ルートの inode tr - カーネルトレースファイル mmap - メモリマップされたファイル .Ed .Pp ファイル番号のあとにアスタリスク記号 ``*'' がある場合は、ファイルは inode ではなく、ソケットや .Tn FIFO であったり、そのファイルにエラーがあるのかもしれません。この 場合、残りの行は後ろのヘッダと一致しません。 -- 行のフォーマットは、 .Sx ソケット のところで説明します。 .It Li MOUNT .Fl n オプションが指定されていなければ、このヘッダが現れます。 マウントされているパス名は、ファイルが存在しているファイルシステムです。 .It Li DEV .Fl n が指定されると、このヘッダが現れます。ファイルが存在しているデバイス のメジャー番号とマイナー番号です。 .Pp .It Li SZ\&|DZ ファイルがキャラクタデバイスファイルやブロックデバイスファイルでなけ れば、そのファイルのバイト数を表示します。デバイスファイルあって .Fl n が 指定されていなければ、その特殊ファイルの .Pa /dev における名前を表示します。 .Pa /dev になかったり、 .Fl n が指定されていたりする と、スペシャルデバイスが参照するメジャー番号、マイナー番号を表示します。 .It Li R/W このフィールドには、ファイルのアクセス属性が表示されます。 ``r'' の場合は、ファイルが読み込みのためにオープンされていることを意味します。 ``w'' の場合は、ファイルが書き込みのためにオープンされていることを意味します。 このフィールドは、ファイルシステムを読み込み専用状態に移行する際に、 それを妨げているプロセスを見つける場合に役に立ちます。 .It Li NAME .Ar filename が指定されていて、 .Fl f が指定されていなければ、この フィールドが表示され、指定されたファイルに関連する名前が表示されます。 普通、この名前は決まったものではありません。というのも、オープンされた ファイルから、ディレクトリ中のエントリへの逆のマッピングは存在しない からです。また、異なるディレクトリエントリが同じファイルを参照してい ることもある ( .Xr ln 2 を参照) ため、表示されている名前 は、プロセスがオープンした元のファイルの実際の名前と 異なっているかもしれません。 .El .Sh ソケット オープンしているファイルのフォーマットは、プロトコルのドメインに依存します。 最初のフィールドはドメイン名で、2 番目のフィールドは ソケットの型 (stream や dgramなど)、3 番目はソケットフラグのフィールド (16 進数) です。残りのフィールドはプロトコルに依存します。tcp の場合は、 tcpcb のアドレスですし、udp の場合は inpcb (ソケット pcb) のアドレスです。 UNIX ドメインソケットの場合はソケット pcb のアドレスと (もし接続すれば) 接続先 pcb のアドレスです。それ以外の場合はプロトコル番号とソケット自身 のアドレスが表示されます。 .Xr netstat 1 と重複しない範囲で、詳しく分析するのに十分な情報を表示しようとします。 .Pp たとえば、上で述べたアドレスは .Dq Li netstat -A コマンドで表示される tcp, udp, UNIX ドメインのそれぞれのアドレスです。ただし、パイプはソケットを用いて 実装されているので、パイプは接続先の UNIX ドメインストリームソケットとして 現れることに注意してください。単方向 UNIX ドメインソケットは、向き を持った矢印 (``<-'' か ``->'') として表示され、双方向 (全二重) UNIX ドメイン は二重矢印 (``<->'') として表示されます。 .Sh バグ .Nm はシステムのスナップショットをとるので、表示される情報は ほんのわずかな間しか正しくありません。 .Sh 関連項目 .Xr netstat 1 , .Xr nfsstat 1 , .Xr ps 1 , .Xr sockstat 1 , .Xr systat 1 , .Xr tcp 4 , .Xr unix 4 , .Xr iostat 8 , .Xr pstat 8 , .Xr vmstat 8 .Sh 歴史 .Nm コマンドは .Bx 4.3 tahoe から登場しました。 diff --git a/ja_JP.eucJP/man/man1/hostname.1 b/ja_JP.eucJP/man/man1/hostname.1 index 0be25aab99..a9f519f3b2 100644 --- a/ja_JP.eucJP/man/man1/hostname.1 +++ b/ja_JP.eucJP/man/man1/hostname.1 @@ -1,71 +1,71 @@ .\" Copyright (c) 1983, 1988, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)hostname.1 8.2 (Berkeley) 4/28/95 -.\" %FreeBSD: src/bin/hostname/hostname.1,v 1.10.2.3 2001/08/16 10:01:05 ru Exp % -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/hostname.1,v 1.11 2001/07/29 05:14:50 horikawa Exp $ +.\" %FreeBSD: src/bin/hostname/hostname.1,v 1.10.2.4 2002/04/22 22:20:29 keramida Exp % +.\" $FreeBSD$ .\" .Dd April 28, 1995 .Dt HOSTNAME 1 .Os .Sh 名称 .Nm hostname .Nd 現在のホスト名の表示、設定 .Sh 書式 .Nm .Op Fl s .Op Ar name-of-host .Sh 解説 .Nm -は、現在のホストの名前を表示します。 +ユーティリティは、現在のホストの名前を表示します。 スーパユーザは、引数を与えることでホスト名の設定をすることもできます。 これは通常、ブート時にネットワークの初期化スクリプトである .Pa /etc/rc.network の中で行なわれます。 このスクリプトは、 .Pa /etc/rc.conf 中の .Va hostname 変数を使用します。 .Pp オプションとしては、以下のものがあります。 .Bl -tag -width flag .It Fl s 名前からドメイン情報を取り除いて表示します。 .El .Sh 関連項目 .Xr gethostname 3 , .Xr rc.conf 5 .Sh 歴史 .Nm ユーティリティは .Bx 4.2 から登場しています。 diff --git a/ja_JP.eucJP/man/man1/ls.1 b/ja_JP.eucJP/man/man1/ls.1 index 10c5b88af4..668dcc2161 100644 --- a/ja_JP.eucJP/man/man1/ls.1 +++ b/ja_JP.eucJP/man/man1/ls.1 @@ -1,574 +1,578 @@ .\" Copyright (c) 1980, 1990, 1991, 1993, 1994 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgment: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)ls.1 8.7 (Berkeley) 7/29/94 -.\" %FreeBSD: src/bin/ls/ls.1,v 1.33.2.15 2002/03/28 01:28:14 joe Exp % +.\" %FreeBSD: src/bin/ls/ls.1,v 1.33.2.16 2002/04/22 22:23:23 keramida Exp % .\" .\" $FreeBSD$ .Dd July 29, 1994 .Dt LS 1 .Os .Sh 名称 .Nm ls .Nd ディレクトリの内容のリストを表示する .Sh 書式 .Nm .Op Fl ABCFGHLPRTWabcdfghiklnoqrstuw1 .Op Ar .Sh 解説 .Nm は .Ar file で指定されたファイル名およびオプションの指定にしたがって、 ファイルに関する各種の情報を表示します。なお、 .Ar file としてディレクトリが指定された場合は、そのディレクトリ配下のファイル に関する情報を表示します。 .Pp .Ar file が指定されなかった場合は、カレントディレクトリのファイルを表示します。 表示はファイル名のアルファベット順にソートされます。ただし、 .Ar file としてディレクトリファイルとそれ以外のファイルを混在して指定した 場合は、ディレクトリ以外のファイルが先に表示され、その後 ディレクトリ配下のファイルが表示されます。 .Pp オプションとしては、以下のものがあります。 .Bl -tag -width indent .It Fl A .Pa \&. と .Pa \&.. を除く全てのエントリを表示します。スーパユーザの場合は、通常 このオプションがセットされています。 .It Fl B ファイル名中の非印字可能文字 ( .Xr ctype 3 と現在のロケール設定で定義されます) を強制的に .Li \e Ns Va xxx の形式で表示します。 .Va xxx は文字の数値であり 8 進数です。 .It Fl C マルチカラム形式で出力します。端末への出力の場合は、 これがデフォルトになります。 .It Fl F それぞれのパス名の最後に、ディレクトリならばスラッシュ .Pq Ql / 、実行可能ファイルならばアスタリスク .Pq Ql * 、シンボリックリンクならばアットマーク .Pq Ql @ 、ソケットファイルならば等号 .Pq Ql = 、 .Tn FIFO ならば縦棒 .Pq Ql \&| をつけて表示します。 .It Fl G カラー化出力を有効にします。 本オプションは、環境変数 .Ev CLICOLOR を定義することと同等です (後述)。 .It Fl H コマンドラインのシンボリックリンクを追跡します。 .Fl F , .Fl d , .Fl l オプションのいずれも指定されなかった場合、 このオプションが仮定されます。 .It Fl L 引数がシンボリックリンクファイルの場合、リンクファイル自体ではなく、 リンク先のファイルやディレクトリを表示します。 このオプションは .Fl P オプションを打ち消します。 .It Fl P 引数がシンボリックリンクの場合、リンクが参照しているオブジェクトではなく リンク自身を表示します。 このオプションは .Fl H , .Fl L オプションを打ち消します。 .It Fl R サブディレクトリを再帰的に表示します。 .It Fl T +.Fl l +オプション (小文字の +.Dq エル (L) ) +と共に使用された場合、 ファイルの日付と時間に関する詳細情報 (月・日・時・分・秒・年) を表示します。 .It Fl W ディレクトリ走査時にホワイトアウトも表示します。 .It Fl a ドット .Pq Pa \&. で始まるファイルも含めて表示します。 .It Fl b .Fl B と同様ですが、可能であれば .Tn C のエスケープコードを使用します。 .It Fl c ファイルソートや時刻出力の際、ファイルステータスの最終変更日付を使用します。 .It Fl d 引数がディレクトリの場合、ディレクトリそのものの情報について表示します (再帰的に表示しません)。 .It Fl f ソートせずに表示します .It Fl g このオプションは、 .Bx 4.3 との互換性のためにだけ利用すべきです。 これは、 ロングフォーマットオプション .Pq Fl l を使ってグループの名前を表示したい時に使います。 .It Fl h .Fl l オプションとともに使用した場合、次の単位サフィックスを使用します: バイト、キロバイト、メガバイト、ギガバイト、テラバイト、ペタバイト。 使用される大きさは基数 2 であり、数値の桁数が 3 以下になります。 .It Fl i 各ファイルについて、inode 番号を表示します。 .It Fl k .Fl s オプションとともに使用し、ファイルサイズを ブロック単位ではなく K バイト単位で表示します。 このオプションは環境変数 .Ev BLOCKSIZE に優先します。 .It Fl l ( .Dq エル (L) の小文字)。 ファイルの詳細情報をロングフォーマットで表示します (下記参照)。 端末に出力している場合、ロングフォーマットの前の行に、全ファイル のサイズの合計値を表示します。 .It Fl n 長い .Pq Fl l 出力において、 ユーザとグループを名前に変換せずに、 ユーザとグループの ID を数値で表示します。 .It Fl o .Pq Fl l オプションによる詳細情報に、ファイルフラグも含めて表示します。 .It Fl q ファイル名に表示できない文字が使われていたとき、 .Ql \&? として表示します。 端末に表示するときは、デフォルトでこの指定になります。 .It Fl r 辞書式順序で逆順または時刻の古い順にソートします。 .It Fl s 各ファイルがファイルシステム上で実際に占有している ブロック数 (512 バイト単位) を表示します。 ブロックの一部だけ占有しているものも整数値に切り上げられます。 端末に表示するときは、表示の先頭行に、全ファイルのサイズの合計値 を表示します。 環境変数 .Ev BLOCKSIZE は単位サイズ 512 バイトに優先します。 .It Fl t ファイルをアルファベット順に表示する前に、ファイルの最終修正日時の順 (新しいものほど先にくる) にソートします。 .It Fl u .Pq Fl t オプションや .Pq Fl l オプションで、ファイルの最終修正日時の代わりに、ファイルの最終アクセス日時を 使用します。 .It Fl w 非印字可能文字をそのまま表示するよう強制します。 出力先が端末でない場合、これがデフォルトです。 .It Fl 1 (数字の .Dq 1 )。 1 行につき 1 エントリの形式で表示します。 端末への出力でない場合には、これがデフォルトです。 .El .Pp .Fl 1 , .Fl C , .Fl l オプションは、互いに他を上書きします。最後に指定されたオプションが有効と なります。 .Pp .Fl c と .Fl u オプションは、互いに他を上書きします。最後に指定されたオプションが有効と なります。 .Pp .Fl B , .Fl b , .Fl w , .Fl q オプションは互いに優先し合う関係にあります。 最後に指定されたものが印字不可文字の書式を決定します。 .Pp .Fl H , .Fl L , .Fl P オプションは互いに優先し合う関係にあります(部分的もしくは全体的)。 指定された順序で適用されます。 .Pp デフォルトでは .Nm は標準出力に 1 行 1 エントリずつ表示します。 ただし、出力先が端末である場合および .Fl C オプションが指定された場合は別です。 .Pp .Fl i , .Fl s , .Fl l オプションが指定された場合、関連するファイルの情報は 1 個以上の空白 をあけて表示されます。 .Ss ロングフォーマット .Fl l オプションがつけられた場合、それぞれのファイルに対して以下に示す情報が 表示されます: ファイルモード・ リンク数・所有者名・所有グループ名・ ファイルのバイト数・月の短縮形・最終更新が行なわれた際の日付・時・分・ パス名。 さらに、各ディレクトリに対して、 ディレクトリ内のファイル情報が表示される直前に、 ファイルサイズの合計値が 512 バイトブロック単位で表示されます。 .Pp ファイルの修正修正時刻が 6 ヶ月以上過去もしくは未来の場合、 最終修正年が時間と分のフィールドに表示されます。 .Pp 所有者または所有グループ名が不明の場合、 または .Fl n オプション指定時には、 ID 番号で表示されます。 .Pp ファイルがキャラクタ型もしくはブロック型の特殊ファイルである場合、 ファイルサイズフィールドには ファイルのメジャー番号とマイナー番号が表示されます。 ファイルがシンボリックリンクファイルである場合、 リンク先ファイルのパス名が .Dq Li -> によって表示されます。 .Pp .Fl l オプションのもとで表示されるファイルモードは、エントリタイプ、 所有者アクセス許可、所有グループアクセス許可などで成り立っています。 エントリタイプの文字はファイルのタイプを表しており、 各文字の意味は次のとおりです: .Pp .Bl -tag -width 4n -offset indent -compact .It Sy b ブロック型特殊ファイル .It Sy c キャラクタ型特殊ファイル .It Sy d ディレクトリ .It Sy l シンボリックリンクファイル .It Sy s ソケットファイル .It Sy p .Tn FIFO .It Sy \- 通常ファイル .El .Pp 次の 3 つのフィールドは、それぞれ 3 つの文字からなっています: 所有者に対するアクセス許可・ グループに属するユーザに対するアクセス許可・ 他のユーザに対するアクセス許可。 これらのフィールドはそれぞれ 3 つの文字からなっています: .Bl -enum -offset indent .It もし .Sy r ならば読みだし可能。もし .Sy \- ならば読みだし不能。 .It もし .Sy w ならば書き込み可能。もし .Sy \- ならば書き込み不能。 .It その他の場合: 以下のうち最初に該当するものが用いられる。 .Bl -tag -width 4n -offset indent .It Sy S 所有者に対するアクセス許可において、ファイルが実行可能ではなく、かつ、 実効ユーザ ID (set-user-ID) モードがセットされている場合。 所有グループに対するアクセス許可において、ファイルが実行可能ではなく、 かつ、実効グループ ID (set-group-ID) モードがセットされている場合。 .It Sy s 所有者に対するアクセス許可において、ファイルが実行可能で、かつ、 実効ユーザ ID モードがセットされている場合。 所有グループに対するアクセス許可の中で、ファイルが実行可能で、 かつ、実効グループ ID モードがセットされている場合。 .It Sy x ファイルが実効可能またはディレクトリが検索可能である場合。 .It Sy \- ファイルは、読み出し、書き込み、実行のいずれも許可されておらず、 実効ユーザ ID も実効グループ ID もスティッキービットも設定されていない場合 (以下参照)。 .El .Pp 次の2つは他のユーザに対するアクセス許可の 3 番目の文字に使用されます。 .Bl -tag -width 4n -offset indent .It Sy T スティッキービットがセットされている (モード .Li 1000 ) が、 実行不能あるいは検索不能である場合 ( .Xr chmod 1 または .Xr sticky 8 参照)。 .It Sy t スティッキービットがセットされており (モード .Li 1000 ) 、 かつ、検索可能または実行可能である場合 ( .Xr chmod 1 または .Xr sticky 8 参照)。 .El .El .Sh 使用例 .Nm の出力を大きさ順に並べる方法を示します ( .Nm がこのコマンドの別オプションを必要としない理由をも示します)。 .Pp .Dl "ls -l | sort -n +4" .Pp さらに、 .Xr sort 1 への .Fl r フラグを使用することにより、結果を大から小へ (逆順に) 並べられます。 .Sh 診断 .Ex -std .Sh 環境変数 以下の環境変数は .Nm の動作に影響を与えます: .Bl -tag -width ".Ev CLICOLOR_FORCE" .It Ev BLOCKSIZE ブロック数の表示を行う際、1 ブロックのサイズとして環境変数 .Ev BLOCKSIZE で指定された値が使用されます ( .Fl s オプション参照)。 .It Ev CLICOLOR \*[Ai] カラーシーケンスを使用し、ファイルタイプを区別します。 後述の .Ev LSCOLORS を参照してください。 .Fl F で前述したもの加え、更なる属性 (setuid ビット設定等) もまた表示されます。 カラー化は、適切な .Xr termcap 5 ケーパビリティを持つ端末タイプに依存します。 デフォルトの .Dq Li cons25 コンソールは、適切なケーパビリティを持っていますが、例えば .Xr xterm 1 でカラー表示したい場合には .Ev TERM 変数を .Dq Li xterm-color に設定する必要があります。 他の端末タイプも同様の修正が必要かもしれません。 出力が端末に向けられていない場合、カラー化は黙って無効化されます。 ただし、 .Ev CLICOLOR_FORCE 変数が定義されている場合は例外です。 .It Ev CLICOLOR_FORCE 出力が端末に向けられていない場合、通常、カラーシーケンスは無効化されます。 本フラグを設定することで、この動作を変更可能です。 .Ev TERM 変数は、カラー出力可能な端末を参照することが必要です。 そうなっていない場合、どのカラーシーケンスを使用すべきか決定できません。 .It Ev COLUMNS ターミナルのカラム幅を指定します。マルチカラム表示の際、 1 行あたりいくつのファイル名を表示できるかを算出するために参照されます ( .Fl C 参照)。 .It Ev LANG 長い .Fl l フォーマット出力における、日と月の順序を決定するために使用するロケールです。 詳細は .Xr environ 7 を参照してください。 .It Ev LSCOLORS 本変数の値は、 .Ev CLICOLOR によってカラー出力が有効であるときに、 どの色をどの属性に使用するかを指定します。 この文字列は書式 .Ar f Ns Ar b の結合であり、ここで .Ar f は前景色であり、 .Ar b は背景色です。 .Pp 色の指示は次の通りです: .Pp .Bl -tag -width 4n -offset indent -compact .It Sy a 黒 .It Sy b 赤 .It Sy c 緑 .It Sy d 茶 .It Sy e 青 .It Sy f マゼンタ .It Sy g シアン .It Sy h 明い灰 .It Sy A 太字の黒で、通常暗い灰に見えます .It Sy B 太字の赤 .It Sy C 太字の緑 .It Sy D 太字の茶で、通常黄色に見えます .It Sy E 太字の青 .It Sy F 太字のマゼンタ .It Sy G 太字のシアン .It Sy H 太字の明い灰で、明い白に見えます .It Sy x デフォルトの前景色と背景色 .El .Pp 以上が標準 \*[Ai] カラーです。 実際の表示は、端末の色の扱いに依存して異なるでしょう。 .Pp 属性の順番は次の通りです: .Pp .Bl -enum -offset indent -compact .It ディレクトリ .It シンボリックリンク .It ソケット .It パイプ .It 実行形式 .It ブロックスペシャル .It キャラクタスペシャル .It setuid ビットが設定された実行形式 .It setgid ビットが設定された実行形式 .It 他者 (others) が書き込み可能なディレクトリであり、 スティッキービット付き。 .It 他者 (others) が書き込み可能なディレクトリであり、 スティッキービット無し。 .El .Pp デフォルトは .Qq "exfxcxdxbxegedabagacad" であり、 通常のディレクトリは前景色青でデフォルト背景色、 setuid 付き実行形式は前景色黒で背景色赤等です。 .It Ev LS_COLWIDTHS この変数が設定されている場合、 コロン区切りのリストで各フィールドの最小幅を指定しているものとみなされます。 適切でなかったり不十分だったりする幅は無視されます (よって 0 を指定すると、フィールド幅が動的に決まります)。 すべてのフィールドの幅を変えられるわけではありません。 フィールドの順序は次の通りです: inode・ブロック数・リンク数・ユーザ名・グループ名・フラグ・ファイルサイズ・ ファイル名。 .It Ev TERM .Ev CLICOLOR の機能は、端末タイプのカラーケーパビリティが必要です。 .It Ev TZ 日時を表示するときに使われるタイムゾーンを指定します。 詳細は .Xr environ 7 を参照してください。 .El .Sh 互換性 .St -p1003.2 互換とするため、 ロングフォーマット形式の出力には所有グループ名フィールドが自動的に 含められます。 .Sh 関連項目 .Xr chflags 1 , .Xr chmod 1 , .Xr sort 1 , .Xr xterm 1 , .Xr termcap 5 , .Xr symlink 7 , .Xr sticky 8 .Sh 歴史 .Nm コマンドは .At v1 から登場しました。 .Sh 規格 .Nm -コマンドの機能は +ユーティリティの機能は .St -p1003.2 のスーパセットであると想定しています。 .Sh バグ 過去との互換性のために、多くのオプションの関係が複雑になっています。 diff --git a/ja_JP.eucJP/man/man1/m4.1 b/ja_JP.eucJP/man/man1/m4.1 index c78bb36944..9fd01ccf18 100644 --- a/ja_JP.eucJP/man/man1/m4.1 +++ b/ja_JP.eucJP/man/man1/m4.1 @@ -1,197 +1,227 @@ .\" -.\" @(#) %FreeBSD: src/usr.bin/m4/m4.1,v 1.10.2.2 2001/07/22 12:40:24 dd Exp % +.\" @(#) %FreeBSD: src/usr.bin/m4/m4.1,v 1.10.2.4 2002/04/26 04:14:55 jmallett Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/m4.1,v 1.10 2001/05/14 01:07:26 horikawa Exp $ +.\" $FreeBSD$ .\" .Dd January 26, 1993 .Dt M4 1 .Os .Sh 名称 .Nm m4 .Nd マクロ言語プロセッサ .Sh 書式 .Nm +.Op Fl s .Oo -.Fl D Ns Ar name Ns Op Ar =value +.Fl D Ar name Ns Op Ar =value .Oc -.Op Fl U Ns Ar name -.Op Ar filename -\|.\|.\|. +.Op Fl U Ar name +.Op Ar .Sh 解説 .Nm ユーティリティは、さまざまな言語 (たとえば C, ratfor, fortran, lex, yacc など) のフロントエンドとして 利用できるマクロプロセッサです。 引数で指定されたファイルが指定された順に処理されます。 ファイルが指定されていないか、ファイル名が \`-\' なら 標準入力が読まれます。処理されたテキストは標準出力へ送られます。 .Pp マクロの呼出しは name(argument1[, argument2, ...,] argumentN) の 形式を取っています。 .Pp マクロ名とそれに続く開き括弧 `(' との間にはスペースがあってはいけません。 もしマクロ名の直後に開き括弧が続いていなければ引数なしのマクロ呼出しとして 処理されます。 .Pp マクロ名として先頭はアルファベットまたはアンダースコアが、2 文字目以降は 英数字またはアンダースコアが使えます。 よって正しいマクロ名にマッチする正規表現は [a-zA-Z_][a-zA-Z0-9_]* となります。 .Pp マクロの引数のうちで、先頭のクォートされていない空白、タブ、 改行文字は無視されます。 文字列をクォートするためには、左、および右シングルクォートを使用して ください (例: ` this is a string with a leading space')。 組み込みマクロ changequote を使ってクォート文字を変更することができます。 .Pp オプションは以下の通りです: .Bl -tag -width "-Dname[=value]xxx" -.It Fl D Ns Ar name Ns Oo +.It Fl s +.Xr cpp 1 +用に、 +.Em #line +ディレクティブを出力します。 +.It Fl D Ar name Ns Oo .Ar =value .Oc シンボル .Ar name の値を value (無指定時は NULL) と定義します。 -.It Fl "U" Ns Ar "name" +.It Fl "U" Ar "name" シンボル .Ar name を未定義にします。 .El .Sh 文法 .Nm には以下に示す組み込みマクロが実装されています。 これらのマクロは再定義可能であり、その場合には元の定義は失われます。 特に記述のない限り戻り値は NULL です。 .Bl -tag -width changequotexxx .It changecom コメントの開始文字列と終了文字列を変更します。 デフォルトでは、ポンド記号 `#' と改行文字です。 引数を指定しなかった場合はコメント機能がオフになります。 設定できる文字列の長さは最大で 5 文字です。 .It changequote 第 1、第 2 引数をクォートシンボルとして定義します。 引数の最初の文字のみ使用されることに注意してください。 引数が与えられなかった場合にはデフォルトの左右シングルクォートに 設定されます。 .It decr 引数の値を 1 だけ減少させます。 引数は正しく数値を表現する文字列でなければなりません。 .It define 第 1 引数で指定した名前の新しいマクロを定義します。 定義内容は第 2 引数で与えます。 定義中での $n (n は 0 から 9 まで) は それぞれそのマクロに与えられる 第 n 引数に置換されます。$0 はマクロ名そのものです。 指定されなかった引数は NULL 文字列に置換されます。 また $# は引数の数を表し、$* はコンマで区切られた全引数になります。 $@ は $* と同様ですが、更なる置換が行われないように全部の引数が クォートされます。 .It defn 各引数で指定されたマクロの定義内容をクォートして返します。 これはマクロ定義の名称変更 (組み込みマクロであっても) に利用できます。 .It divert .Nm には 10 本の出力キューが用意されています (0 から 9 までの番号がついています)。 処理の最後に、全てのキューは番号順に連結されて最終的な出力を 生成するようになっています。 初期状態では出力キューは 0 番に設定されています。 divert マクロを使って新しい出力キューを選ぶことが出来ます (divert に不正な引数を与えると出力が破棄されてしまいます)。 .It divnum 現在の出力キューの番号を返します。 .It dnl 改行文字を含めた行末までの入力文字を破棄します。 .It dumpdef 引数で指定した項目に関して、その名前と定義を出力します。 引数が与えられなかった場合は全てのマクロについて出力します。 .It errprint 第 1 引数を標準エラー出力ストリームへ出力します。 .It eval 第 1 引数を計算式とみなして 32-bit 幅の算術演算を用いて計算します。 演算子としては標準の C で用いられるもの、すなわち 3 項、 算術、論理、シフト、関係、ビットの各演算子、および括弧が 利用可能です。 また数値も C と同様に 8 進、10 進、16 進で記述できます。 第 2 引数で (もしあれば) 演算結果の基数を指定でき、 第 3 引数で (もしあれば) 演算結果の最小桁数を指定できます。 .It expr eval の別名です。 .It ifdef 第 1 引数で指定した名前のマクロが定義されていれば第 2 引数を返し、 定義されていなければ第 3 引数を返します。 第 3 引数が省略されていた場合は、その値は NULL になります。 ちなみに `unix' という単語があらかじめ定義されています。 .It ifelse 第 1 引数が第 2 引数とマッチしたら第 3 引数を返します。 マッチしなかった場合、その 3 個の引数は捨てられて次の 3 引数を 用いて同様の検査を繰り返します。 この処理は引数がなくなるか あるいは 1 つだけ残るまで繰り返され、 どれにもマッチしなかった場合には その最後に残った引数または NULL (引数がなくなった場合) が返されます。 .It include 第 1 引数で指定されたファイルの内容を返します。 ファイルが読み込めなかった場合にはエラーメッセージを出力して処理を 中断します。 .It incr 引数を 1 だけ増加させます。 引数は正しく数値を表現する文字列でなければいけません。 .It index 第 2 引数が、第 1 引数の中で、何文字目に出現するかを返します (たとえば index(the quick brown fox jumped, fox) では 16 が返ります)。 第 2 引数が第 1 引数の中に含まれていなかった場合には -1 を返します。 .It len 第 1 引数の文字数を返します。余分な引数は無視されます。 .It m4exit 第 1 引数 (指定されなかった場合は 0) を終了コードとして即座に終了します。 .It m4wrap 入力が最後の EOF に達したときに、どのような動作を行うかを設定します。 一般には種々の後始末を行うマクロを設定します (たとえば、m4wrap("cleanup(tempfile)") とすると他の全ての処理が終了した 後に cleanup マクロが呼び出されます)。 .It maketemp 第 1 引数の中の文字列 XXXXX を現在のプロセス ID に置換します。 その他の部分はそのままです。 これはユニークなテンポラリファイル名の生成に利用できます。 .It paste 第 1 引数で指定されたファイルの内容をマクロ処理を一切行わずに include します。 もしファイルが読み込めない場合にはエラーメッセージを出力して処理を 中断します。 .It popdef 各引数へ pushdef されている定義を戻します。 .It pushdef define と同様の引数をとってマクロを定義しますが元の定義をスタックへ 保存しておきます。 保存された定義は後で popdef で戻すことができます。 .It shift 第 1 引数を除いた全ての引数を返します。 残りの引数はクォートされてコンマで区切られます。 クォートすることによって以降の処理で置換が行われないようにしています。 .It sinclude エラーが起きても無視される点を除いて include と同じです。 .It spaste エラーが起きても無視される点を除いて paste と同じです。 .It substr 第 1 引数の文字列のうちの、第 2 引数で指定されるオフセットから始まり 第 3 引数で指定される文字数の範囲の部分文字列を返します。 第 3 引数が省略された場合は残りの文字列全てを返します。 .It syscmd 第 1 引数をシェルに渡します。戻り値はありません。 .It sysval 最後に実行した syscmd の戻り値を返します。 .It translit 第 1 引数の中の文字を、第 2 引数で指定された文字集合から第 3 引数で 指定された文字集合へ書き直します。ただし .Xr tr 1 式の省略指定を用いることはできません。 .It undefine 第 1 引数で指定されたマクロを未定義にします。 .It undivert 指定された出力キュー (引数がない場合は全てのキュー) の内容を掃き出します。 .It unix OS プラットフォームを調べるために予め定義されているマクロです。 .El +.Sh 診断 +.Ex -std +.Pp +終了ステータスは、入力ファイルの +.Em m4exit +マクロを使用して指定可能です。 +.Sh 関連項目 +.Xr cpp 1 +.Sh 規格 +.Nm +ユーティリティは、未実装の +.Em traceon +および +.Em traceoff +の組み込みマクロを除き、 +.St -p1003.1-2001 +仕様互換です +.Pp +.Em expr , +.Em paste , +.Em spaste , +.Em unix +の組み込みマクロは、標準を拡張したものです。 .Sh 作者 .An Ozan Yigit Aq oz@sis.yorku.ca および .An Richard A. O'Keefe Aq ok@goanna.cs.rmit.OZ.AU +.Sh バグ +トレーシングマクロは実装されていません。 diff --git a/ja_JP.eucJP/man/man1/mkdir.1 b/ja_JP.eucJP/man/man1/mkdir.1 index 88735d4023..8440870a1c 100644 --- a/ja_JP.eucJP/man/man1/mkdir.1 +++ b/ja_JP.eucJP/man/man1/mkdir.1 @@ -1,109 +1,109 @@ .\" Copyright (c) 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)mkdir.1 8.2 (Berkeley) 1/25/94 -.\" %FreeBSD: src/bin/mkdir/mkdir.1,v 1.12.2.3 2001/08/16 10:01:06 ru Exp % +.\" %FreeBSD: src/bin/mkdir/mkdir.1,v 1.12.2.4 2002/04/22 22:24:24 keramida Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/mkdir.1,v 1.12 2001/08/17 06:18:09 horikawa Exp $ +.\" $FreeBSD$ .Dd January 25, 1994 .Dt MKDIR 1 .Os .Sh 名称 .Nm mkdir .Nd ディレクトリの作成 .Sh 書式 .Nm .Op Fl pv .Op Fl m Ar mode .Ar directory_name ... .Sh 解説 .Nm -は、 +ユーティリティは、 オペランドで指定されたディレクトリを作成します。 作成する順番は指定された順番です。 作成されるディレクトリのパーミッションは、 .Li rwxrwxrwx (\&0777) に .Xr umask 2 の修正を加えたものです。 .Pp オプションとしては以下のものがあります: .Pp .Bl -tag -width indent .It Fl m Ar mode 作成されるディレクトリのパーミッションを指定します。 .Ar mode の書式は .Xr chmod 1 コマンドと同じです。シンボリック形式で指定する場合、 .Dq + および .Dq - は、最初のパーミッションが .Dq a=rwx であるものとして解釈されます。 .It Fl p 必要に応じて途中のディレクトリを作成します。 このオプションが指定されていない場合には、 .Ar directory_name で指定するパスの途中のディレクトリは既に存在している必要があります。 また、本オプションを指定時には、 オペランドとして指定したディレクトリが既に存在しても、エラーは報告されません。 途中に作成されるディレクトリのパーミッションは、 .Li rwxrwxrwx (\&0777) に現在の umask の修正を加えたものに、 所有者に対する書き込みと検索パーミッションが加わった値となります。 .It Fl v ディレクトリ作成時に冗長になり、作成時にこれを表示します。 .El .Pp ユーザは親ディレクトリに対する 書き込みパーミッションを持っている必要があります。 .Sh 診断 .Ex -std .Sh 関連項目 .Xr rmdir 1 .Sh 互換性 .Fl v オプションは非標準であり、スクリプト中での使用は非推奨です。 .Sh 規格 .Nm ユーティリティは .St -p1003.2 互換です。 .Sh 歴史 .Nm コマンドは .At v1 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/pr.1 b/ja_JP.eucJP/man/man1/pr.1 index f92cb1ebe3..4f80060d93 100644 --- a/ja_JP.eucJP/man/man1/pr.1 +++ b/ja_JP.eucJP/man/man1/pr.1 @@ -1,349 +1,357 @@ .\" Copyright (c) 1991 Keith Muller. .\" Copyright (c) 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Keith Muller of the University of California, San Diego. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)pr.1 8.3 (Berkeley) 4/18/94 -.\" %FreeBSD: src/usr.bin/pr/pr.1,v 1.9.2.7 2001/09/27 17:59:15 wollman Exp % +.\" %FreeBSD: src/usr.bin/pr/pr.1,v 1.9.2.8 2002/04/15 17:16:57 jmallett Exp % .\" .\" $FreeBSD$ .\" .Dd April 18, 1994 .Dt PR 1 .Os .Sh 名称 .Nm pr .Nd ファイルの表示 .Sh 書式 .Nm .Bk -words .Op Ar \&+page .Ek .Bk -words .Op Fl Ar column .Ek -.Op Fl adFmrt +.Op Fl adFfmprt .Bk -words .Oo .Op Fl e .Op Ar char .Op Ar gap .Oc .Ek .Bk -words .Op Fl L Ar locale .Ek .Bk -words .Op Fl h Ar header .Ek .Bk -words .Oo .Op Fl i .Op Ar char .Op Ar gap .Oc .Ek .Bk -words .Op Fl l Ar lines .Ek .Bk -words .Op Fl o Ar offset .Ek .Bk -words .Oo .Op Fl s .Op Ar char .Oc .Ek .Bk -words .Oo .Op Fl n .Op Ar char .Op Ar width .Oc .Ek .Bk -words .Op Fl w Ar width .Ek .Op - .Op Ar .Sh 解説 .Nm ユーティリティは、テキストファイルをページ単位に整形し、 出力します。複数の入力ファイルが指定された場合はそれぞれについて読み、 整形し、標準出力に書き出します。デフォルトでは、入力ファイルは 1 ページ 66 行に分割され、各ページに以下のものがつきます。 .Bl -bullet .It ページ番号、日付、時間、ファイルのパス名のついた 5 行のヘッダ .It 空行からなる 5 行のトレーラ .El .Pp 標準出力が端末の場合、 .Nm が処理を完了するまで、診断メッセージを出しません. .Pp マルチカラム出力が指定された場合、テキストの各列は同一の幅で出力されます。 デフォルトでテキストの各列は 1 つ以上の .Em で分割されます。入力行がテキストの幅からはみ出るときは切り捨てられます。 単一列の出力の場合は切り捨てられません。 .Sh オプション 以下のオプションの記述において、 column, lines, offset, page, width は 10 進の正の整数で、gap は 10 進の負でない整数です。 .Bl -tag -width 4n .It Ar \&+page 入力を整形したあと、ページ番号 .Ar page から出力をはじめます。 .It Fl Ar column .Ar column 列で出力します (デフォルトは 1)。テキストは 入力ファイルから読んだ順に、各列に垂直に書かれます。このオプションを 指定すると、 .Fl e と .Fl i オプションも指定されたものとみなされます。このオプションは、 .Fl m と一緒に使用することはできません。 .Fl t と一緒に使用すると、出力の表示行数が最小になります (もっと一般的に、追加の整形無しにテキストファイルをカラム化して整形するには、 .Xr rs 1 ユーティリティを参照してください)。 .It Fl a このオプションは .Fl column オプションを変更し、 同一ページで行毎に、順次複数列の出力を行います (例えば, 列数が 2 の場合、最初の入力行を第 1 列先頭、2 番目の入力行を 第 2 列先頭、3 番目の出力を第一列第 2 行にという具合です)。 このオプションを使うには .Fl column オプションの指定が必要です。 .It Fl d ダブルスペースで出力します。入力に .Em を見つけると、続けて余分な .Em を一つ出力します。 .It Fl e Xo .Op Ar char Ns .Op Ar gap .Xc 入力中の各 .Em を、式 .Ar n*gap+1 で表される位置のうちの現在位置の次に大きい列位置まで展開します。 この .Em n は 0 より大きい整数です。 .Ar gap が 0 もしくは省略された場合、デフォルトとして 8 が指定されたことになります。 入力中のすべての .Em キャラクタは、適切な個数の .Em に展開されます。 数字でない文字 .Ar char が指定された場合、この文字がその入力のタブキャラクタとして使われます。 .It Fl F デフォルトの .Em キャラクタシーケンスの代わりに、 改ページに .Em キャラクタを使います。 +.It Fl f +.Fl F +と同じですが、標準出力が端末の場合には最初のページを開始する前に +一時停止します。 .It Fl h Ar header ヘッダ行内のファイル名を、文字列 .Ar header に置き換えます。 .It Fl i Xo .Op Ar char Ns .Op Ar gap .Xc 出力において、2 個以上の空白が、 式 .Ar gap+1 や .Ar 2*gap+1 などの列まで連続していた場合に、 この複数の .Em を .Em で置き換えます。 .Ar gap が 0 もしくは省略された場合、デフォルトとしてタブ位置が 8 列ごとと指定された ことになります。 数字でない文字 .Ar char が指定された場合、それがその出力のタブキャラクタとして使われます。 .It Fl L Ar locale 環境変数のかわりに、引数として指定される .Ar locale を使用します。 ロケールをデフォルト設定にリセットするには、"C" を使用します。 .It Fl l Ar lines ページ長をデフォルトの 66 行のかわりに .Ar lines 行にします。 .Ar lines がヘッダとトレーラの行数の和より大きくないときには、 .Fl t オプションをつけたときのように、ヘッダとトレーラを出力しません。 .It Fl m 複数のファイルの中身をマージします。引数で指定した各ファイルから 読み込まれた一つの行は、同一の幅で並べて書かれます。テキストの列の数は、 引数で指定したファイルのうちのオープンに成功したものの数になります。 マージするファイルの最大値は、ページ幅とプロセスがオープンできる ファイルの最大数に依存します。このオプションを指定すると、 .Fl e と .Fl i オプションも指定されたものとみなされます。 .It Fl n Xo .Op Ar char Ns .Op Ar width .Xc .Ar width 桁の 行番号をつけます。 .Ar width のデフォルト値は 5 です。 各列の .Ar width で指定された位置、 または .Fl m による出力の各行に、行番号がつきます。 .Ar char (数字でない文字)が与えられた場合は、 行番号とテキストの間をその文字で区切ります。 .Ar char のデフォルトは .Em です。 .Ar width より長い行番号は 切り詰められます。 .It Fl o Ar offset 出力の各行の先頭には .Ar offset 個の .Em がつきます。 .Fl o オプションの指定がなければ、デフォルトは 0 になります。 このスペースは出力の幅に追加されます。 +.It Fl p +標準出力が端末の場合には、各ページの前に一時停止します。 +.Nm +は警告文字を標準エラーに書き込み、復改が端末から読み込まれるまで待ちます。 .It Fl r ファイルのオープンに失敗したときのエラーメッセージを出力しません。 .It Fl s Ar char テキストの各列間を、複数個の .Em の代わりに単一の文字 .Ar char で分割します ( .Ar char のデフォルトは .Em です)。 .It Fl t 通常ならば各ページに付加される 5 行の識別ヘッダと 5 行のトレーラを どちらも表示しなくなります。各ファイルの最終行が出力されたあと、 ページの最後までの空白を作らずに、そこで動作をやめてしまいます。 .It Fl w Ar width マルチカラム出力のために、1 行の幅を .Ar width 文字分にします。 .Fl w オプションも .Fl s オプションも指定されなかった場合、デフォルト幅は 72 です。 .Fl w オプションが指定されずに .Fl s オプションが指定された場合は、デフォルト幅は 512 になります。 .It Ar file 表示するファイルのパス名です。 .Ar file が指定されなかった場合、もしくは .Ar file が .Sq Fl だった場合は、標準入力が利用されます。 標準入力が使用されるのは、 .Ar file が指定されなかった場合、もしくは .Ar file が .Sq Fl だった場合のみです。 .El .Pp .Fl s オプションでは、オプション文字 (`s') と その引数 ( .Ar char ) との間を空けることは許されていません。また、 .Fl e , .Fl i , .Fl n は両方の引数が必要で、オプション文字と分割できません。 .Sh エラー .Nm が端末に出力中に割り込みを受け取ると、 保存していたエラーメッセージを スクリーン上に全てフラッシュしてから終了します。 .Pp .Nm ユーティリティは, 正常終了時には 0 を、 エラー終了時には 1 を返します。 .Pp エラーメッセージは、(出力がリダイレクトされている場合は)整形作業中に、 (端末に出力されている場合は)整形に成功したすべてのファイル出力が完了した後、 標準エラー出力に表示されます。 .Sh 関連項目 .Xr cat 1 , .Xr more 1 , .Xr rs 1 .Sh 規格 .Nm ユーティリティは -.St -p1003.2 +.St -p1003.1-2001 に準拠しています。 .Sh 歴史 .Nm コマンドは .At v1 に登場しました。 diff --git a/ja_JP.eucJP/man/man1/rcp.1 b/ja_JP.eucJP/man/man1/rcp.1 index 875d80407a..838a954813 100644 --- a/ja_JP.eucJP/man/man1/rcp.1 +++ b/ja_JP.eucJP/man/man1/rcp.1 @@ -1,156 +1,157 @@ .\" Copyright (c) 1983, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)rcp.1 8.1 (Berkeley) 5/31/93 -.\" %FreeBSD: src/bin/rcp/rcp.1,v 1.9.2.4 2001/08/16 10:01:07 ru Exp % -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/rcp.1,v 1.14 2001/05/14 01:07:27 horikawa Exp $ +.\" %FreeBSD: src/bin/rcp/rcp.1,v 1.9.2.5 2002/04/22 22:25:19 keramida Exp % +.\" $FreeBSD$ .\" .Dd May 31, 1993 .Dt RCP 1 .Os .Sh 名称 .Nm rcp .Nd リモートファイルのコピー .Sh 書式 .Nm .Op Fl Kpx .Op Fl k Ar realm .Ar file1 file2 .Nm .Op Fl Kprx .Op Fl k Ar realm .Ar .Ar directory .Sh 解説 .Nm -は、ネットワークでつながれた複数のマシンの間でコピーをするプログラムです。 +ユーティリティは、 +ネットワークでつながれた複数のマシンの間でコピーをするプログラムです。 .Ar file および .Ar directory として .Dq rname@rhost:path の形式で指定する ことにより、それがリモートマシン上のファイルであるとみなされます。 ファイル指定に `:' が含まれていないか、含まれていても `/' の後にある 場合は、ローカルマシンのファイルとみなされます。 .Pp 次のオプションを利用可能です: .Bl -tag -width flag .It Fl K 全ての Kerberos による認証を無効にします。 .It Fl k .Xr krb_realmofhost 3 で決定されるリモートホストの realm のかわりに、 .Ar realm で指定したリモートホストの チケットを得るようにします。 .It Fl p .Ar umask を無視し、転送元のファイルの修正日付とアクセスモードを維持したままコピー します。デフォルトでは、転送先に同じファイル名のファイルがすでに 存在していれば、そのファイルのモードと所有者が引き継がれ、もしファイルが 存在していなければ、転送元のファイルのモードに転送先のマシンで使われている .Xr umask 2 のマスクを施したアクセスモードになります。 .It Fl r 転送元としてディレクトリが指定された場合、ディレクトリ下の各ファイルも 再帰的にコピーします。この場合、転送先にはディレクトリを指定しなければ なりません。 .It Fl x .Nm で送るすべてのデータを .Tn DES 暗号化します。これによりレスポンスタイムと .Tn CPU の利用率に影響が生じますが、セキュリティは向上します。 .El .Pp .Ar file がフルパスでなかった場合は、リモートマシン .Ar rhost 上のユーザ .Ar ruser のログインディレクトリ (リモートユーザ名が指定されていなければ、現在のユーザ名の ログインディレクトリ) からの相対パスと解釈します。 リモートマシン上のファイル指定にワイルドカードなどのメタキャラクタを 含める場合は、ローカルマシンのシェルによりワイルドカードが 展開されないよう \e, ", \(aa のいずれかでクォートする必要があります。 .Pp .Nm -では +ユーティリティでは .Xr rsh 1 を使用するため同様のユーザの認証が必要とされ、パスワードを要求する プロンプトを出しません。 .Pp .Nm -では転送元、転送先ともにリモートマシンを指定し、 +ユーティリティでは転送元、転送先ともにリモートマシンを指定し、 第三者によるリモートマシン間での ファイルのコピーを行うこともできます。 .Sh 関連ファイル .Bl -tag -width /etc/auth.conf -compact .It Pa /etc/auth.conf 認証サービスの設定 .El .Sh 関連項目 .Xr cp 1 , .Xr ftp 1 , .Xr rlogin 1 , .Xr rsh 1 , .Xr auth.conf 5 , .Xr hosts.equiv 5 .Sh 歴史 .Nm コマンドは .Bx 4.2 から登場しました。 このバージョンの .Nm は、 .Bx 4.3 Reno において Kerberos を組み込んで再実装されました。 .Sh バグ ディレクトリが指定されるべき場所にファイルが指定されている場合を検出で きるとは限りません。 .Pp リモートホストの .Pa \&.login , .Pa \&.profile , .Pa \&.cshrc のいずれかに含まれるコマンドの出力によって混乱することがあります。 .Pp 転送先のマシンにバージョン .Bx 4.2 の .Nm が動作している場合、 .Dq rhost.rname のように転送先のユーザ名とホスト 名を指定しなければなりません。 diff --git a/ja_JP.eucJP/man/man1/sed.1 b/ja_JP.eucJP/man/man1/sed.1 index 7696fca0b8..e0887800da 100644 --- a/ja_JP.eucJP/man/man1/sed.1 +++ b/ja_JP.eucJP/man/man1/sed.1 @@ -1,490 +1,490 @@ .\" Copyright (c) 1992, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)sed.1 8.2 (Berkeley) 12/30/93 -.\" %FreeBSD: src/usr.bin/sed/sed.1,v 1.9.2.6 2001/08/16 13:17:03 ru Exp % -.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/sed.1,v 1.16 2001/08/17 06:18:10 horikawa Exp $ +.\" %FreeBSD: src/usr.bin/sed/sed.1,v 1.9.2.7 2002/04/24 20:57:11 keramida Exp % +.\" $FreeBSD$ .\" .Dd December 30, 1993 .Dt SED 1 .Os .Sh 名称 .Nm sed .Nd ストリームエディタ .Sh 書式 .Nm .Op Fl Ean .Ar command .Op Ar .Nm .Op Fl Ean .Op Fl e Ar command .Op Fl f Ar command_file .Op Ar .Sh 解説 .Nm は、指定されたファイル、ファイルが指定されていないときは標準入力を読み込み、 指定されたコマンドリストに従って入力に変更を加え、変更結果を標準出力に書き 出します。 .Pp .Nm への第一引数として単一のコマンドを指定することができます。複数のコマンドを指定するときは、 .Fl e または .Fl f オプションで行います。どちらの場合でも、入力に対して指定されたコマンドを、 指定された順序で実行します。 .Pp オプションは以下のとおりです。 .Bl -tag -width indent .It Fl E 正規表現を、Basic Regular expression (BRE) ではなく、 拡張 (モダン) 正規表現として解釈します。 .Xr re_format 7 マニュアルページは、どちらの書式も完全に記述しています。 .It Fl a 通常、 .Dq w 関数の引数となるファイルは、処理に先立って空のファイルとして作成されます。 .Fl a オプションを指定することにより、 .Dq w 関数が入力に対して適用されるときまで、 ファイルの作成が遅延されます。 .It Fl e Ar command 編集コマンド .Ar command をコマンドリストに追加します。 .It Fl f Ar command_file ファイル .Ar command_file に記述されたコマンドをコマンドリストに追加します。 編集コマンドは 1 行ごとに記述します。 .It Fl n デフォルトでは、入力行は、すべてのコマンドを適用した後に標準出力に書 き出されます。 .Fl n オプションはこの動作を禁止し、明示的な出力コマンド ( .Dq p 等)が適用された入力のみを出力します。 .El .Pp .Nm のコマンドは以下の形式です。 .Pp .Dl [address[,address]]function[arguments] .Pp 最初の address の前と function の前に空白を置くことができます。 .Pp 通常 .Nm は、入力ファイルの各行を改行コードを含めずに .Em "パタンスペース" にコピーし( .Dq D 関数の後でパタンスペースになにか残っている場合を除きます)、 順にコピーされた内容に適応する address 指定を持つコマンドを 適用し、パタンスペースの内容を改行を付与して標準出力へ書き出し、パ タンスペースを消去するという動作を繰り返します。 .Pp いくつかの関数は、パタンスペースの一部または全部を保持できる .Em "ホールドスペース" を利用します。ホールドスペースの内容は、以降の処理に用いることができ ます。 .Sh "sed の address 表記" address の指定は必須ではありません。address は行番号 (複数の入力ファイ ルに対しては通し番号を用います)、入力の最後の行を示すドル記号 .Pq Dq $ 、コンテキストアドレス (区切り記号にはさまれた正規表現) のいずれかです。 .Pp address 指定を持たないコマンドは、すべてのパタンスペースを選択します。 .Pp 1つの address 指定を持つコマンドは、その address 指定にマッチする すべてのパタンスペースを選択します。 .Pp 2 つの address 指定を持つコマンドは、address の両端を含んだ範囲を 選択します。 この範囲は、1 つめの address にマッチしたパタンスペースで始まり、 その後に続く 2 つめの address にマッチしたパタンスペースで終わります。 2 つめの address が、1 つめの address で選択された行番号以下の 番号である場合、1 つめの address が指定する行のみ選択されます。 2 つめの address がコンテキストアドレスである場合、sed は、 1 つめの address にマッチしたパタンスペースを 2 つめの address に再びマッチさせようとはしません。sed は、選択された範囲の 次の行から、1 つめの address にマッチする行の検索を 再開します。 .Pp エクスクラメーション関数 .Pq Dq \&! を用いることにより、address で選択されていない範囲に編集コマンドを適用させることもできます。 .Sh "sed の正規表現" .Nm で使われる正規表現は、デフォルトでは Basic Regular expression (BRE .Xr re_format 7 を参照) です。 .Nm は、 .Fl E フラグを指定されると、拡張 (モダン) 正規表現を使用可能です。 正規表現に加え、 .Nm では以下の拡張がなされています。 .Pp .Bl -enum -compact .It コンテキストアドレスにおいて、バックスラッシュ .Pq Dq \e と改行以外の文字を正規表現の区 切りとして用いることできます。区切り文字の直前にバックスラッシュを置く ことで、区切り文字をリテラルに解釈させることができます。たとえば、コンテキ ストアドレス \exabc\exdefx において、区切り文字は .Dq x で、2つめの .Dq x は .Dq x という文字を表します。よって、正規表現は .Dq abcxdef と解釈されま す。 .Pp .It エスケープシーケンス \en は、パタンスペースに埋め込まれた改行にマッチします。 しかし、address と置換コマンド中にリテラルな改行を含めること はできません。 .El .Pp .Nm の正規表現には、デフォルト値の機能があります。 もし、正規表現が空、すなわち、区切りのみが指定されたなら、直前に用いられた正規表 現が用いられます。直前の正規表現とは、最後に使われた address または置換 コマンド中の正規表現です。最後とは実行時の順番であり、指定さ れたコマンドの並びとは異なります。たとえば、 .Dq /abc/s//XXX/ はパタン .Dq abc を .Dq XXX で置換します。 .Sh "sed の関数" 以下のコマンドの一覧では、指定可能な最大 address 数を、[0addr]、 [1addr]、[2addrs] と表記しています。これらは、それぞれ最大 0、1、2 個 の address を指定することができることを意味します。 .Pp .Em text 引数のテキストは複数行に渡ることができます。改行の直前にバックスラッシュ を置くことで、テキストに改行を含めることができます。その他のバックスラッ シュは取り除かれ、直後の文字がリテラルに解釈されます。 .Pp .Dq r と .Dq w 関数は、オプショナルなファイル名引数をとります。ファイル名は、 関数名のあとに空白を置いてから指定する必要があります。引数として指定され たファイルは、入力ファイルの処理を開始する前に作成(または、内容を消去)し ます。 .Pp .Dq b , .Dq r , .Dq s , .Dq t , .Dq w , .Dq y , .Dq \&! , .Dq \&: 関数は、オプショナルな引数をとることが できます。以下の一覧に、どの引数が関数名のあとに空白を置いてから指定し なければならないかが記述してあります。 .Pp 2つの関数は引数として関数リストをとります。関数リストは、以下の形式の 改行で区切られた .Nm 関数の羅列です。 .Bd -literal -offset indent { function function ... function } .Ed .Pp .Dq { の前後に空白を置くことができます。関数の前に空白を置くことができま す。最後の .Dq } は、改行の直後に置く必要があります。 .Dq } の直前に空白を置 くこともできます。 .Pp .Bl -tag -width "XXXXXX" -compact .It [2addr] function-list 選択されたパタンスペースに関数リストを適用します。 .Pp .It [1addr]a\e .It text 次の入力行を読み込む直前に .Em text を標準出力に書き出します。 これは .Dq N 関数によって実行される場合でも新しい繰り返しの開始時であっても変わりません。 .Pp .It [2addr]b[label] 指定された label を持つ .Dq \&: 関数に分岐します。label が指定さ れていない場合は、スクリプトの最後に分岐します。 .Pp .It [2addr]c\e .It text パタンスペースを削除します。address が指定されていない場合と、1つだけ 指定された場合は .Em text が標準出力に書き出されます。2つの address が 指定された場合は、選択された範囲の最終行を処理した後に、text が標準出力に書き出されま す。 .Pp .It [2addr]d パタンスペースを削除し、次の繰り返しを開始します。 .Pp .It [2addr]D パタンスペースの最初の改行までの部分を削除し、次の繰り返しを開始します。 .Pp .It [2addr]g ホールドスペースの内容をパタンスペースにコピーします。 .Pp .It [2addr]G 改行文字とホールドスペースの内容をパタンスペースに追加します。 .Pp .It [2addr]h パタンスペースの内容をホールドスペースにコピーします。 .Pp .It [2addr]H 改行文字とパタンスペースの内容をホールドスペースに追加します。 .Pp .It [1addr]i\e .It text 標準出力に .Em text を書き出します。 .Pp .It [2addr]l パタンスペースの内容を読めるような以下の形式で出力します。 .Pp .Bl -tag -width "carriage-returnXX" -offset indent -compact .It backslash \e\e .It alert \ea .It form-feed \ef .It newline \en .It carriage-return \er .It tab \et .It vertical tab \ev .El .Pp 印字不可能な文字は、各バイトごとに .Dq \e に続いて 3 桁の 8 進数で出力されま す (Most Significant Byte が先頭です)。 長い行は折り返して表示されます。折り返した部分は .Dq \e に続く改行で 示されます。各行の最後には .Dq $ が出力されます。 .Pp .It [2addr]n もし、( .Fl n オプションによって)デフォルトの出力が停止されていないなら、 パタンスペースの内容を標準出力に書き出します。 また、パタンスペースを次の入力行 で置き換えます。 .Pp .It [2addr]N パタンスペースに、次の入力行を追加します。このとき、元の内容との 間に改行を埋め込みます。現在の行番号が変化することに注意してください。 .Pp .It [2addr]p パタンスペースの内容を標準出力に書き出します。 .Pp .It [2addr]P パタンスペースの最初の改行までの内容を標準出力に書き出します。 .Pp .It [1addr]q スクリプトの残りをスキップし、次の繰り返しを開始せずに終了します。 .Pp .It [1addr]r file 次の入力行を読み込む直前に、ファイル .Em file の内容を標準出力に書き出します。 .Pp .It [2addr]s/regular expression/replacement/flags パタンスペース内で、 regular expression に対応する最初の部分を replacement で 置換します。バックスラッシュと改行以外の文字をスラッシュのかわりに用 いることができます。regular expression と replacement の中に、リテラルな区切り文 字を置きたいときは、 .Dq \e に続けて区切り文字を置きます。 .Pp replacement 中のアンパサンド .Pq Dq & は、regular expression にマッチした文 字列に置換されます。 .Dq & の前に .Dq \e を置くことで、この特殊な .Dq & の解釈を禁止 することができます。 .Dq \e# ( .Dq # は数字)は、regular expression の 後方参照(back reference)表現にマッチするテキストに置換されます( .Xr re_format 7 参照)。 .Pp replacement に改行を含めることで、入力行を分割することができます。 改行の直前に .Dq \e を置くことで、replacement 中に改行を含めることができ ます。 .Pp s 関数の .Em flags には、以下のものを0個以上指定できます。 .Bl -tag -width "XXXXXX" -offset indent .It "0 ... 9" パタンスペースの N 回目にマッチした内容を replacement で置換します。 .It g 先頭だけではなく、重なりあわない全てのマッチした内容を replacementで置換します。 .It p 置換が行われたら、パタンスペースの内容を標準出力に書き出します。 もし、置換後の内容が置換前のものと同一でも置換が行われたとみなします。 .It w Em file もし置換が行われたなら、パタンスペースの内容をファイル .Em file に追加します。 もし、置換後の内容が置換前のものと同一でも置換が行われたとみなします。 .El .Pp .It [2addr]t [label] 入力行が読み込まれてから、あるいは .Dq t 関数が実行されてから、置換が 行われていれば、指定した label を持つ .Dq \&: コマンドへ分岐します。label が指 定されていない場合は、スクリプトの最後に分岐します。 .Pp .It [2addr]w Em file パタンスペースの内容をファイル .Em file に追加します。 .Pp .It [2addr]x パタンスペースとホールドスペースの内容を交換します。 .Pp .It [2addr]y/string1/string2/ .Em string1 に現れるパタンスペース中の文字を .Em string2 の対応した 文字に置換します。たとえば、`y/abc/ABC/' はパタンスペース中の文字 a、b、c を大文字に置換します。 `\e' と改行以外のすべての文字を区切りとし て用いることができます。 .Em string1 、 .Em stirng2 中では、`\e' 直後に改行以外の文字が続く場合はリテラルに解釈され、 `\en' は改行と解釈されます。 .Pp .It [2addr]!function .It [2addr]!function-list 関数または関数リストを、 address で選択されていない行に適用します。 .Pp .It [0addr]:label この関数は何も行いません。 .Dq b 、 .Dq t で用いるラベルを生成します。 .Pp .It [1addr]= 行番号と改行を標準出力に書き出します。 .Pp .It [0addr] 空行は無視されます。 .Pp .It [0addr]# .Dq # とそれ以降の文字は無視されます(コメントとして扱われます)。 ただし、ファイルの行頭の 2 文字が `#n' の場合、デフォルトの出力が禁止されます。これは、コマンドライン に .Fl n オプションを指定した場合と等価です。 .El .Sh 診断 .Ex -std .Sh 関連項目 .Xr awk 1 , .Xr ed 1 , .Xr grep 1 , .Xr regex 3 , .Xr re_format 7 .Sh 歴史 .Nm は .At v7 で登場しました。 .Sh 規格 本 .Nm の関数は .St -p1003.2 のスーパセットとなっているはずです。 diff --git a/ja_JP.eucJP/man/man1/vacation.1 b/ja_JP.eucJP/man/man1/vacation.1 index 5bd679fb8b..6733fe7e0c 100644 --- a/ja_JP.eucJP/man/man1/vacation.1 +++ b/ja_JP.eucJP/man/man1/vacation.1 @@ -1,253 +1,280 @@ .\" Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. .\" All rights reserved. .\" Copyright (c) 1985, 1987, 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" .\" By using this file, you agree to the terms and conditions set .\" forth in the LICENSE file which can be found at the top level of .\" the sendmail distribution. .\" -.\" $Id: vacation.1,v 1.15 2002-03-31 07:00:08 horikawa Exp $ +.\" $Id: vacation.1,v 1.16 2002-04-29 01:08:58 horikawa Exp $ .\" -.\" %FreeBSD: src/contrib/sendmail/vacation/vacation.1,v 1.1.1.1.2.4 2001/08/01 03:19:50 gshapiro Exp % +.\" %FreeBSD: src/contrib/sendmail/vacation/vacation.1,v 1.1.1.1.2.6 2002/04/17 02:00:32 gshapiro Exp % .\" .\" $FreeBSD$ -.TH VACATION 1 "$Date: 2002-03-31 07:00:08 $" +.TH VACATION 1 "$Date: 2002-04-29 01:08:58 $" .SH 名称 .B vacation -\- 不在の通知を返送する +\- 電子メールの自動応答器 .SH 書式 .B vacation .RB [ \-a .IR alias ] .RB [ \-C .IR cffile ] .RB [ \-d ] .RB [ \-f .IR database ] .RB [ \-i ] .RB [ \-I ] .RB [ \-m .IR message ] .RB [ \-r .IR interval ] .RB [ \-s .IR address ] .RB [ \-t .IR time ] .RB [ \-U ] .RB [ \-x ] .RB [ \-z ] .I login .SH 解説 .B vacation は、メールの送信者に対して、あなたが現在メールを -読んでいない旨を通知するメッセージを返送します。通常、 +読んでいない旨を通知するメッセージを返送します。 +このメッセージは、デフォルトでは +.IR ~/.vacation.msg +です。 +各送信者に対するメッセージ送信は、応答間隔中には 1 通しか実行されません +(後述の +.B \-r +を参照してください)。 +通常、 .I .forward ファイルの中で使われます。 例えば、あなたの .I .forward ファイルの中で次のように記述します。 .IP \eeric, "|/usr/bin/vacation -a allman eric" .PP これで、あなた自身 (ここではログイン名が eric であるとします) にメッセージを送るとともに、 ``eric'' もしくは ``allman'' に宛てられたメッセージに自動応答します。 .PP 以下のオプションを指定することができます。 .TP .BI \-a " alias" .I alias 宛てのメッセージをユーザのログイン名に送られたメールと同様に処理します。 .TP .BI \-C " cfpath" sendmail の設定ファイルのパス名を指定します。 .B \-U が指定された場合、本オプションは無視されます。 本オプションのデフォルトは、sendmail の標準の設定ファイルであり、 ほとんどのシステムでは /etc/mail/sendmail.cf です。 .TP .B \-d エラーおよびデバッグのメッセージを、syslog の代りに標準出力へ送ります。 本オプションを使用しない場合、正しくない引数や存在しない .I login で .B vacation を呼び出す等の致命的なエラーは、 syslog(8) を使用して、システムログファイルへ記録します。 +コマンドラインのみで使用してください。 +.I .forward +ファイルでは使用しないでください。 .TP .BI \-f " filename" データベース名として、 .I filename を .IR ~/.vacation.db または .IR ~/.vacation.{dir,pag} の代りに使用します。 .I filename が / で開始しない場合には、~ からの相対となります。 .TP .B \-i vacation データベースを初期化します。 これは、 .I .forward ファイルを変更する前に行なっておく必要があります。 +コマンドラインのみで使用してください。 +.I .forward +ファイルでは使用しないでください。 .TP .B \-I .B \-i と同じです (後方互換性のためにあります)。 +コマンドラインのみで使用してください。 +.I .forward +ファイルでは使用しないでください。 +.TP +.B \-l +vacation データベースファイルの内容を列挙します。 +この情報には、 +アドレスと、それぞれのアドレスにおいて最後に自動応答した時刻を含みます。 +コマンドラインのみで使用してください。 +.I .forward +ファイルでは使用しないでください。 .TP .BI \-m " filename" 送信されるメッセージを含むファイルとして、 .I filename を .IR ~/.vacation.msg の代りに使用します。 .I filename が / で開始しない場合には、~ からの相対となります。 .TP -.B \-l -vacation データベースファイルの内容を列挙します。 -この情報には、 -アドレスと、それぞれのアドレスにおいて最後に自動応答した時刻を含みます。 -.TP .BI \-r " interval" 自動応答の間隔を .I interval 日に設定します。デフォルトは 1 週間です。間隔を ``0'' に設定すると、全てのメッセージに対して自動応答を行ないます。 ``infinite'' (実際には数字以外の文字ならなんでも) を設定すると、 同じ送信者には一度しか自動応答を行ないません。 +.B \-r +オプションは、vacation データベース初期化時のみ使用してください (前述の +.B \-i +を参照してください)。 .TP .BI \-s " address" 受け付けるメールの .I From 行にある送信者アドレスの代りに、 .I address を、vacation メッセージの受信者として使用します。 .TP .BI \-t " time" 無視されます。 Sun の vacation プログラムとの互換性のためだけに存在します。 .TP .B \-U パスワードファイル中の .I login の検索を試みないようにします。 オプション -f と -m を使用して、 データベースとメッセージファイルを指定することが必要です。 これらのオプションを使用する場合は普通、ホームディレクトリが無いからです。 .TP .B \-x 除外リストを標準入力から読み込みます (行毎に 1 アドレス)。 除外リストに含まれるアドレスから届くメールに対しては、 .BR vacation は返送しません。 除外リストの要素として ``@domain'' を指定することで、ドメイン全体を除外することも可能です。 +コマンドラインのみで使用してください。 +.I .forward +ファイルでは使用しないでください。 .TP .B \-z vacation メッセージの送信者を、ユーザの代りに ``<>'' にします。 vacation メッセージの送信者を空の逆パスにすることは standards-track RFC は求めていませんので、RFC 違反となるかもしれません。 .PP +.B vacation +はメールの送信者を決定するために標準入力の 1 行目の +UNIX +``From'' +行を読みます。この +``From'' +行は +sendmail(8) +が自動的に付加するものです。 +.PP .I login (もしくは .B \-a オプションによって指定された .I alias ) がメールの ``To:'' もしくは ``Cc:'' ヘッダになければ、自動応答は送られません。また、 ``???-REQUEST'', ``???-RELAY'', ``???-OWNER'', ``OWNER-???'', ``Postmaster'', ``UUCP'', ``MAILER'', ``MAILER-DAEMON'' から (大文字、小文字は区別されません) のメールや、 ``Precedence: bulk'' や ``Precedence: junk'' の行がヘッダに含まれているメールに対しても自動応答は送られません。 あなたへのメールの送信者のアドレスは ホームディレクトリの .I \&.vacation.db ファイル中で db(3) または dbm(3) を使用して管理されます。 .PP .B vacation または .I .vacation.{dir,pag} ではホームディレクトリに .I .vacation.msg ファイルを置くことによって、 あなたへのメールの送信者へのメッセージを指定します。 このファイルは (ヘッダを含む) 完全なメッセージでなければなりません。 以下に例を示します。 .IP .nf From: eric@CS.Berkeley.EDU (Eric Allman) Subject: I am on vacation Delivered-By-The-Graces-Of: The Vacation program Precedence: bulk わたしは 7 月 22 日まで休暇をとっています。緊急の場合は Keith Bostic に連絡願います。 --eric .fi .PP .B Vacation (訳註)返答メッセージに日本語を使う場合には、 漢字コードは JIS (ISO-2022-JP) でなければいけません。 .\" 上記(訳註)は日本語対応のために追加しました。 .\" 2.2.1-RELEASE 対象 .\" by mihara@prd.fc.nec.co.jp (Apr. 4, 1997) -.PP -.B vacation -はメールの送信者を決定するために標準入力の 1 行目の -UNIX -``From'' -行を読みます。この -``From'' -行は -sendmail(8) -が自動的に付加するものです。 .SH 関連ファイル .TP 1.8i ~/.vacation.db db(3) 用のデフォルトのデータベースファイル .TP 1.8i ~/.vacation.{dir,pag} dbm(3) 用のデフォルトのデータベースファイル .TP ~/.vacation.msg デフォルトの送信メッセージ .SH 関連項目 sendmail(8), syslogd(8) .SH 歴史 .B vacation コマンドは 4.3BSD から登場しました。 diff --git a/ja_JP.eucJP/man/man5/a.out.5 b/ja_JP.eucJP/man/man5/a.out.5 index 8127f37aaf..47e40d0088 100644 --- a/ja_JP.eucJP/man/man5/a.out.5 +++ b/ja_JP.eucJP/man/man5/a.out.5 @@ -1,480 +1,481 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This man page is derived from documentation contributed to Berkeley by .\" Donn Seeley at UUNET Technologies, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)a.out.5 8.1 (Berkeley) 6/5/93 -.\" %FreeBSD: src/share/man/man5/a.out.5,v 1.10.2.3 2001/12/17 11:30:13 ru Exp % +.\" %FreeBSD: src/share/man/man5/a.out.5,v 1.10.2.4 2002/04/16 14:50:18 trhodes Exp % .\" .\" $FreeBSD$ .\" WORD: byte order バイト順 .\" WORD: posision independent 位置独立(な) .\" WORD: link editor リンクエディタ .\" WORD: link edit リンクエディット .\" .Dd June 5, 1993 .Dt A.OUT 5 .Os .Sh 名称 .Nm a.out .Nd 実行可能バイナリファイルのフォーマット .Sh 書式 .In a.out.h .Sh 解説 インクルードファイル .Aq Pa a.out.h では 3 つの構造体といくつかのマクロが宣言されています。 これらの構造体は、このシステムで実行可能な機械語コードファイル .Pq Sq バイナリ のフォーマットを規定します。 .Pp バイナリファイルは最大で 7 つのセクションから構成されます。 これらのセクションを順にあげると以下のようになります: .Bl -tag -width "テキストリロケーション" .It exec ヘッダ バイナリファイルをメモリ上にロードして実行するために カーネルが用いるパラメータを含んでいます。 これらのパラメータはリンクエディタ .Xr ld 1 がバイナリファイルを他のバイナリファイルと結合する際にも 用いられます。 このセクションは唯一の必須セクションです。 .It テキストセグメント プログラムが実行される際にメモリ上にロードされる 機械語コード及び関連データを含んでいます。 読み込み専用でロードされる場合があります。 .It データセグメント 初期化済データを含んでいます。 常に書き込み可能なメモリ上にロードされます。 .It テキストリロケーション バイナリファイル結合時にテキストセグメント内のポインタを修正するために、 リンクエディタによって用いられるレコードを含んでいます。 .It データリロケーション 前出のテキストリロケーションセクションと似ていますが、 データセグメント内のポインタ修正用です。 .It シンボルテーブル バイナリファイル間で 名前付きの変数や関数 .Pq Sq シンボル のアドレス相互参照を解決するために、 リンクエディタによって用いられるレコードを含んでいます。 .It string table シンボル名に対応する文字列を含んでいます。 .El .Pp 全てのバイナリファイルは次の .Fa exec 構造体で始まります: .Bd -literal -offset indent struct exec { unsigned long a_midmag; unsigned long a_text; unsigned long a_data; unsigned long a_bss; unsigned long a_syms; unsigned long a_entry; unsigned long a_trsize; unsigned long a_drsize; }; .Ed .Pp これらのフィールドは以下の機能を持っています: .Bl -tag -width a_trsize .It Fa a_midmag このフィールドはホストのバイト順 (host byte-order) で格納されます。 このフィールドはいくつかのサブコンポーネントを持っており、それらは 以下のマクロ .Fn N_GETFLAG , .Fn N_GETMID , .Fn N_GETMAGIC で参照され、マクロ .Fn N_SETMAGIC で設定されます。 .Pp マクロ .Fn N_GETFLAG は以下のフラグを返します: .Bl -tag -width EX_DYNAMIC .It Dv EX_DYNAMIC この実行可能ファイルがランタイムリンクエディタのサービスを要求することを 示します。 .It Dv EX_PIC このオブジェクトファイルが位置独立 (position independent) なコードを 含んでいることを示します。 このフラグは .Sq -k フラグ指定時に .Xr as 1 によって設定され、必要なら .Xr ld 1 はこれを保存します。 .El .Pp EX_DYNAMIC と EX_PIC の両方がセットされている場合、 そのオブジェクトファイルは位置独立な実行可能イメージです (例: 共有ライブラリ)。 これはランタイムリンクエディタによってプロセスのアドレス空間にロードされます。 .Pp マクロ .Fn N_GETMID はマシン識別コード (machine-id) を返します。 これは、バイナリファイルが実行されるべきマシンを示しています。 .Pp .Fn N_GETMAGIC はマジックナンバを示します。 マジックナンバはバイナリファイル種別を一意に識別し、 様々なロード方法を区別します。 このフィールドは以下の値のいずれか 1 つを含んでいなければなりません: .Bl -tag -width ZMAGIC .It Dv OMAGIC テキストセグメントとデータセグメントはヘッダの直後にあり、 連続しています。 カーネルはテキスト/データセグメントの両方を書き込み可能メモリ領域に ロードします。 .It Dv NMAGIC .Dv OMAGIC と同様、テキスト/データセグメントはヘッダの直後にあり、連続しています。 しかし、カーネルはテキストセグメントを読み込み専用メモリ領域にロードし、 テキストに続くページ境界から始まる 書き込み可能メモリ領域にデータセグメントをロードします。 .It Dv ZMAGIC カーネルは各々のページを必要に応じてバイナリからロードします。 ヘッダ、テキストセグメント及びデータセグメントはいずれも、 ページサイズの倍数の大きさになるよう、 リンクエディタによってパディングされます。 カーネルがテキストセグメントからロードしたページは読み込み専用ですが、 データセグメントからロードしたページは書き込み可能です。 .El .It Fa a_text テキストセグメントのサイズ (バイト単位) を保持します。 .It Fa a_data データセグメントのサイズ (バイト単位) を保持します。 .It Fa a_bss .Sq bss セグメント のバイト数を保持します。 この値はカーネルが最初の break 値 .Pq Xr brk 2 をデータセグメントの後ろに設定するのに用いられます。 カーネルは、ここに示されるサイズの書き込み可能メモリ領域が データセグメントの後ろに用意され、それらの初期状態が 0 になるように、 プログラムをロードします。 +.Po +.Em bss += シンボルで開始するブロック (block started by symbol) +.Pc .It Fa a_syms シンボルテーブルセクションのサイズ (バイト単位) を保持します。 .It Fa a_entry カーネルがバイナリファイルをロードした後の、 プログラムのエントリポイントのメモリアドレスを保持します。 カーネルは、このアドレスにある機械命令からプログラムの実行を開始します。 .It Fa a_trsize テキストリロケーションテーブルのサイズ (バイト単位) を保持します。 .It Fa a_drsize データリロケーションテーブルのサイズ (バイト単位) を保持します。 .El .Pp インクルードファイル .Pa a.out.h では、 .Fa exec 構造体を用いて一貫性をテストしたりバイナリファイル中のセクションオフセットを 知るためのマクロが定義されています。 .Bl -tag -width N_BADMAG(exec) .It Fn N_BADMAG exec .Fa a_magic フィールドに、認識できない値が含まれている場合、非 0 を返します。 .It Fn N_TXTOFF exec バイナリファイルにおけるテキストセグメントの先頭のバイトオフセットを返します。 .It Fn N_SYMOFF exec シンボルテーブルの先頭のバイトオフセットを返します。 .It Fn N_STROFF exec 文字列テーブルの先頭のバイトオフセットを返します。 .El .Pp リロケーションレコードは、 .Fa relocation_info 構造体で規定される標準フォーマットです: .Bd -literal -offset indent struct relocation_info { int r_address; unsigned int r_symbolnum : 24, r_pcrel : 1, r_length : 2, r_extern : 1, r_baserel : 1, r_jmptable : 1, r_relative : 1, r_copy : 1; }; .Ed .Pp .Fa relocation_info 構造体の各フィールドは以下のように用いられます: .Bl -tag -width r_symbolnum .It Fa r_address リンクエディットが必要なポインタのバイトオフセットを保持します。 テキストリロケーションオフセットはテキストセグメントの先頭から、 データリロケーションオフセットはデータセグメントの先頭から、 それぞれ計算します。 リンクエディタはこのオフセットにストアされている値を加算し、 このリロケーションレコードを用いて計算した新しい値に変換します。 .It Fa r_symbolnum シンボルテーブルにおけるシンボル構造体の順序番号 ( バイトオフセット .Em ではありません ) を保持します。 リンクエディタはこのシンボルの絶対アドレスを解決した後、 そのアドレスをリロケーション中のポインタに加算します。 (もし .Fa r_extern ビットが立っていなければ状況は異なります。以下を参照して下さい。) .It Fa r_pcrel もしこのビットが立っていれば、 リンクエディタは、PC 相対アドレッシングを用いる機械語命令の一部である ポインタを更新しているものと仮定します。 リロケートされるポインタのアドレスは、実行中のプログラムがそれを用いる際に、 暗黙的にその値に加算されます。 .It Fa r_length ポインタの長さを 2 を底とする対数で表したバイト単位で保持します。 1 バイトディスプレースメントなら 0、 2 バイトディスプレースメントなら 1、 4 バイトディスプレースメントなら 2 となります。 .It Fa r_extern このリロケーションが外部参照を必要としている場合にセットされます。 リンクエディタは、シンボルアドレスを用いてこのポインタを 更新しなければなりません。 .Fa r_extern ビットが立っていない場合、そのリロケーションは .Sq ローカル です。 リンクエディタは、シンボル値の変化ではなく、 各セグメントのロードアドレスの変化に応じてポインタを更新します (ただし、 .Fa r_baserel もセットされている場合(後述)は除きます)。 この場合、 .Fa r_symbolnum フィールドの内容は .Fa n_type の値となります(後述)。 リンクエディタは、この型フィールドから、 リロケートされるポインタがどのセグメントを指しているのかの情報を得ます。 .It Fa r_baserel セットされている場合、 .Fa r_symbolnum フィールドで指定される場合のように、 このシンボルはグローバルオフセットテーブルへのオフセットに リロケートされます。 実行時に、グローバルオフセットテーブル中の、このオフセット位置にある エントリが、シンボルのアドレスを持つようにセットされます。 .It Fa r_jmptable セットされている場合、 .Fa r_symbolnum フィールドで指定される場合のように、 このシンボルはプロシージャリンケージテーブルへのオフセットに リロケートされます。 .It Fa r_relative セットされている場合、 このリロケーションは、このオブジェクトファイルが含まれる イメージの (実行時の) ロードアドレスとの相対値となります。 この種のリロケーションは共有オブジェクトにのみ現れます。 .It Fa r_copy セットされている場合、 このリロケーションレコードは、 その内容を .Fa r_address で指定される位置にコピーしなければならないシンボルを示します。 コピー処理は、実行時のリンクエディタによって、 共有オブジェクト中の適切なデータアイテムから行われます。 .El .Pp シンボルは名前とアドレスを対応づけます (より一般的には、 文字列を値へ対応づけます)。 リンクエディタがアドレスを調節するため、 絶対値が割り当てられるまではシンボルを用いてアドレスを表現しなければ なりません。 シンボルは、シンボルテーブル中の固定長のレコードと、 文字列テーブル中の可変長の名前から成ります。 シンボルテーブルは .Fa nlist 構造体の配列です: .Bd -literal -offset indent struct nlist { union { char *n_name; long n_strx; } n_un; unsigned char n_type; char n_other; short n_desc; unsigned long n_value; }; .Ed .Pp これらのフィールドは以下のように用いられます: .Bl -tag -width n_un.n_strx .It Fa n_un.n_strx このシンボルの名前の、文字列テーブルでのバイトオフセットを保持します。 プログラムが .Xr nlist 3 関数を用いてシンボルテーブルをアクセスする場合、 このフィールドは、 メモリ中の文字列へのポインタである .Fa n_un.n_name フィールドに置き換えられます。 .It Fa n_type リンクエディタがシンボル値の更新方法を決定するのに用いられます。 .Fa n_type フィールドは、ビットマスクを用いた 3 つのサブフィールドに分けられます。 リンクエディタは .Dv N_EXT ビットがセットされているシンボルを .Sq external シンボルとして扱い、他のバイナリファイルからの参照を許可します。 .Dv N_TYPE マスクはリンクエディタに必要なビットを選択します: .Bl -tag -width N_TEXT .It Dv N_UNDF 未定義シンボル。 リンクエディタは、他のバイナリファイル中の同じ名前の外部シンボルを探して このシンボルの絶対値を決定しなければなりません。 特別な場合として、もし .Fa n_value フィールドが非 0 で、リンクエディット対象のどのバイナリファイルも このシンボルを定義していない場合、 リンクエディタはこのシンボルが bss セグメント中のアドレスであるとみなし、 .Fa n_value に等しいバイト数の領域を予約します。 もしこのシンボルが複数のバイナリファイル中で未定義となっており、 それらのバイナリファイル間でサイズが異なっている場合、 リンクエディタはそれらのサイズの最大値を選びます。 .It Dv N_ABS 絶対シンボル。 リンクエディタは絶対シンボルは更新しません。 .It Dv N_TEXT テキストシンボル。 このシンボルの値はテキストアドレスであり、 リンクエディタはバイナリファイルをマージする際、その値を更新します。 .It Dv N_DATA データシンボル。 .Dv N_TEXT と同様ですが、データアドレスを表します。 テキストシンボル及びデータシンボルの値は、 ファイルオフセットではなくアドレスです。 ファイルオフセットを復元するために、 対応するセクションの先頭のロードアドレスを見つけてそれを減じ、 次にそのセクションのオフセットを加算する必要があります。 .It Dv N_BSS bss シンボル。テキストシンボルやデータシンボルと似ていますが、 バイナリファイル中に対応するオフセットを持ちません。 .It Dv N_FN ファイル名シンボル。 バイナリファイルをマージする際、 リンクエディタはバイナリファイルの他のシンボルの前にこのシンボルを 挿入します。 このシンボルの名前はリンクエディタに与えられたファイル名で、 シンボルの値はバイナリファイルから得た先頭テキストアドレスです。 ファイル名シンボルはリンクエディト処理やロード処理には不要ですが、 デバッガには有用な情報です。 .El .Pp .Dv N_STAB マスクは .Xr gdb 1 等のシンボリックデバッガに必要なビットを選択します。 その値は .Xr stab 5 に示されています。 .It Fa n_other このフィールドは、 .Fa n_type フィールドで決定されるセグメントに関して、 そのシンボルのロケーションとは独立した シンボルの特質に関する情報を提供します。 現在のところ、 .Fa n_other フィールドの下位 4 ビットは .Dv AUX_FUNC あるいは .Dv AUX_OBJECT のいずれかをとります (これらの定義については .Aq Pa link.h を参照してください)。 .Dv AUX_FUNC はシンボルと呼び出し可能な関数を関連づけ、他方、 .Dv AUX_OBJECT はシンボルとデータを関連づけます。 これらの関連はテキストセグメント/データセグメントの別とは無関係です。 このフィールドは、 .Xr ld 1 が動的な実行可能形式を構築するために使うことを意図しています。 .It Fa n_desc デバッガ用に予約されており、リンクエディタはこのフィールドを全く変更しません。 デバッガによって異なった目的に使われます。 .It Fa n_value シンボルの値を保持します。 テキスト, データおよび bss シンボルの場合、その値はアドレスです。 他のシンボル (例えばデバッガシンボル等) の場合、その値は様々です。 .El .Pp 文字列テーブルは .Em unsigned long 型の長さと、それに続くナル終端のシンボル文字列から成ります。 この長さは、テーブル全体のサイズをバイト単位で表します。 つまり、その最小値 (言い替えれば、最初の文字列のオフセット) は、 32 ビットマシンでは常に 4 となります。 .Sh 関連項目 .Xr as 1 , .Xr gdb 1 , .Xr ld 1 , .Xr brk 2 , .Xr execve 2 , .Xr nlist 3 , .Xr core 5 , .Xr elf 5 , .Xr link 5 , .Xr stab 5 .Sh 歴史 インクルードファイル .Pa a.out.h は .At v7 で登場しました。 .Sh バグ 必ずしも全てのサポート対象アーキテクチャが .Fa a_midmag フィールドを用いるわけではないので、 あるバイナリがどのようなアーキテクチャ上で実行されるのかは、 実際のマシンコードを調べない限り判定困難な可能性があります。 マシン ID があったとしても、 .Fa exec ヘッダのバイト順はマシン依存です。 -.Pp -.Em bss -が何の略なのか、に関する合意はないようです。 diff --git a/ja_JP.eucJP/man/man5/auth.conf.5 b/ja_JP.eucJP/man/man5/auth.conf.5 index 5c497af90f..20a3f66912 100644 --- a/ja_JP.eucJP/man/man5/auth.conf.5 +++ b/ja_JP.eucJP/man/man5/auth.conf.5 @@ -1,36 +1,37 @@ .\" Copyright (c) 1998 Jordan Hubbard .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, is permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice immediately at the beginning of the file, without modification, .\" this list of conditions, and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" -.\" %FreeBSD: src/lib/libutil/auth.conf.5,v 1.3.2.2 2001/08/17 15:43:07 ru Exp % +.\" %FreeBSD: src/lib/libutil/auth.conf.5,v 1.3.2.3 2002/04/23 12:05:03 ceri Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man5/auth.conf.5,v 1.6 2001/05/14 01:09:27 horikawa Exp $ +.\" $FreeBSD$ .\" .Dd October 7, 1998 .Dt AUTH.CONF 5 .Os .Sh 名称 .Nm auth.conf .Nd 認証ケーパビリティデータベース .Sh 書式 .Pa /etc/auth.conf .Sh 解説 .Nm は、認証コード (現在のところもっとも有名なものとして .Xr kerberos 5 があります) にとって重要な属性をいろいろ含んでいます。 この文書は .Pa /etc/auth.conf とともに今後、更新されてゆくことでしょう。なにせ、今できたばかりで、 進化中ですから。 .Sh 関連項目 -.Xr auth_getval 3 +.Xr auth_getval 3 , +.Xr crypt 3 diff --git a/ja_JP.eucJP/man/man5/make.conf.5 b/ja_JP.eucJP/man/man5/make.conf.5 index 5579a10f08..fef8a2b20e 100644 --- a/ja_JP.eucJP/man/man5/make.conf.5 +++ b/ja_JP.eucJP/man/man5/make.conf.5 @@ -1,806 +1,818 @@ .\" Copyright (c) 2000 .\" Mike W. Meyer .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/share/man/man5/make.conf.5,v 1.12.2.13 2002/03/25 21:36:28 gshapiro Exp % +.\" %FreeBSD: src/share/man/man5/make.conf.5,v 1.12.2.14 2002/04/20 18:51:04 gshapiro Exp % .\" .\" $FreeBSD$ .\" .Dd November 3, 2000 .Dt MAKE.CONF 5 .Os .Sh 名称 .Nm make.conf .Nd システムビルド情報 .Sh 解説 .Nm ファイルには .Fx のソースや ports アプリケーションの制御に関する設定が含まれています。 通常 .Nm ファイルは、システム管理者が、 これらの値をデフォルトから変更したい場合に作成します。 .Pp .Nm の用途は、コマンド実行やコンパイル動作を直接行うことではなく、 .Pa /usr/src , .Pa /usr/ports , .Pa /usr/doc などにある様々な makefile にインクルードされることです。 そのような makefile では、 内部の動作が .Nm の与える条件によって変化するようになっているのです。 .Pp .Pa /etc/make.conf ファイルはそれぞれ適切な .Pa Makefile からインクルードされます。 各々の Makefile の中では、 利用可能なすべてのオプションに対し、デフォルトの設定が与えられています。 .Pa /etc/make.conf で指定する必要があるオプションは、 システム管理者がデフォルトから変更したいと思ったものだけです。 .Pp ビルドの手続きは、大きく 4 つの領域に分けられます。 world、カーネル、ドキュメント、ports です。 .Nm で設定された変数はこれらの領域の 1 つ、2 つ、 あるいは全てに適用されます。 変数は、特定のビルドに対して .Xr make 1 の .Fl D オプションを用いて指定することもできます。 .Pp 以下のリストでは、それぞれ指定したビルドの途中で用いることのできる 各変数の名前と簡単な説明を記述します。 .Vt bool と指定されている変数では、その値は意味を持ちません。 変数が設定されていれば (たとえ値が .Dq Li FALSE や .Dq Li NO でも)、変数が設定されているものとして扱われます。 .Pp 次のリストは、すべてのビルド (あるいはビルド以外の目的で使われる .Pa Makefile ) で用いられる変数の名前と簡単な説明です。 .Bl -tag -width Ar .It Va CFLAGS .Pq Vt str C のコードをコンパイルするときのコンパイラの設定を制御します。 .Fl O を越えた最適化レベル .Pq Fl O2 , No ... はサポートされていません。 .Va BDECFLAGS は、 .An "Bruce Evans" Aq bde@FreeBSD.org が開発や変更のテスト用に勧めている .Xr gcc 1 設定です。 これは、設定すれば、以下のように使用可能です。 .Pp .Bd -literal -offset indent CXFLAGS+=${BDECFLAGS} .Ed .It Va CVS_UPDATE .Pq Vt bool .Dq Li "make update" で ports を更新するときに .Xr cvs 1 を用いる場合、設定します。 .It Va CXXFLAGS .Pq Vt str C++ のコードをコンパイルするときのコンパイラの設定を制御します。 .Va CXXFLAGS は最初は .Va CFLAGS の値に設定されます。この .Va CXXFLAGS の値に追加を行いたい場合は、 .Dq Li = ではなく .Dq Li += を用いてください。 .It Va INSTALL .Pq Vt str デフォルトのインストールコマンドです。 インストールを行う前に比較を行いたい場合は、次の例を用いてください。 .Bd -literal -offset indent INSTALL="install -C" .Ed .It Va LOCAL_DIRS .Pq Vt str この変数には .Pa /usr/src で make を行うときに入るべきディレクトリをすべてリストします。 .It Va MTREE_FOLLOWS_SYMLINKS .Pq Vt str .Xr mtree 8 にシンボリックリンクを追跡させたい場合は、 これを .Dq Fl L に設定します。 .It Va NO_DOCUPDATE .Pq Vt bool .Dq Li "make update" で doc ツリーを更新させない場合これを設定します。 .It Va NO_PORTSUPDATE .Pq Vt bool .Dq Li "make update" で ports ツリーを更新させない場合これを設定します。 .It Va SUP_UPDATE .Pq Vt bool .Dq Li "make update" による ports の更新に .Xr cvsup 1 を使う場合これを設定します。 .It Va SUP .Pq Vt str .Dq Li "make update" で用いられる .Xr cvsup 1 コマンドの置き場所です。 .It Va SUPFLAGS .Pq Vt str .Dq Li "make update" を行うとき .Xr sup 1 に与えるフラグ。デフォルトは .Op Fl g L Ar 2 です。 .It Va SUPHOST .Pq Vt str .Dq Li "make update" を行うときに用いる sup サーバのホスト名です。 .It Va SUPFILE .Pq Vt str .Dq Li "make update" を行うとき、最初に用いる .Ar supfile です。デフォルトは .Pa /usr/share/examples/cvsup/standard\-supfile です。 .It Va SUPFILE1 .Pq Vt str .Dq Li "make update" を行うとき、二番目に用いる .Ar supfile です。デフォルトは .Pa /usr/share/examples/cvsup/secure\-supfile です。 .It Va SUPFILE2 .Pq Vt str .Dq Li "make update" を行うとき、三番目に用いる .Ar supfile です。デフォルトは .Pa /usr/share/examples/cvsup/secure\-supfile です。 .It Va PORTSSUPFILE .Pq Vt str .Dq Li "make update" を行うときの ports 用の .Ar supfile です。デフォルトは .Pa /usr/share/examples/cvsup/ports\-supfile です。 .It Va DOCSUPFILE .Pq Vt str .Dq Li "make update" を行うときのドキュメント用の .Ar supfile です。デフォルトは .Pa /usr/share/examples/cvsup/doc\-supfile です。 .It Va WARNS_WERROR WARNS が有効な場合、 -Werror を .Va CFLAGS へ追加させます。 .El .Pp 次のリストは、カーネルのビルドで用いられる変数の名前と簡単な説明です。 .Bl -tag -width Ar .It Va BOOT_COMCONSOLE_PORT .Pq Vt str ブートブロックが、 キーボード/ビデオカードの代わりに シリアルコンソールを用いるよう設定された場合に、 コンソールとして用いるポートアドレスです。 .It Va BOOT_COMCONSOLE_SPEED .Pq Vt int ブートブロックが、 キーボード/ビデオカードの代わりに シリアルコンソールを用いるよう設定された場合に、 コンソールで用いるボーレートです。 .It Va BOOTWAIT .Pq Vt int カーネルがデフォルトカーネルのブートを開始する前に、 コンソールのキーが押されるのを待つ時間を制御します。 値はだいたいミリ秒単位となります。 ディスクからブートする前のキー入力の認識は BIOS が行うので、 これが 0 に設定されていた場合でも、 ユーザの選択したブートパラメータを与えることは可能です。 .It Va COPTFLAGS .Pq Vt str カーネルをコンパイルするときのコンパイラの設定を制御します。 .Op Fl O を越えた最適化レベル .Pq Op Fl O2 , No ...\& は、動作が保証されていません。 .It Va KERNCONF .Pq Vt str .Dq Li "${MAKE} buildkernel" によるビルドと .Dq Li "${MAKE} installkernel" . によるインストールとで、 どのカーネル設定を用いるかを制御します。例えば .Bd -literal -offset indent KERNCONF=MINE DEBUG GENERIC OTHERMACHINE .Ed .Pp とすると、 .Pa MINE , DEBUG , GENERIC , OTHERMACHINE といった各設定ファイルに対応するカーネルをビルドし、 .Pa MINE に対応するカーネルをインストールします。 デフォルトは .Pa GENERIC です。 .It Va NO_KERNELCONFIG .Pq Vt bool .Dq Li "${MAKE} buildkernel" の際に .Xr config 8 を実行しない場合には、これを設定します。 .It Va NO_KERNELDEPEND .Pq Vt bool .Dq Li "${MAKE} buildkernel" の際に .Dq Li "${MAKE} depend" を実行しない場合には、これを設定します。 .It Va NO_MODULES .Pq Vt bool カーネルといっしょにモジュールをビルドしない場合に設定します。 .El .Pp 次のリストは、world のビルドで用いられる変数の名前と簡単な説明です。 .Bl -tag -width Ar .It Va COMPAT1X .Pq Vt bool .Fx 1 互換ライブラリをインストールする場合に設定します。 .It Va COMPAT20 .Pq Vt bool .Fx 2.0 互換ライブラリをインストールする場合に設定します。 .It Va COMPAT21 .Pq Vt bool .Fx 2.1 互換ライブラリをインストールする場合に設定します。 .It Va COMPAT22 .Pq Vt bool .Fx 2.2 互換ライブラリをインストールする場合に設定します。 .It Va COMPAT3X .Pq Vt bool .Fx 3 互換ライブラリをインストールする場合に設定します。 .It Va COMPAT4X .Pq Vt bool .Fx 4 互換ライブラリをインストールする場合に設定します。 .It Va ENABLE_SUIDPERL .Pq Vt bool suid .Xr perl 1 バイナリのインストールを行う場合に設定します。 .It Va FETCH_CMD .Pq Vt str ファイルの取得に用いるコマンドです。 通常は .Xr fetch 1 です。 .It Va MAKE_IDEA .Pq Vt bool IDEA 暗号化コードをビルドする場合に設定します。 このコードは米国やヨーロッパの多くの国々で特許が取得されています。 合法的に IDEA を使えるかどうか決めるのは .Em あなたの責任 です。 .It Va MAKE_KERBEROS4 .Pq Vt bool KerverosIV (KTH eBones) をビルドする場合に設定します。 .It Va MAKE_KERBEROS5 .Pq Vt bool Kerveros5 (KTH Heimdal) をビルドする場合に設定します。 .Em 注意! これはまだ実験的なコードです。 安定している Kerberos5 が必要ならば、 ports を用いてください。 .It Va MODULES_WITH_WORLD .Pq Vt bool カーネルと同時にではなく、 システムと同時にモジュールをビルドする場合に設定します。 .It Va NO_CVS .Pq Vt bool CVS をビルドしない場合に設定します。 .It Va NO_BIND .Pq Vt bool BIND をビルドしない場合に設定します。 .It Va NO_FORTRAN .Pq Vt bool .Xr g77 1 と関連ライブラリをビルドしない場合に設定します。 .It Va NO_I4B .Pq Vt bool isdn4bsd パッケージをビルドしない場合に設定します。 .It Va NO_LPR .Pq Vt bool .Xr lpr 1 と関連プログラムをビルドしない場合に設定します。 .It Va NO_MAILWRAPPER .Pq Vt bool MTA セレクタである .Xr mailwrapper 8 をビルドしない場合に設定します。 .It Va NO_MAKEDEV .Pq Vt bool インストールの際に .Pa /dev で .Dq Li "MAKEDEV all" を実行しない場合に設定します。 .It Va NO_OBJC .Pq Vt bool Objective C のサポートをビルドしない場合に設定します。 .It Va NO_OPENSSH .Pq Vt bool OpenSSH をビルドしない場合に設定します。 .It Va NO_OPENSSL .Pq Vt bool OpenSSL をビルドしない場合に設定します (同時に .Va NO_OPENSSH も設定されたことになります)。 .It Va NO_SENDMAIL .Pq Vt bool .Xr sendmail 8 と関連プログラムをビルドしない場合に設定します。 .It Va NO_SHAREDOCS .Pq Vt bool .Bx 4.4 の古い文書をビルドしない場合に設定します。 .It Va NO_TCSH .Pq Vt bool .Pa /bin/csh (これは .Xr tcsh 1 です) をビルド・インストールしない場合に設定します。 .It Va NO_X .Pq Vt bool X\-Windows のサポート (例えば .Xr doscmd 1 など) をコンパイルしない場合に設定します。 .It Va NOCLEAN .Pq Vt bool .Dq Li "make buildworld" の途中で clean を行わない場合に設定します。 何をやっているかわからない人は設定すべきではありません。 .It Va NOCLEANDIR .Pq Vt bool .Dq Li "${MAKE} cleandir" の代わりに .Dq Li "${MAKE} clean" を実行する場合に設定します。 .It Va NOCRYPT .Pq Vt bool crypto コードを一切ビルドしない場合に設定します。 .It Va NOGAMES .Pq Vt bool ゲームをビルドしない場合に設定します。 .It Va NOINFO .Pq Vt bool .Xr info 5 各ファイルを作成・インストールしない場合に設定します。 .It Va NOLIBC_R .Pq Vt bool .Nm libc_r .Pf ( Nm libc のリエントラント版) をビルドしない場合に設定します。 .It Va NOMANCOMPRESS .Pq Vt bool man ページのインストールの際に圧縮を行わない場合に設定します。 .It Va NOPERL .Pq Vt bool .Xr perl 1 をビルドしない場合に設定します。 .It Va NOPROFILE .Pq Vt bool profile 版ライブラリをコンパイルしない場合に設定します。 .It Va NOSECURE .Pq Vt bool .Pa secure サブディレクトリで crypto コードをビルドしない場合に設定します。 .It Va NOSHARE .Pq Vt bool .Pa share サブディレクトリをビルドしない場合に設定します。 .It Va NOUUCP .Pq Vt bool .Xr uucp 1 と関連プログラムをビルドしない場合に設定します。 .It Va PERL_THREADED .Pq Vt bool .Xr perl 1 をスレッドサポート機能込みでビルド・インストールする場合に設定します。 .It Va PPP_NOSUID .Pq Vt bool .Xr ppp 8 を suid root プログラムとしてはインストールしない場合に設定します。 .It Va SENDMAIL_MC .Pq Vt str インストール時に用いるデフォルトの m4 設定ファイルです。 この値には .Pa .mc ファイルのフルパスを与えます。例えば -.Pa /etc/mail/myconfig.mc。 +.Pa /etc/mail/myconfig.mc +です。 make install すると、既存の .Pa /etc/mail/sendmail.cf を上書きしてしまうので、注意して使ってください。 .Va SENDMAIL_CF はもう推奨されなくなりました。 +.It Va SENDMAIL_SUBMIT_MC +.Pq Vt str +インストール時に用いるメール提出用デフォルト m4 設定ファイルです。 +この値には +.Pa .mc +ファイルのフルパスを与えます。例えば +.Pa /etc/mail/mysubmit.mc +です。 +インストールによって既存の +.Pa /etc/mail/submit.cf +が上書きされてしまいますので、注意して使用してください。 .It Va SENDMAIL_ADDITIONAL_MC .Pq Vt str ビルド時に .Pa .cf ファイルに変換される追加分の .Pa .mc ファイル (複数指定可) です。 値には、これらの .Pa .mc ファイルへのフルパスを与えます。 例えば .Pa /etc/mail/foo.mc .Pa /etc/mail/bar.mc など。 .It Va SENDMAIL_M4_FLAGS .Pq Vt str .Pa .mc ファイルから .Pa .cf ファイルを作成するときに m4 に渡されるフラグ。 .It Va SENDMAIL_CFLAGS .Pq Vt str .Xr sendmail 8 をビルドするときにコンパイルコマンドに渡すフラグです。 .Va SENDMAIL_* 各フラグを用いれば、 SASL サポートをその設定と共に指定できます。 例えば次のようにします。 .Bd -literal -offset indent SENDMAIL_CFLAGS=-I/usr/local/include -DSASL SENDMAIL_LDFLAGS=-L/usr/local/lib SENDMAIL_LDADD=-lsasl .Ed .It Va SENDMAIL_LDFLAGS .Pq Vt str .Xr sendmail 8 をビルドするときに .Xr ld 1 コマンドに渡すフラグです。 .It Va SENDMAIL_LDADD .Pq Vt str .Xr sendmail 8 をビルドするときに .Xr ld 1 コマンドの末尾に追加するフラグです。 .It Va SENDMAIL_DPADD .Pq Vt str .Xr sendmail 8 をビルドするときに追加する依存関係です。 .It Va SENDMAIL_SET_USER_ID .Pq Vt bool 設定すると、 .Xr sendmail 8 をセットグループ ID ではなく root にセットユーザ ID したバイナリとしてインストールし、 .Pa /etc/mail/submit.{cf,mc} をインストールしません。 このフラグの使用は推奨できません。 可能であれば、 .Pa /etc/mail/README に書かれている代りの方法を採用すべきです。 .El .Pp 次のリストは、ドキュメントのビルドで用いられる変数の名前と簡単な説明です。 .Bl -tag -width Ar .It Va DISTDIR .Pq Vt str distfiles が保存されている場所です。 通常これは .Va PORTSDIR の .Pa distfiles です。 .It Va DOC_LANG .Pq Vt str ビルド・インストール対象の言語とエンコーディングのリストです。 .It Va PRINTERDEVICE .Pq Vt str システム文書のデフォルトのフォーマットです。 プリンタに依存します。 簡単なプリンタなら .Dq Li ascii に、PostScript プリンタや グラフィックスプリンタ + ghostscript フィルタなら .Dq Li ps に設定できます。 .El .Pp 次のリストは、ports のビルドで用いられる変数の名前と簡単な説明です。 .Bl -tag -width Ar .It Va FORCE_PKG_REGISTER .Pq Vt bool 既存の package (訳注: FreeBSD の package system におけるパッケージを指す場合にこう表記します) の登録情報を上書きする場合に設定します。 .It Va HAVE_MOTIF .Pq Vt bool システムに Motif がある場合に設定します。 .It Va KRB5_HOME .Pq Vt str MIT Kerberos5 の port を .Pa /usr/local 以外にインストールしたい場合に設定します。 .\"translator: "ports" で固有単語とみなすべき? .It Va LOCALBASE .Pq Vt str X 以外の ports をインストールする際のベースディレクトリを与えます。 これは .Pa /usr/ports でビルドを行う際に .Va PREFIX にデフォルト値として与えられます。 .It Va MASTER_SITE_AFTERSTEP .Pq Vt str AfterStep の ports のマスタサイトを変更します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_BACKUP .Pq Vt str .Pa Makefile にリストされている場所が使えない場合、 ports が distfile をチェックしに行く場所を制御します。 パスの最後の部分は .Dq Li /${DIST_SUBDIR}/ でなければなりません。 .It Va MASTER_SITE_COMP_SOURCES .Pq Vt str .Pa comp.sources ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li %SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_GNOME .Pq Vt str GNOME ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li %SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_GNU .Pq Vt str GNU ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li %SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_KDE .Pq Vt str KDE ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li %SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_FREEBSD .Pq Vt bool 設定されていると、すべてのファイルをマスタの .Fx サイトから取得します。 .It Va MASTER_SITE_MOZILLA .Pq Vt str Mozilla ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li %SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_OVERRIDE .Pq Vt str 設定されていると、ports の .Pa Makefile にリストされているサイトよりも先に、このサイトをチェックしに行きます。 次のようにすればバックアップサイトを先にチェックさせることができます。 .Bd -literal -offset indent MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP} .Ed .It Va MASTER_SITE_PERL_CPAN .Pq Vt str Perl ports のマスタサイトの場所を制御します。 パスの最後の部分は .\".Bd -literal -offset indent .\" /%SUBDIR%/ .\".Ed .Dq Li /%SUBDIR%/ でなければなりません。 .\"translator: ここの .Bd .Ed はコメントアウトしました。 .It Va MASTER_SORT_REGEX .Pq Vt str ミラーセットのソート順を制御する場合に設定します。 .Pa .jp ドメインのミラーを優先的に用いたければ、以下のような設定をします。 .Bd -literal -offset indent MASTER_SORT_REGEX?= ^file: ^ftp://ftp\.FreeBSD\.org/pub/FreeBSD/ports/local-distfiles/ ://[^/]*\.jp/ ://[^/]*\.jp\. .Ed .Pp 他の国別 TLD ドメインのユーザは、 .Dq Li jp を適切なドメインに変更してください。 .It Va MASTER_SITE_RINGSERVER .Pq Vt str Ringserver ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_RUBY .Pq Vt str Ruby ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_SUNSITE .Pq Vt str Sunsite ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_TCLTK .Pq Vt str Tcl/Tk ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_TEX_CTAN .Pq Vt str TeX ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_WINDOWMAKER .Pq Vt str WindowMaker ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_XCONTRIB .Pq Vt str X contrib の ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_XEMACS .Pq Vt str Xemacs ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MASTER_SITE_XFREE .Pq Vt str XFree ports のマスタサイトの場所を制御します。 パスの最後の部分は .Dq Li /%SUBDIR%/ でなければなりません。 .It Va MOTIFLIB .Pq Vt str .Pa libXm.a と .Pa libXm.so の場所です。 .It Va MOTIF_STATIC .Pq Vt bool Motif を用いる ports を、Motif の共有ライブラリを持たない システム上でも実行させたい場合に設定します。 .It Va NOCLEANDEPENDS .Pq Vt bool .Dq Li "make clean" によって clean される他の ports から依存されている ports を clean したくない場合に設定します。 .It Va NOPORTDOCS .Pq Vt bool ports と同時に追加ドキュメントをインストールしない場合に設定します。 .It Va PACKAGES .Pq Vt str package ターゲットのみに用いられます。 package ツリーのディレクトリです。 .It Va PATCH_SITES .Pq Vt str パッチファイルの配布をしている一次サイトの場所です。 .It Va PORTSDIR .Pq Vt str ports ツリーの場所です。 .It Va USA_RESIDENT .Pq Vt bool 米国居住者は設定してください。 設定すると、米国輸出規制に従う必要がある ports が、 この規制に従うようになります。 .It Va WITHOUT_X11 .Pq Vt bool 設定すると、X11 サポート有り無しの両方で構築可能な ports を、 デフォルトで X11 サポート無しで構築するようにします。 .It Va WRKDIRPREFIX .Pq Vt str ports をビルドする際に用いる一時ファイルを作成する場所です。 .It Va X11BASE .Pq Vt str X11 ディストリビューションを .Pa /usr/X11R6 以外の場所にインストールしたい場合、その場所を設定します。 .El .Sh 関連ファイル .Bl -tag -width /etc/defaults/make.conf -compact .It Pa /etc/defaults/make.conf .It Pa /etc/make.conf .It Pa /usr/doc/Makefile .It Pa /usr/src/Makefile .It Pa /usr/src/Makefile.inc1 .It Pa /usr/ports/Mk/bsd.port.mk .It Pa /usr/ports/Mk/bsd.sites.mk .El .Sh 関連項目 .Xr gcc 1 , .Xr install 1 , .Xr make 1 , .Xr ports 7 , .Xr lpd 8 , .Xr sendmail 8 .Sh 歴史 .Nm ファイルは .Fx 4.0 以前のいつかに登場しました。 .Sh 作者 このマニュアルページは .An "Mike W. Meyer" Aq mwm@mired.org が書きました。 .Sh バグ このマニュアルページは現在の .Nm で利用できるオプションに比べると、 古くなることが時々あるかもしれません。 現在利用できる最新のオプションについては、 .Pa /etc/defaults/make.conf ファイルを調べてください。 diff --git a/ja_JP.eucJP/man/man5/periodic.conf.5 b/ja_JP.eucJP/man/man5/periodic.conf.5 index d4bea76282..fbf8a3d6ff 100644 --- a/ja_JP.eucJP/man/man5/periodic.conf.5 +++ b/ja_JP.eucJP/man/man5/periodic.conf.5 @@ -1,707 +1,726 @@ .\"- .\" Copyright (c) 2000 Brian Somers .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/share/man/man5/periodic.conf.5,v 1.8.2.19 2002/02/25 10:54:04 cjc Exp % +.\" %FreeBSD: src/share/man/man5/periodic.conf.5,v 1.8.2.20 2002/04/15 01:50:19 gshapiro Exp % .\" .\" $FreeBSD$ .Dd June 22, 2000 .Dt PERIODIC.CONF 5 .Os .Sh 名称 .Nm periodic.conf .Nd 定期実行ジョブの設定情報 .Sh 解説 .Nm ファイルには、日次/週次/月次のシステムメンテナンスジョブを どのように実行するかが記述されています。 このファイルは .Pa /etc/defaults にあり、 .Pa /etc の下にある同名のファイルは部分的に優先されます。 そしてさらに .Pa /etc/periodic.conf.local が優先されます。 .Pp .Nm は実際にはそれぞれの定期実行スクリプトからシェルスクリプトとして 取り込まれ、単にデフォルトの設定変数を提供することを意図しています。 .Pp 以下の変数は .Xr periodic 8 自身によって使用されます: .Bl -tag -offset 4n -width 2n .It Va local_periodic .Pq Vt 文字列 定期実行スクリプトを検索するディレクトリのリスト。 このリストは .Xr periodic 8 の引数が絶対パスのディレクトリ名でなかった場合にのみ使用され、常に .Pa /etc/periodic が前置きされます。 .It Va dir Ns No _output .Pq Vt パス No または Vt リスト .Ar dir ディレクトリから起動されるスクリプトの出力をどうするか記述します。 この変数に絶対パスが指定された場合、出力はそのファイルに行われます。 絶対パスではなかった場合は、一つ以上のスペースで区切られた 複数のメールアドレスと解釈され、それらのユーザにメールで送られます。 この変数が設定されてない場合や変数が空であった場合は、 標準出力に出力されます。 .Pp それほど気にかけていないマシンでは .Va daily_output , .Va weekly_output , .Va monthly_output はそれぞれ .Dq /var/log/daily.log , .Dq /var/log/weekly.log , .Dq /var/log/monthly.log にしておくといいでしょう。すると .Xr newsyslog 8 が、(もしファイルがあれば) これらのファイルを適切な時に切替えます。 .It Va dir Ns No _show_success .It Va dir Ns No _show_info .It Va dir Ns No _show_badconfig .Pq Vt ブール値 これらの変数は 起動されたスクリプトの戻り値に従って、 .Xr periodic 8 が出力を抑制するかどうかを制御します (ここで .Ar dir はそれぞれのスクリプトが置かれてるディレクトリ名です)。 もしスクリプトの戻り値が .Sq 0 で、 .Va dir Ns No _show_success が .Dq NO に設定されていた場合、 .Xr periodic 8 はスクリプトの出力を抑制します。 もしスクリプトの戻り値が .Sq 1 で、 .Va dir Ns No _show_info が .Dq NO に設定されていた場合、 .Xr periodic 8 はスクリプトの出力を抑制します。 もしスクリプトの戻り値が .Sq 2 で、 .Va dir Ns No _show_badconfig が .Dq NO に設定されていた場合、 .Xr periodic 8 はスクリプトの出力を抑制します。 もしこれらの変数が .Dq YES にも .Dq NO にも設定されていなかった場合は、それぞれのデフォルト値は .Dq YES , .Dq YES そして .Dq NO です。 .Pp スクリプトの戻り値がどのように解釈されるかは .Xr periodic 8 のマニュアルページを参照して下さい。 .El .Pp 以下の変数は .Pa /etc/periodic/daily にある標準のスクリプトによって使用されます: .Bl -tag -offset 4n -width 2n .It Va daily_clean_disks_enable .Pq Vt ブール値 .Va daily_clean_disks_files にマッチしたファイルを毎日削除したい場合 .Dq YES にします。 .It Va daily_clean_disks_files .Pq Vt 文字列 マッチさせるファイル名のリストを設定します。 ワイルドカードも使用できます。 .It Va daily_clean_disks_days .Pq Vt 整数 .Va daily_clean_disks_enable が .Dq YES の場合、何日間ファイルにアクセスや修正がなかったら 削除するかをこの変数に設定する必要もあります。 .It Va daily_clean_disks_verbose .Pq Vt ブール値 削除したファイル名を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_clean_tmps_enable .Pq Vt ブール値 毎日一時ディレクトリをきれいにしたい場合 .Dq YES に設定します。 .It Va daily_clean_tmps_dirs .Pq Vt 文字列 .Va daily_clean_tmps_enable が .Dq YES に設定されていた場合にきれいにするディレクトリ名のリストを指定します。 .It Va daily_clean_tmps_days .Pq Vt 整数 .Va daily_clean_tmps_enable が設定されていた場合、何日間ファイルにアクセスや修正がなかったら 削除するかをこの変数に設定する必要もあります。 .It Va daily_clean_tmps_ignore .Pq Vt 文字列 .Va daily_clean_tmps_enable が .Dq YES に設定されていた場合に削除させたくないファイルのリストを設定します。 ワイルドカードも使用可能です。 .It Va daily_clean_tmps_verbose .Pq Vt ブール値 削除したファイル名を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_clean_preserve_enable .Pq Vt ブール値 .Pa /var/preserve から古いファイルを削除したい場合 .Dq YES に設定します。 .It Va daily_clean_preserve_days .Pq Vt 整数 何日間ファイルに修正がなかったら削除するかを この変数に設定します。 .It Va daily_clean_preserve_verbose .Pq Vt ブール値 削除したファイル名を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_clean_msgs_enable .Pq Vt ブール値 古いシステムメッセージを削除する場合 .Dq YES に設定します。 .It Va daily_clean_msgs_days .Pq Vt 整数 何日間ファイルに修正がなかったら削除するかを設定します。 この変数が空白だった場合、 .Xr msgs 1 のデフォルト値が使われます。 .It Va daily_clean_rwho_enable .Pq Vt ブール値 .Pa /var/who の下の古いファイルを削除したい場合 .Dq YES に設定します。 .It Va daily_clean_rwho_days .Pq Vt 整数 何日間ファイルに修正がなかったら削除するかを設定します。 .It Va daily_clean_rwho_verbose .Pq Vt ブール値 削除したファイル名を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_clean_hoststat_enable .Pq Vt ブール値 .Pa /var/spool/.hoststat の下の古いファイルを削除したい場合 .Dq YES に設定します。 .It Va daily_clean_hoststat_days .Pq Vt 整数 何日間ファイルに修正がなかったら削除するかを設定します。 .It Va daily_clean_hoststat_verbose .Pq Vt ブール値 削除したファイル名を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_backup_passwd_enable .Pq Vt ブール値 .Pa /etc/master.passwd ファイルと .Pa /etc/group ファイルのバックアップをとりリポートを出力させたい場合 .Dq YES に設定します。 リポートは、両ファイルに対する修正点と .Pa group ファイルに .Xr chkgrp 8 をかけた結果を出力します。 .It Va daily_backup_aliases_enable .Pq Vt ブール値 .Pa /etc/mail/aliases ファイルのバックアップをとり修正点を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_backup_distfile_enable .Pq Vt ブール値 .Pa /etc/Distfile ファイルのバックアップをとり修正点を日次の出力で報告させたい場合 .Dq YES に設定します。 .It Va daily_calendar_enable .Pq Vt ブール値 毎日 .Ic calendar -a を行いたい場合 .Dq YES に設定します。 .It Va daily_accounting_enable .Pq Vt ブール値 毎日アカウンティングファイルを 切り替えたい場合 .Dq YES にします。 .Xr rc.conf 5 の中の .Va accounting_enable が有効になっていない場合は切り替える必要はありません。 .It Va daily_accounting_compress .Pq Vt ブール値 日々のアカウンティングファイルを .Xr gzip 1 を使用して圧縮したい場合 .Dq YES に設定します。 .It Va daily_accounting_save .Pq Vt 数値 .Va daily_accounting_enable が設定されている場合、 保存すべき日々のアカウンティングファイル数を指定します。 デフォルトは .Dq 3 です。 .It Va daily_accounting_flags .Pq Vt 文字列 .Va daily_accounting_enable が .Dq YES に設定されていた場合に ( .Fl s に加えて) .Xr sa 8 ユーティリティに渡すフラグを指定します。 デフォルトは .Fl q です。 .It Va daily_distfile_enable .Pq Vt ブール値 毎日 .Xr rdist 1 を実行したい場合 .Dq YES に設定します。その場合 .Pa /etc/Distfile も存在していなければなりません。 .It Va daily_news_expire_enable .Pq Vt ブール値 .Pa /etc/news.expire を実行したい場合 .Dq YES に設定します。 .It Pa daily_uuclean_enable .Pq Vt ブール値 .Ic uustat -a を実行したい場合 .Dq YES に設定します。 .It Va daily_status_disks_enable .Pq Vt ブール値 ( .Va daily_status_disks_df_flags を引数に指定して) .Xr df 1 を実行し、また .Ic dump -W を実行したい場合 .Dq YES に設定します。 .It Va daily_status_disks_df_flags .Pq Vt 文字列 .Va daily_status_disks_enable が .Dq YES の場合、 .Xr df 1 ユーティリティに渡す引数を設定します。 .It Va daily_status_uucp_enable .Pq Vt ブール値 .\" 原文の /etc/uuclean.daily は誤りと思われる [man-jp-reviewer 3018], .\" docs/2267 .Ic uustat -a を実行したい場合 .Dq YES に設定します。 .It Va daily_status_network_enable .Pq Vt ブール値 .Ic netstat -i を実行したい場合 .Dq YES に設定します。 .It Va daily_status_network_usedns .Pq Vt ブール値 .Xr netstat 1 を実行する時、(DNS を参照するための) .Fl n オプションをつけずに実行したい場合 .Dq YES に設定します。 .It Va daily_status_rwho_enable .Pq Vt ブール値 .Xr uptime 1 を実行したい場合 (もしくは .Pa /etc/rc.conf の中で .Va rwhod_enable を .Dq YES に設定していて .Xr ruptime 1 を実行したい場合) .Dq YES に設定します。 .It Va daily_status_mailq_enable .Pq Vt ブール値 .Xr mailq 1 を実行したい場合 .Dq YES に設定します。 .It Va daily_status_mailq_shorten .Pq Vt ブール値 .Va daily_status_mailq_enable を .Dq YES に設定していて .Nm mailq の出力を短くしたい場合 .Dq YES に設定します。 +.It Va daily_status_include_submit_mailq +.Pq Vt ブール値 +.Va daily_status_mailq_enable +を +.Dq YES +に設定した場合で、提出用メールキューに対しても +.Xr mailq 1 +を実行したい場合、 +.Dq YES +に設定します。 .It Va daily_status_security_enable .Pq Vt ブール値 セキュリティチェック を実行したい場合 .Dq YES に設定します。 セキュリティチェックは、別の .Xr periodic 8 スクリプト集合です。 システムデフォルトは .Pa /etc/periodic/security にあります。 ローカルスクリプトは .Pa /usr/local/etc/periodic/security に置きます。 更なる情報は、 .Xr periodic 8 マニュアルページを参照してください。 .It Va daily_status_security_inline .Pq Vt ブール値 セキュリティチェック出力をその場に含めたい場合 .\" inline -> その場 .Dq YES に設定します。 デフォルトでは、 .Va daily_status_security_output の値に従い、出力をメールするかログします。 .It Va daily_status_security_output .Pq Vt 文字列 .Va daily_status_security_inline が .Dq NO である場合の、 セキュリティチェック の送信先です。 この変数は、前述の .Va *_output 変数と同様に振舞います。 すなわち、1 個以上の email アドレスか、1 個の絶対パス指定のファイル名です。 .It Va daily_status_security_chksetuid_enable .Pq Vt ブール値 setuid 実行形式のモードと修正時刻を前日の値と比較したい場合、 .Dq YES に設定します。 .It Va daily_status_security_chkmounts_enable .Pq Vt ブール値 マウントされたファイルシステムが前日と違うかどうかを比較したい場合、 .Dq YES に設定します。 .It Va daily_status_security_noamd .Pq Vt ブール値 .Va daily_status_security_chkmounts_enable チェックにおいて、 前日のファイルシステムのマウント状況と比較する時に .Xr amd 8 によるマウントを無視したい場合 .Dq YES に設定します。 .It Va daily_status_security_nomfs .Pq Vt ブール値 .Va daily_status_security_chkmounts_enable チェックにおいて、 前日のファイルシステムのマウント状況と比較する時に .Xr mfs 8 によるマウントを無視したい場合 .Dq YES に設定します。 .It Va daily_status_security_chkuid0_enable .Pq Vt ブール値 .Pa /etc/master.passwd を UID 0 に関して調査したい場合 .Dq YES に設定します。 .It Va daily_status_security_passwdless_enable .Pq Vt ブール値 .Pa /etc/master.passwd の空のパスワードのアカウントを調査したい場合 .Dq YES に設定します。 .It Va daily_status_security_ipfwdenied_enable .Pq Vt ブール値 前日のチェック以来の .Xr ipfw 8 が拒否したパケットのログエントリを表示する場合、 .Dq YES に設定します。 .Pq Vt ブール値 冗長限界に到達した .Xr ipfw 8 ルールを表示する場合、 .Dq YES に設定します。 .It Va daily_status_security_ip6fwdenied_enable .Pq Vt ブール値 前日のチェック以来の .Xr ip6fw 8 が拒否したパケットのログエントリを表示する場合、 .Dq YES に設定します。 .It Va daily_status_security_ip6fwlimit_enable .Pq Vt ブール値 冗長限界に到達した .Xr ip6fw 8 ルールを表示する場合、 .Dq YES に設定します。 .It Va daily_status_security_kernelmsg_enable .Pq Vt ブール値 前日のチェック以来の新規 .Xr dmesg 8 エントリを表示する場合、 .Dq YES に設定します。 .It Va daily_status_security_loginfail_enable .Pq Vt ブール値 .Pa /var/log/messages 中の前日のログイン失敗を表示する場合、 .Dq YES に設定します。 .It Va daily_status_security_tcpwrap_enable .Pq Vt ブール値 .Pa /var/log/messages 中の前日の tcpwrappers ( .Xr hosts_access 5 参照) が拒否した接続を表示する場合、 .Dq YES に設定します。 .It Va daily_status_mail_rejects_enable .Pq Vt ブール値 .Pa /var/log/maillog に記録された 前日分のメール拒否を要約したい場合 .Dq YES に設定します。 .It Va daily_status_named_enable .Pq Vt ブール値 前日文の拒否されたゾーン転送 (AXFR と IXFR) を要約したい場合 .Dq YES に設定します。 .It Va daily_status_named_usedns .Pq Vt ブール値 DNS の逆引き検索を有効にしたい場合 .Dq YES に設定します。 .It Va daily_status_mail_rejects_logs .Pq Vt 整数 前日分のメール拒否をチェックするべき maillog ファイルの数を設定します。 .It Va daily_queuerun_enable .Pq Vt ブール値 -Set to +最低 1 日に 1 度はメールキューを手動で実行させたい場合、 .Dq YES -if you want to manually run the mail queue at least once a day. +に設定します。 +.It Va daily_submit_queuerun +.Pq Vt ブール値 +.Va daily_queuerun_enable +を +.Dq YES +に設定した場合で、提出用メールキューに対しても最低 1 日に 1 度は +手動で実行したい場合、 +.Dq YES +に設定します。 .It Va daily_local .Pq Vt 文字列 他のすべての日次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。 .El .Pp 以下の変数は .Pa /etc/periodic/weekly にある標準のスクリプトによって使用されます: .Bl -tag -offset 4n -width 2n .It Va weekly_clean_kvmdb_enable .Pq Vt ブール値 古い .Pa /var/db/kvm_*.db ファイルを削除したい場合 .Dq YES に設定します。 現在のカーネルが使っている kvm ファイルは削除されません。 .It Va weekly_clean_kvmdb_days .Pq Vt 整数 何日間ファイルにアクセスがなかったら 削除するかをこの変数に設定する必要があります。 .It Va weekly_clean_kvmdb_verbose .Pq Vt ブール値 削除したファイル名を週次の出力で報告させたい場合 .Dq YES に設定します。 .It Va weekly_uucp_enable .Pq Vt ブール値 .Pa /usr/libexec/uucp/clean.weekly を実行したい場合 .Dq YES に設定します。 .It Va weekly_locate_enable .Pq Vt ブール値 .Pa /usr/libexec/locate.updatedb を実行したい場合 .Dq YES に設定します。このスクリプトは .An nobody ユーザとして .Ic nice -5 を使用して実行され、 .Xr locate 1 コマンドによって使われるテーブルを生成します。 .It Va weekly_whatis_enable .Pq Vt ブール値 .Pa /usr/libexec/makewhatis.local を実行したい場合 .Dq YES に設定します。このスクリプトは .Xr apropos 1 コマンドによって使われるデータベースを再生成します。 .It Va weekly_catman_enable .Pq Vt ブール値 .Pa /usr/libexec/catman.local を実行したい場合 .Dq YES に設定します。 このスクリプトはすべての古くなったマニュアルページを処理して、 ディスク容量を消費する代わりに .Xr man 1 コマンドを速くします。 .It Va weekly_noid_enable .Pq Vt ブール値 システム上でみなしごになったファイルを 探したい場合 .Dq YES に設定します。 みなしごになったファイルとは、 無効なユーザやグループのものとなっているファイルです。 .It Va weekly_noid_dirs .Pq Vt 文字列 みなしごになったファイルを探したいディレクトリのリストを 指定します。これは通常 .Pa / に設定されます。 .It Va weekly_status_pkg_enable .Pq Vt ブール値 インストールされているパッケージの中で 古くなったものを .Xr pkg_version 1 を使用して一覧にしたい場合 .Dq YES に設定します。 .It Va weekly_local .Pq Vt 文字列 他のすべての週次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。 .El .Pp 以下の変数は .Pa /etc/periodic/monthly にある標準のスクリプトによって使用されます: .Bl -tag -offset 4n -width 2n .It Va monthly_accounting_enable .Pq Vt ブール値 .Xr ac 8 コマンドによってログインのアカウンティング処理を行いたい場合 .Dq YES に設定します。 .It Va monthly_local .Pq Vt 文字列 他のすべての月次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。 .El .Sh 関連ファイル .Bl -tag -width /etc/defaults/periodic.conf .It Pa /etc/defaults/periodic.conf デフォルト設定ファイルです。 このファイルはすべてのデフォルトの変数と設定値が記述されています。 .It Pa /etc/periodic.conf 通常、システム特有の変数を優先させるためのファイルです。 .It Pa /etc/periodic.conf.local さらに追加して優先させるためのファイルで、 .Pa /etc/periodic.conf を共有していたり、配布していたりする場合に役立ちます。 .El .Sh 関連項目 .Xr apropos 1 , .Xr calendar 1 , .Xr df 1 , .Xr gzip 1 , .Xr locate 1 , .Xr man 1 , .Xr msgs 1 , .Xr netstat 1 , .Xr nice 1 , .Xr pkg_version 1 , .Xr rdist 1 , .Xr rc.conf 5 , .Xr ac 8 , .Xr amd 8 , .Xr chkgrp 8 , .Xr dump 8 , .Xr mfs 8 , .Xr newsyslog 8 , .Xr periodic 8 .Sh 歴史 .Nm ファイルは .Fx 4.1 で登場しました。 .Sh 作者 .An Brian Somers Aq brian@Awfulhak.org diff --git a/ja_JP.eucJP/man/man5/printcap.5 b/ja_JP.eucJP/man/man5/printcap.5 index d2d0cfb431..0e1474d717 100644 --- a/ja_JP.eucJP/man/man5/printcap.5 +++ b/ja_JP.eucJP/man/man5/printcap.5 @@ -1,390 +1,394 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)printcap.5 8.2 (Berkeley) 12/11/93 -.\" %FreeBSD: src/usr.sbin/lpr/lpr/printcap.5,v 1.16.2.7 2001/08/16 15:56:04 ru Exp % +.\" %FreeBSD: src/usr.sbin/lpr/lpr/printcap.5,v 1.16.2.9 2002/04/25 21:45:29 gad Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man5/printcap.5,v 1.12 2001/07/29 05:15:22 horikawa Exp $ +.\" $FreeBSD$ .Dd October 11, 2000 .Dt PRINTCAP 5 .Os .Sh 名称 .Nm printcap .Nd プリンタケーパビリティデータベース .Sh 書式 .Nm .Sh 解説 .Nm は、 ラインプリンタの記述に使われる .Xr termcap 5 を簡略化したものです。 スプールシステムは利用のたび毎に .Nm ファイルにアクセスするため、 プリンタを動的に追加したり削除することが可能です。 データベース中の各々のエントリが、1 台のプリンタを記述するのに使われます。 .Xr termcap 5 とは異なり、このデータベースは代替できません。 これは、アカウント情報がバイパスされてしまうことがあるからです。 .Pp デフォルトのプリンタは通常 .Em lp ですが、環境変数 .Ev PRINTER によって上書きすることもできます。 各スプーリングユーティリティはオプション .Fl P Ar printer をサポートし、出力先のプリンタ名を明示することが可能です。 .Pp あるプリンタに対するデータベースをセットアップする方法の詳細については、 .%T "4.3 BSD Line Printer Spooler Manual" を参照してください。 .Sh ケーパビリティ ファイルレイアウトの解説については .Xr termcap 5 を参照してください。 .Bl -column Namexxx Typexx "/var/spool/lpdxxxxx" .Sy "Name Type Default Description .It "af str" Ta Dv NULL Ta No "アカウンティングファイル名" .It "br num none lp が tty の場合、ボーレートを設定 " .Pf ( Xr ioctl 2 call) .It "cf str" Ta Dv NULL Ta No "cifplot データ用フィルタ" .It "ct num 120 TCP コネクションのタイムアウト時間(秒)" .It "df str" Ta Dv NULL Ta No "tex データ用フィルタ" .Pf ( Tn DVI フォーマット) .It "ff str" Ta So Li \ef Sc Ta No "フォームフィード送信文字" .It "fo bool false デバイスオープン時にフォームフィードを印字" .It "gf str" Ta Dv NULL Ta No "グラフデータフィルタ" .Pf ( Xr plot 3 フォーマット .It "hl bool false バーストヘッダページを最後に印刷" .It "ic bool false 字下げ出力の用の(非標準の) ioctl をサポートした ドライバ" .It "if str" Ta Dv NULL Ta No "アカウンティングを行うためのテキストフィルタ名" .It "lf str" Ta Pa /dev/console Ta No "エラーロギングファイル名" .It "lo str" Ta Pa lock Ta No "ロックファイル名" .It "lp str" Ta Pa /dev/lp Ta No "出力時にオープンするデバイス名" +.It "mc num" Ta 0 Ta Xr lpr 1 +で要求できる最大部数を指定します。0 = 制限なし。 .It "ms str" Ta Dv NULL Ta No "lp が tty の場合、コンマで区切ったリスト。" tty モード記述用の .Xr stty 1 リストに似ている。 .It "mx num 1000 最大ファイルサイズ (" .Dv BUFSIZ ブロック単位)。0 = 制限なし。 .It "nd str" Ta Dv NULL Ta No "キューのリスト用の次のディレクトリ (未実装)" .It "nf str" Ta Dv NULL Ta No "ditroff データ用フィルタ (device independent troff)" .It "of str" Ta Dv NULL Ta No "出力用フィルタリングプログラム名" .It "pc num 200 1 フィートまたは 1 ページあたりの 費用 (1/100 セント単位)" .It "pl num 66 1 ページの行数" .It "pw num 132 1 行の文字数" .It "px num 0 ピクセル単位のページ幅 (水平方向)" .It "py num 0 ピクセル単位のページ長 (垂直方向)" .It "rf str" Ta Dv NULL Ta No "" .Tn FORTRAN 形式のテキストファイル出力用フィルタ .It "rg str" Ta Dv NULL Ta No "グループ制限。許可されたグループのメンバのみアクセスが許可される" .It "rm str" Ta Dv NULL Ta No "リモートプリンタ名" -.It "rp str ``lp'' リモートプリンタ名引数" +.It "rp str" Ta Pa lp Ta No "リモートプリンタ名引数" .It "rs bool false ローカルにアカウントを持つリモートユーザに対する制限" .It "rw bool false プリンタデバイスを読み書き用にオープンする" .It "sb bool false 短いバナー (1 行のみ)" .It "sc bool false 複数コピーの抑制" .It "sd str" Ta Pa /var/spool/lpd Ta No "スプール ディレクトリ" .It "sf bool false フォームフィードの抑制" .It "sh bool false バーストページヘッダの出力抑制" .It "sr str" Ta Dv NULL Ta No "受信される各データファイルの統計情報を保持するファイル名" .It "ss str" Ta Dv NULL Ta No "送信される各データファイルの統計情報を保持するファイル名" .It "st str" Ta Pa status Ta No "状態ファイル名" .It "tf str" Ta Dv NULL Ta No "troff データ用フィルタ (cat phototypesetter)" .It "tr str" Ta Dv NULL Ta No "キューが空の時に印刷するトレイラ文字列" .It "vf str" Ta Dv NULL Ta No "ラスタイメージ用フィルタ" .El .Pp 2 文字のケーパビリティは、別の読み易い名前があります。 .Bl -column "短い形式" "長い形式" .Sy "短い形式 長い形式" .It "af acct.file" .It "br tty.rate" .It "cf filt.cifplot" .It "ct remote.timeout" .It "df filt.dvi" .It "du daemon.user" .It "ff job.formfeed" .It "fo job.topofform" .It "gf filt.plot" .It "hl banner.last" .It "if filt.input" .It "lf spool.log" .It "lo spool.lock" .It "lp tty.device" .It "mc max.copies" .It "ms tty.mode" .It "mx max.blocks" .It "nf filt.ditroff" .It "of filt.output" .It "pc acct.price" .It "pl page.length" .It "pw page.width" .It "px page.pwidth" .It "py page.plength" .It "rf filt.fortran" .It "rg daemon.restrictgrp" .It "rm remote.host" .It "rp remote.queue" .It "rs daemon.restricted" .It "rw tty.rw" .It "sb banner.short" .It "sc job.no_copies" .It "sd spool.dir" .It "sf job.no_formfeed" .It "sh banner.disable" .It "sr stat.recv" .It "ss stat.send" .It "st spool.status" +.It "tf filt.troff" .It "tr job.trailer" .It "vf filt.raster" .El .Pp ローカルラインプリンタのドライバが字下げをサポートしているならば、 プリンタデーモンはその使い方を理解しなければなりません。 .Sh フィルタ .Xr lpd 8 デーモンは .Em filters のパイプラインを作成し、さまざまなタイプのプリンタ用に処理を行います。 フィルタは .Xr lpr 1 へ渡されるフラグに応じて選択されます。 パイプラインは次のように設定されます。 .Bd -literal -offset indent p pr | if 通常テキスト + pr(1) none if 通常テキスト c cf cifplot d df DVI (tex) g gf plot(3) n nf ditroff f rf Fortran t tf troff v vf ラスタイメージ .Ed .Pp .Sy if フィルタは次の引数をとります。 .Bd -ragged -offset indent .Cm if .Op Fl c .Fl w Ns Ar width .Fl l Ns Ar length .Fl i Ns Ar indent .Fl n Ar login .Fl h Ar host acct-file .Ed .Pp .Fl c フラグは .Fl l フラグ (コントロール文字をそのまま通過させます) が .Xr lpr 1 に指定された場合のみ渡されます。 .Ar width 機能と .Ar length 機能はページ幅とページ長を (それぞれ .Cm pw と .Cm pl によって) 文字単位で指定します。 .Fl n と .Fl h パラメータでそれぞれのジョブの所有者のログイン名とログイン先ホスト名を 指定します。 .Ar acct-file 機能は .Nm の .Cm af エントリがそのまま使われます。 .Pp .Cm if が指定されなかった場合、 .Cm of が代わりに使われます。 .Cm of は .Cm if が個々のジョブ毎にオープンされるのに対して、たった 1 回だけ オープンされると言う特徴を持っています。 そのため、アカウンティングを行うには .Cm if の方が向いています。 .Cm of には、 .Ar width と .Ar length フラグのみが与えられます。 .Pp その他の全てのフィルタは次のように呼び出されます。 .Bd -ragged -offset indent .Nm filter .Fl x Ns Ar width .Fl y Ns Ar length .Fl n Ar login .Fl h Ar host acct-file .Ed .Pp .Ar width と .Ar length はピクセル単位で表され、それぞれ .Cm px と .Cm py エントリで指定されます。 .Pp 全てのフィルタはファイルを .Em stdin から読み込み .Em stdout からの出力をプリンタに送られ、 .Em stderr または .Xr syslog 3 がログ出力に使われます。 フィルタは .Dv SIGINT を無視してはいけません。 .Sh リモートプリンティング .Cm rm を使用してリモートプリンタに印刷する時、 .Cm if または .Cm of を使用できます。両方を指定した場合、 .Cm of は無視されます。 どちらのフィルタも同様に振舞いますが、上述の通り異なった引数を渡されます。 特に、出力フィルタはファイルが転送されるたびに、停止・再起動されます。 このように動作することが必要な理由は、フィルタを通した結果の大きさをリモート .Xr lpd 8 に渡すためです。 .Pp .Fl p フラグが .Xr lpr 1 に渡されると、 .Xr pr 1 はローカルでは実行されませんが、リモートの .Xr lpd 8 に対して要求されます。それゆえ、 .Cm if を介したフィルタリングは、 .Xr pr 1 が実行される後ではなく前に実行されることになります。 .Pp .Cm lp が .Em port Ns No @ Ns Em machine で指定された場合 (そして .Cm rm が使用されない場合)、印刷は指定された .Em machine の指定された .Em port に直接転送されます。 .Sh 転送の統計情報 印刷ジョブがリモートマシン (他の UNIX ボックスかもしれませんしネットワークプリンタかもしれません) に転送されるとき、各転送の統計情報を保持することが有効かもしれません。 .Cm sr および .Cm ss のオプションは、lpd がこのような統計情報を保持するためのファイル名を示します。 ジョブの統計情報の行が各データファイルに書き込まれるのは、 ファイルの転送に成功したときです。 行の書式は、転送における送信側と受信側とで、同一です。 .Pp ジョブを送ってくる種々のマシンとプリントサーバ間のネットワーク性能に 興味がある場合、 受信データファイルの統計情報をプリントサーバで使えるかもしれません。 プリントサーバは、印刷ジョブがサーバに届くたびに、 各印刷ジョブの速度の統計情報を集めることができます。 .Pp 誰がどのジョブをリモートプリンタに送ったのか、 何時送られたのか、そしてファイルの (バイト数での) 大きさはどのくらいだったか について知りたい場合、送信データファイルの統計情報を 最小のアカウンティング記録として使えるかもしれません。 しかし、何ページ印刷したのかといった情報は一切含みません。 なぜなら、 そのような情報をリモート (ネットワーク) プリンタから得るための標準的な方法が 存在しないためです。 .Sh ロギング ラインプリンタプログラム自身 (つまり .Xr lpd 8 とそれに関連するプログラム) が生成したエラーメッセージは、 .Xr syslog 3 の .Dv LPR ファシリティを使ってロギングされます。 フィルタの 1 つから .Em stderr に出力されたメッセージは、対応する .Cm lf で指定されたファイルに送られます。 当然、フィルタ自身もまた .Xr syslogd 8 を使うことがあるかも知れません。 .Pp コンソールに送られるエラーメッセージには、ラインフィードだけではなく キャリッジリターンとラインフィードが追加されます。 .Sh 関連項目 .Xr lpq 1 , .Xr lpr 1 , .Xr lprm 1 , .Xr hosts.lpd 5 , .Xr termcap 5 , +.Xr chkprintcap 8 , .Xr lpc 8 , .Xr lpd 8 , .Xr pac 8 .Rs .%T "4.3 BSD Line Printer Spooler Manual" .Re .Sh 歴史 .Nm ファイルフォーマットは .Bx 4.2 から登場しました。 diff --git a/ja_JP.eucJP/man/man6/morse.6 b/ja_JP.eucJP/man/man6/morse.6 index fff889e91a..4a1308004e 100644 --- a/ja_JP.eucJP/man/man6/morse.6 +++ b/ja_JP.eucJP/man/man6/morse.6 @@ -1,177 +1,177 @@ .\" Copyright (c) 2000 Alexey Zelkin. All rights reserved. .\" Copyright (c) 1988, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)bcd.6 8.1 (Berkeley) 5/31/93 -.\" %FreeBSD: src/games/morse/morse.6,v 1.4.2.5 2002/03/12 17:45:15 phantom Exp % +.\" %FreeBSD: src/games/morse/morse.6,v 1.4.2.6 2002/04/21 23:42:59 keramida Exp % .\" $FreeBSD$ .\" .Dd December 7, 2000 .Dt MORSE 6 .Os .Sh 名称 .Nm morse .Nd 入力をモールス符号に変換する .Sh 書式 .Nm .Op Fl p .Op Fl d Ar device .Op Fl e .Op Fl w Ar speed .Op Fl f Ar frequency .Op Fl s .Op Ar string ... .Sh 解説 コマンド .Nm は入力を読み取り、モールス符号に変換します。 受け付ける入力はコマンドライン引数か標準入力です。 .Pp 利用可能なオプションは以下の通りです: .Bl -tag -width flag .It Fl s .Fl s オプションは、語 (dit, dah) ではなく、ドット (`.') とダッシュ (`-') を 出力します。 .\" (dit, dah), (`.'), (`-') は訳注として追加した([man-jp-reviewer 2608])。 .\" 2000/6/5 mitchy@er.ams.eng.osaka-u.ac.jp .It Fl p モールス符号を実際に出力します。 システムが .Xr speaker 4 をサポートしている場合のみ、動作します。 .It Fl w Ar speed 出力速度を指定した語/分に設定します。 指定しない場合はデフォルト速度の 20 語/分になります。 .It Fl f Ar frequency サイドトーンの周波数をデフォルトの 600 Hz からそれ以外に設定します。 .It Fl d Ar device .Fl p と似ていますが、音ではなく .Ar device の RTS 信号を利用します。 モールス符号を発するためには、 .Ar device は tty デバイスでなくてはいけません。 .It Fl e .Fl p や .Fl d と同時に指定すると、文字を送出前にエコーバックします。 .El .Pp .Fl w と .Fl f フラグは .Fl p あるいは .Fl d フラグが指定されている場合のみ有効です。 .Pp 全ての代理符号に、対応する文字があるというわけではありません。 .Ql # は .Em AS に対応し、 .Ql @ は に対応し、 .Ql * は .Em VE に対応し、 .Ql % は .Em BK に対応します。 より一般的な代理符号としては、 .Ql = は .Em BT に対応し、 .Ql \&( は .Em KN に対応し、 .Ql + は .Em AR に対応します。 .Pp フラグ .Fl d Ar device を用いることで、練習のためのヘッドフォン付きのサイドトーンジェネレータ や、ハムのトランシーバといった外部デバイスをキーイングすることが可能です。 後者については、NPN トランジスタを、 .Ar device のシリアルポートに繋ぎます。エミッタはグラウンドに、ベースは抵抗 (数キロ オーム) を通して RTS に、コレクタをトランシーバのキー入力に繋ぎます (トランシーバが正の電圧を供給しており、キー入力をグラウンドに繋ぐこと でキーイング出来ると仮定しています)。不要な RF を防ぎ、プログラム開始 時の小さなグリッチを抑制するために、コンデンサ (数ナノファラッド) を ベースとグラウンドの間にいれることを、お勧めします。 .Sh 関連ファイル .Bl -tag -width /dev/speaker -compact .It Pa /dev/speaker スピーカデバイスファイル .El .Sh 環境変数 .Ev LC_CTYPE ロケールコードセットが .Ql KOI8-R の場合、 最上位ビットがセットされている文字はキリル文字として解釈されます。 .Ev LC_CTYPE ロケールコードセットが .Ql ISO8859-1 互換の場合、 .Ql ISO8859-1 文字セットの文字として解釈されます。 .Sh 関連項目 .Xr speaker 4 .Sh 歴史 .Nm の サウンドサポートは .An Lyndon Nerenberg (VE7TCP/VE6BBM) Aq lyndon@orthanc.com が追加しました。 .Pp 外部デバイスをキーイングする機能は、 .An J\(:org Wunsch (DL8DTL) によって追加されました。 .Sh バグ 少数のヨーロッパ文字 (ドイツ語とフランス語) のみ理解しますが、 アジアの言語とコンチネンタルランドライン符号 (continental landline code) は理解しません。 .Pp システムオーバヘッドのため、出力速度が実際の値よりちょっと遅いです。 これを仕様だと言う人がいても不思議ではないかも知れません。 diff --git a/ja_JP.eucJP/man/man7/firewall.7 b/ja_JP.eucJP/man/man7/firewall.7 index 4fff2ea93a..7f3df221a5 100644 --- a/ja_JP.eucJP/man/man7/firewall.7 +++ b/ja_JP.eucJP/man/man7/firewall.7 @@ -1,365 +1,365 @@ .\" Copyright (c) 2001, Matthew Dillon. Terms and conditions are those of .\" the BSD Copyright as specified in the file "/usr/src/COPYRIGHT" in .\" the source tree. .\" -.\" %FreeBSD: src/share/man/man7/firewall.7,v 1.1.2.4 2001/08/17 13:08:49 ru Exp % -.\" $FreeBSD: doc/ja_JP.eucJP/man/man7/firewall.7,v 1.1 2001/09/23 02:15:44 horikawa Exp $ +.\" %FreeBSD: src/share/man/man7/firewall.7,v 1.1.2.5 2002/04/22 00:14:19 keramida Exp % +.\" $FreeBSD$ .Dd May 26, 2001 .Dt FIREWALL 7 .Os .Sh 名称 .Nm firewall .Nd FreeBSD で動作する簡単なファイアウォール .Sh ファイアウォールの基礎 ファイアウォールは一般に、外部から行われるネットワーク内部への不正なアクセス を防ぐために使われます。また、LAN 内だけでサービスされるべき NFS や SMBFS のようなサービスに対して、内部の IP アドレスを偽装して外部から行わ れる攻撃を防ぐためにも用いられます。 .Pp また、 .Fx のファイアウォール機構は、 .Xr dummynet 4 を用いた帯域制限を行うこともできます。この機能は特に重要な目的のために 帯域幅を保証したい場合などに有効でしょう。たとえば、オフィスの T1 (1.5Mbps) を用いてビデオ会議を行う場合に、他の通信を 1Mbps までに押えて、 ビデオ会議用のコネクションに最低でも 0.5Mbps を確保することができます。 また同様に、共用機器で有名なウェブサイトや FTP サイトを運用している場合には、 プロバイダからの高額な帯域課金を避けるために使うこともできます。 .Pp それから、 .Fx のファイアウォール機構はパケットが正しい到達先に行くようにパケットを divert したり、次のホップのアドレスを変更したりすることもできます。 パケットの divert は主に、プライベート IP アドレス空間から外部へのブラウズなど のアクセスを可能にする NAT (ネットワークアドレス変換) を実現するために 用いられます。 .Pp ファイアウォールを構築することは簡単なようですが、多くの人が間違いを犯し ています。最も多い間違いは、包括的なファイアウォールでなく、 排他的なファイアウォールを作ってしまうことです。排他的なファイアウォールは、 ルールセットに適合しなかったすべてのパケットを通過させるもので、 包括的なファイアウォールはルールセットにマッチしたパケットだけを通過させます。 包括的なファイアウォールのほうが、排他的なものよりもはるかに安全ですが、 正しく動くものを 作るのが難しくなります。次に多い間違いは、通過させたくないものすべてを 廃棄してしまうことです。TCP/IP が正常に動作するためには、 たとえば MTU ディスカバリの実装のように、 いくつかの ICMP エラーを必要とします。 同様に、多くのデーモンは、コネクションを要求するユーザを認証するために、 .Sy auth サービスに逆向きのコネクションを張ります。auth は危険ですが、正しい対応 はただパケットを廃棄するのでなく、TCP reset を返すようにすることです。 以下で示す、ファイアウォールのサンプルではこれらの事項を満たすように してあります。 .Sh IPFW を使うためのカーネルの設定 .Fx のファイアウォール機能を使用するためには、 .Sy IPFIREWALL オプションの入ったカスタムカーネルを構築する必要があります。 このファイアウォールは、何も設定しないとすべてのパケットを通過させないように なっています。 .Em /etc/rc.conf で、再起動時に適切なルールセットを読み込むようになっていないと、 コンソールに触ることができない場合、マシンにアクセスすらできなくなります。 また、新しいリリースのカーネルに更新する時に、 バイナリ (訳注: コマンドやライブラリのこと) を更新する前に リブートを実行してしまうことがよくあります。 この結果 .Xr ipfw 8 とカーネルが非互換になってしまい、ブートシーケンスで .Xr ipfw 8 が動作しないことにより、マシンにアクセスできなくなってしまいます。 このために、 .Sy IPFIREWALL_DEFAULT_TO_ACCEPT というカーネルオプションが用意されており、これによってファイアウォールの 初期状態をすべてのパケットを通過させる設定にすることができます。 しかし、 このオプションを設定することは、システムが起動するまでの間を危険にさらす ことになります。 本オプションの使用は、 .Fx ファイアウォールに十分慣れるまでの期間に限定すべきです。 どのように動作するかすべて分かったら、これを削除して、抜け穴を塞いてください。 第 3 のオプションとして、 .Sy IPDIVERT があります。これは、ファイアウォールがパケットをユーザプログラムに divert することができるようにするもので、 .Xr natd 8 によって、プライベートネットワークから外部へアクセスできるようにするとき に必要です。 トラフィックタイプによる帯域制限には、 .Em ipfw pipe ルールを有効にするために、 .Sy DUMMYNET オプションが必要です。 .Sh IPFW によるファイアウォールの例 ここに示すのは、3 つのインタフェースカードをもつマシンで動作している ipfw ベースのファイアウォールの例です。 fxp0 が「外側の」LAN に接続されています。 この LAN 上のマシンは、10. で始まる内部 IP アドレスと、 インターネットにルーティングされる IP アドレスを持ち、 デュアルホームとなっています。 たとえば、 192.100.5.x がインターネットにルーティングされる IP ブロックを指し、 10.x.x.x が内部ネットワークを指します。 例として適切ではないかもしれませんが、 10.0.1.x が fxp0 の接続されている LAN のアドレス、 10.0.2.x が fxp1 の接続されている LAN のアドレス、 そして 10.0.3.x が fxp2 のものであるとします。 .Pp この例では、3 つの LAN すべてをインターネットから隔離し、またそれぞれを も隔離したいものとします。同時に、すべての内部アドレスから、この マシンで走っている NAT ゲートウェイを経由してインターネットへアクセスが 可能であるようにします。NAT ゲートウェイを動作させるためには、fxp0 に 内部アドレスの 10. のほかに、インターネットから見えるアドレスを持たせる 必要があります。このアドレス (ここでは示していません) が、このマシンの 公式なアドレスであり、もうひとつの外部から見えるアドレス (この例では 192.100.5.5 です) が NAT ゲートウェイとしてのアドレスとなります。 この例は、外部から見える LAN のマシンにも内部アドレス 10.0.0.x を割り当てること によって、すこし複雑になっています。しかしこの方法によって、 内部サービスは内部アドレスにのみバインドし、インターネットから守れます。 外から見える IP アドレスにバインドする サービスは、インターネットに対して公開しようとするものだけにするのです。 .Pp この例では、ネットワーク 10.0.0.x はファイアウォールによって保護されてい ません。このネットワークを外部からのアドレス偽装から守るために、 インターネットルータによる保護を確認して下さい。 また例では、外部から見えるホストが 内部 IP アドレスを通じてサービスを操作する場合、 内部のネットワークに非常に自由にアクセス可能としています。 この方法にはいくらかのセキュリティ上の危険が伴っており、 外部から見えるホストに問題がある場合には何が起きるかわかりません。 この危険を回避するためには、ルール 01010 と 01011 を削除して、 LAN0 経由で入ってくるものすべてを firewall を経由するようにするべきです。 .Pp また、この例では内部アドレス空間を使うことがファイアウォールによる保護機構 の重要な点であることに着目してください。適切なアドレス偽装対策を行うこ とにより、外部から、内部 (LAN1 および LAN2) のホストに直接アクセスするこ とは不可能となります。 .Bd -literal # /etc/rc.conf # firewall_enable="YES" firewall_type="/etc/ipfw.conf" # ファイアウォールを通過する一時的なポート割り当ての範囲を設定 # # 注意 : ファイアウォールを通じて行われるサービスの負荷が高い場合には、 # より広いポート割当の範囲を必要とすることになります。そのような際には # 4000-10000 や 4000-30000 がより良い選択でしょう。 ip_portrange_first=4000 ip_portrange_last=5000 \&... .Ed .Pp .Bd -literal # /etc/ipfw.conf # # FIREWALL: ファイアウォール兼 NAT ゲートウェイ # LAN0 10.0.0.X と 192.100.5.X (デュアルホーム) # LAN1 10.0.1.X # LAN2 10.0.2.X # sw: イーサネットスイッチ (管理対象外) # # 192.100.5.x は、インターネットから見える IP アドレス (インターネットから # ルーティングされる) を意味します。10.x.x.x は、内部 IP アドレス # (外からは見えない) を表します。 # # [LAN1] # ^ # | # FIREWALL -->[LAN2] # | # [LAN0] # | # +--> 外側のホスト A # +--> 外側のホスト B # +--> 外側のホスト C # | # インターネットルータ (2 番目のファイアウォール) # | # [インターネット] # # 注意! ここには書かれていませんが、インターネットルータは発信元アドレスが # 10. であるパケットを許可しないように設定される必要があります。 # これは、デュアルホームの 10.0.0.x ブロックを保護するためです。 # そうでなければ、外部から見えるホストは、この例では守られていません。 # これらのホストは、外部に見せるサービスのみを外部から見えるアドレスに # バインドすべきです。内部サービスは、安全に内部アドレスにバインド可能です。 # # NAT ゲートウェイは、内部の IP アドレスから外部の IP アドレスへ # 向けて送られるパケットを、ポート 8668 で listen している natd に転送す # ることによって動作します。この動作はルール 00300 によって指定されています。 # 外界から natd に返ってくるパケットも同様に、ルール 00301 によって natd に # 送られます。この例で興味深いのは、外に見せているホストへの内部からの # リクエストは、natd (ルール 00290) を通す必要がないということです。 # これは、外部に見せているホストも内部の 10. ネットワークのことがわかるので # 可能であり、natd の負荷を軽減することができます。内部のトラフィックも # natd を通す必要がありません。これらのホストは、内部の 10. ネットワークの # ルーティングのことがわかるためです。 # /etc/rc.local からは、natd は以下のように起動されます。 # natd のカーネル組み込み型のバージョンである ipnat についても参照してく # ださい。 # # natd -s -u -a 208.161.114.67 # # add 00290 skipto 1000 ip from 10.0.0.0/8 to 192.100.5.0/24 add 00300 divert 8668 ip from 10.0.0.0/8 to not 10.0.0.0/8 add 00301 divert 8668 ip from not 10.0.0.0/8 to 192.100.5.5 # 高い帯域のアクセスがルールセット全体を通過していくのを防ぐためのショート # カットルールを設定します。すでに確立されている TCP コネクションはそのまま # 通し、また外へ出るパケットも同様にします。ファイアウォールを通す # のは入力パケットだけにします。 # # 確立された TCP コネクションをそのまま通してしまうことは小さなセキュリティ # ホールになりますが、ファイアウォールの過剰な負荷を避ける意味で必要 # になることもあります。もし心配ならばこのルールを、アドレス偽装チェック # のうしろに移動することもできます。 # add 01000 allow tcp from any to any established add 01001 allow all from any to any out via fxp0 add 01001 allow all from any to any out via fxp1 add 01001 allow all from any to any out via fxp2 # アドレス偽装防止のルールです。これは、内部ネットワークのパケットを # どれくらい信頼するかによって変わってきます。fxp1 を経由するパケットは必ず、 # 10.0.1.x からのものでなければなりません。fxp2 を経由するもの # は 10.0.2.x からです。fxp0 を経由するものが LAN1 や LAN2 ブロックから # のものであることもあり得ません。ここでは 10.0.0.x を保護することはでき # ないので、ルータを適切に設定する必要があります。 # add 01500 deny all from not 10.0.1.0/24 in via fxp1 add 01500 deny all from not 10.0.2.0/24 in via fxp2 add 01501 deny all from 10.0.1.0/24 in via fxp0 add 01501 deny all from 10.0.2.0/24 in via fxp0 # この例のルールセットでは、内部ホスト間には何の制約も設けていません。 # 外部から見える LAN 上のホストであっても、内部 IP アドレスを使用する # 限りにおいてはそうです。これはセキュリティホールになる可能性があります # (外部から見えるホストに何かがあったらどうなるでしょうか ?)。これら # 3 つの LAN の間の通信を完全に制限したいのであれば、以下のふたつのルール # を削除してください。 # # LAN1 と LAN2 を孤立させて、しかし外部から見えるホスト間の自由なアクセスを # 許したければ、ルール 01010 だけを削除して、01011 は残して下さい。 # # (コメントアウトしてありますが、より制約の少ないファイアウォールにする # 場合はこれらを有効にしてください) #add 01010 allow all from 10.0.0.0/8 to 10.0.0.0/8 #add 01011 allow all from 192.100.5.0/24 to 192.100.5.0/24 # # 特定の LAN からは特定のサービスへのアクセスを許可する場合 # # より制約の強いファイアウォールを使う場合には、特定の LAN からファイア # ウォール上で動作している特定のサービスにアクセスできるようにすることに # なります。この例では、LAN1 がファイアウォール上で動いているファイル共有 # を必要とすると仮定します。もし、ルール 01010 が有効になっているような、 # 制約の緩いファイアウォールであればこれらのルールは不要です。 # add 01012 allow tcp from 10.0.1.0/8 to 10.0.1.1 139 add 01012 allow udp from 10.0.1.0/8 to 10.0.1.1 137,138 # 内部と外部の LAN の横断を許可する一般的なサービス # # DNS 参照、ntalk, ntp といった特定の UDP サービスは通過させます。 # 内部サービスはアドレス偽装不可の内部アドレス (10. ネット) を持つことにより # 保護されているので、これらのルールは外部から見える IP アドレスにバインド # されているサービスに対してのみ意味を持ちます。また、UDP フラグメントは # 許可する必要があります。そうしないと、フラグメントされるような大きな # UDP パケットはファイアウォールを通過できません。 # # DNS 参照に対する応答など、大きなポート番号を用いた一時的なサービスを # 行う必要があるかもしれません。この例ではそのようなポート番号を # 4000-65535 としています。外部から見える全マシンが一時ポートをこの # 外部から見えるポートにバインドするように、/etc/rc.conf の変数で設定 # しています (上の、rc.conf の例を参照してください)。 # add 02000 allow udp from any to any 4000-65535,domain,ntalk,ntp add 02500 allow udp from any to any frag # 同様のサービスを TCP についても許可します。ここでも、外部から見える # アドレスにバインドするサービスにのみ適用されます。また、この例では # 'auth' を通過させていますが、実際には外部から見えるポートでは identd # を動作させていません。これによって、auth 要求を受け取ったマシンは # TCP RESET を発行します。パケットを捨ててしまうと、ident 参照を行ってくる # サービスへの接続の遅延の原因となります。 # # TCP フラグメントを許可していないことに注意して下さい。UDP 以外では、 # 一般にフラグメントを許さないのです。TCP の、MTU ディスカバリプロトコル # が正しく動作して、TCP フラグメントが存在しないものと期待しています。 # add 03000 allow tcp from any to any http,https add 03000 allow tcp from any to any 4000-65535,ssh,smtp,domain,ntalk add 03000 allow tcp from any to any auth,pop3,ftp,ftp-data # いくつかのタイプの ICMP を通過させることは重要です。 # # 0 エコーリプライ # 3 到達不能 # 4 始点抑制 (通常は許可されません) # 5 リダイレクト (通常は許可されません。危険です !) # 8 エコー # 11 時間超過 # 12 パラメータ問題 # 13 タイムスタンプ # 14 タイムスタンプリプライ # # 状況によってはタイプ 5 の ICMP リダイレクトパケットを許可しなければな # らない場合がありますが、そのような場合にはインターネットルータでそれが # 禁止されていることを確認して下さい。 # add 04000 allow icmp from any to any icmptypes 0,5,8,11,12,13,14 # ここまで通って残ったフラグメントのログをとります。役にたつかもしれ # ませんが、邪魔なだけかもしれません。最後の deny ルールは、カーネルの設定 # がどうであっても、ファイアウォールが包括的なものであることを保証する # ものです。 # add 05000 deny log ip from any to any frag add 06000 deny all from any to any .Ed .Sh 内部向け、外部向けサービスのポートバインディング マルチホームなホストで、サービスをどちらのアドレスにバインドするかという ことについて触れましたが、説明はしていません。複数の IP アドレスを持つホ ストでは、それぞれのサービスをすべての IP アドレスにバインドするのではな く、特定の IP アドレスやインタフェースにバインドすることが可能です。た とえばこの例のファイアウォールマシンには、インタフェースが 3 つあり、 その 1 つには 2 つの外部から見える IP アドレスがあるので、このマシンには 5 つの IP アドレス (10.0.0.1, 10.0.1.1, 10.0.2.1, 192.100.5.5, 192.100.5.1) があることになります。Windows の LAN セグメント (LAN1 とします) に対してファイル共有サービスを提供するのであれば、samba の 'bind interfaces' という設定項目で、LAN1 の IP アドレスにだけ samba をバインドできます。 こうすることで、他の LAN セグメントではこのファイル共有サービスを利用 できなくなります。また、LAN2 に UNIX エンジニアリングワークステーション があれば、nfsd を 10.0.2.1 にバインドするように設定することで NFS でも同様 のことができます。どのサービスをどのようにバインドするかはほとんどの場合 に指定できますし、またそれが指定できない場合には .Xr jail 8 を使うことによって、間接的にそれを行うこともできます。 .Sh 関連項目 .Xr ipnat 1 , .Xr dummynet 4 , .Xr ipnat 5 , .Xr rc.conf 5 , .Xr smb.conf 5 [ /usr/ports/net/samba ] , .Xr samba 7 [ /usr/ports/net/samba ] , .Xr config 8 , .Xr ipfw 8 , .Xr jail 8 , .Xr natd 8 , .Xr nfsd 8 .Sh 関連文書 .Xr ipf 5 , .Xr ipf 8 , .Xr ipfstat 8 .Sh 歴史 .Nm マニュアルページは最初、 .An Matthew Dillon によって書かれ、2001 年 5 月に .Fx 4.3 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man8/Makefile b/ja_JP.eucJP/man/man8/Makefile index 94629cd9fc..4bade4f1da 100644 --- a/ja_JP.eucJP/man/man8/Makefile +++ b/ja_JP.eucJP/man/man8/Makefile @@ -1,349 +1,348 @@ # $FreeBSD$ MAN8 = IPXrouted.8\ MAKEDEV.8\ ac.8\ accton.8\ adding_user.8\ adduser.8\ adjkerntz.8\ amd.8\ amq.8\ ancontrol.8\ apm.8\ apmd.8\ arp.8\ atm.8\ atmarpd.8\ atrun.8\ badsect.8\ boot0cfg.8\ boot_i386.8\ bootparamd.8\ bootpd.8\ bootpef.8\ bootptest.8\ btxld.8\ burncd.8\ camcontrol.8\ ccdconfig.8\ chat.8\ chkgrp.8\ chkprintcap.8\ chown.8\ chroot.8\ clri.8\ comcontrol.8\ comsat.8\ config.8\ crash.8\ cron.8\ cvsbug.8\ dev_mkdb.8\ dhclient-script.8\ dhclient.8\ disklabel.8\ diskless.8\ diskpart.8\ dm.8\ dmesg.8\ dump.8\ dumpfs.8\ dumpon.8\ edquota.8\ faithd.8\ fdcontrol.8\ fdisk.8\ ffsinfo.8\ fingerd.8\ fixmount.8\ fore_dnld.8\ fsck.8\ fsck_msdosfs.8\ fsdb.8\ fsinfo.8\ fsirand.8\ ftpd.8\ genassym.8\ gensetdefs.8\ getty.8\ gifconfig.8\ growfs.8\ hlfsd.8\ ibcs2.8\ ifconfig.8\ ifmcstat.8\ ilmid.8\ inetd.8\ init.8\ intro.8\ iostat.8\ ip6fw.8\ ipf.8\ ipfs.8\ ipfstat.8\ ipfw.8\ ipmon.8\ isdnd.8\ isdndebug.8\ isdndecode.8\ isdnmonitor.8\ isdnphone.8\ isdntel.8\ isdntelctl.8\ isdntrace.8\ ispcvt.8\ - ispppcontrol.8\ jail.8\ joy.8\ kernbb.8\ keyserv.8\ kget.8\ kgmon.8\ kgzip.8\ kldconfig.8\ kldload.8\ kldstat.8\ kldunload.8\ kzip.8\ lastlogin.8\ ldconfig.8\ linux.8\ loader.4th.8\ loader.8\ locate.updatedb.8\ lpc.8\ lpd.8\ lptcontrol.8\ mail.local.8\ mailstats.8\ mailwrapper.8\ makekey.8\ makemap.8\ makewhatis.local.8\ manctl.8\ map-mbone.8\ memcontrol.8\ mergemaster.8\ mixer.8\ mk-amd-map.8\ mknetid.8\ mknod.8\ mld6query.8\ mlxcontrol.8\ mount.8\ mount_cd9660.8\ mount_ext2fs.8\ mount_msdos.8\ mount_nfs.8\ mount_ntfs.8\ mount_null.8\ mount_nwfs.8\ mount_portal.8\ mount_smbfs.8\ mount_std.8\ mount_umap.8\ mount_union.8\ mountd.8\ moused.8\ mrinfo.8\ mrouted.8\ mtest.8\ mtrace.8\ mtree.8\ named-bootconf.8\ named-xfer.8\ named.8\ named.reload.8\ named.restart.8\ natd.8\ ndc.8\ ndp.8\ newfs.8\ newfs_msdos.8\ newkey.8\ newsyslog.8\ nextboot.8\ nfsd.8\ nfsiod.8\ ngctl.8\ nghook.8\ nologin.8\ nos-tun.8\ nslookup.8\ nsupdate.8\ ntp-genkeys.8\ ntpd.8\ ntpdate.8\ ntpdc.8\ ntpq.8\ ntptime.8\ ntptrace.8\ pac.8\ pam.8\ pam_radius.8\ pccardc.8\ pccardd.8\ pciconf.8\ periodic.8\ picobsd.8\ ping.8\ ping6.8\ pnpinfo.8\ portmap.8\ ppp.8\ pppctl.8\ pppd.8\ pppoed.8\ pppstats.8\ praliases.8\ prefix.8\ procctl.8\ pstat.8\ pw.8\ pwd_mkdb.8\ pxeboot.8\ quot.8\ quotacheck.8\ quotaon.8\ rarpd.8\ raycontrol.8\ rbootd.8\ rc.8\ reboot.8\ renice.8\ repquota.8\ restore.8\ revnetgroup.8\ rexecd.8\ rip6query.8\ rlogind.8\ rmail.8\ rmt.8\ rmuser.8\ rndcontrol.8\ route.8\ route6d.8\ routed.8\ rpc.lockd.8\ rpc.rquotad.8\ rpc.rstatd.8\ rpc.rusersd.8\ rpc.rwalld.8\ rpc.sprayd.8\ rpc.statd.8\ rpc.umntall.8\ rpc.yppasswdd.8\ rpc.ypxfrd.8\ rpcinfo.8\ rrenumd.8\ rshd.8\ rtadvd.8\ rtquery.8\ rtsold.8\ rwhod.8\ sa.8\ savecore.8\ scspd.8\ sendmail.8\ setkey.8\ sftp-server.8\ showmount.8\ shutdown.8\ sicontrol.8\ slattach.8\ sliplogin.8\ slstat.8\ smrsh.8\ spkrtest.8\ spppcontrol.8\ spray.8\ sshd.8\ sticky.8\ stlload.8\ stlstats.8\ stlstty.8\ strfile.8\ svr4.8\ swapon.8\ sync.8\ sysctl.8\ sysinstall.8\ syslogd.8\ talkd.8\ tcpdchk.8\ tcpdmatch.8\ telnetd.8\ tftpd.8\ timed.8\ timedc.8\ traceroute.8\ traceroute6.8\ trpt.8\ tunefs.8\ tzsetup.8\ umount.8\ usbd.8\ usbdevs.8\ uuchk.8\ uucico.8\ uucpd.8\ uusched.8\ uuxqt.8\ vinum.8\ vipw.8\ vmstat.8\ vnconfig.8\ watch.8\ wicontrol.8\ wire-test.8\ wlconfig.8\ xtend.8\ yp_mkdb.8\ ypbind.8\ ypinit.8\ yppoll.8\ yppush.8\ ypserv.8\ ypset.8\ ypxfr.8\ zdump.8\ zic.8 MLINKS+=apm.8 apmconf.8 MLINKS+=apm.8 zzz.8 MLINKS+=boot_i386.8 boot.8 MLINKS+=bootpd.8 bootpgw.8 MLINKS+=dump.8 rdump.8 MLINKS+=inetd.8 inetd.conf.5 MLINKS+=init.8 securelevel.8 MLINKS+=locate.updatedb.8 updatedb.8 MLINKS+=makewhatis.local.8 catman.local.8 MLINKS+=mount_std.8 mount_fdesc.8 MLINKS+=mount_std.8 mount_kernfs.8 MLINKS+=mount_std.8 mount_procfs.8 MLINKS+=mount_std.8 mount_linprocfs.8 MLINKS+=newfs.8 mount_mfs.8 MLINKS+=newfs.8 mfs.8 MLINKS+=newfs.8 tmpfs.8 MLINKS+=pam.8 pam.conf.5 MLINKS+=pam.8 pam.d.5 MLINKS+=pstat.8 swapinfo.8 MLINKS+=quotaon.8 quotaoff.8 MLINKS+=rc.8 rc.atm.8 MLINKS+=rc.8 rc.firewall.8 MLINKS+=rc.8 rc.i386.8 MLINKS+=rc.8 rc.local.8 MLINKS+=rc.8 rc.network.8 MLINKS+=rc.8 rc.pccard.8 MLINKS+=rc.8 rc.serial.8 MLINKS+=rc.8 rc.shutdown.8 MLINKS+=reboot.8 halt.8 MLINKS+=reboot.8 fastboot.8 MLINKS+=reboot.8 fasthalt.8 MLINKS+=restore.8 rrestore.8 MLINKS+=rtsold.8 rtsol.8 MLINKS+=slattach.8 slip.8 MLINKS+=strfile.8 unstr.8 MLINKS+=vnconfig.8 swapfile.8 .include "bsd.prog.mk" diff --git a/ja_JP.eucJP/man/man8/boot_i386.8 b/ja_JP.eucJP/man/man8/boot_i386.8 index 4035ee325c..e6e4ac6998 100644 --- a/ja_JP.eucJP/man/man8/boot_i386.8 +++ b/ja_JP.eucJP/man/man8/boot_i386.8 @@ -1,350 +1,351 @@ .\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software written and contributed .\" to Berkeley by William Jolitz. .\" .\" Almost completely rewritten for FreeBSD 2.1 by Joerg Wunsch. .\" .\" Substantially revised for FreeBSD 3.1 by Robert Nordier. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)boot_i386.8 8.2 (Berkeley) 4/19/94 -.\" %FreeBSD: src/sbin/reboot/boot_i386.8,v 1.23.2.10 2002/03/31 18:12:49 pb Exp % +.\" %FreeBSD: src/sbin/reboot/boot_i386.8,v 1.23.2.11 2002/04/24 17:47:58 rnordier Exp % .\" .\" $FreeBSD$ .\" .\" .Dd April 19, 1994 .Dt BOOT 8 i386 .Os .Sh 名称 .Nm boot .Nd システム立上げ時の手続き .Sh 解説 .Sy 電源断とクラッシュからの回復。 通常、電源復旧時とクラッシュ発生後には、システムは自動的にリブートし ます。ファイルシステムの整合性チェックが自動実行され、途中で失敗しな ければ、システムはマルチユーザ・モードに移行します。 .Pp .Sy コールドスタート。 大多数の i386 PC は、まずフロッピドライブ 0 (ドライブ A: ともいう) からのブートを試み、 それに失敗すると、 ハードディスクドライブ 0 (ドライブ C: もしくは BIOS のドライブ 0x80 ともいう) からブートしようとします。いくつかの BIOS では、この デフォルトの順序を変えたり、CD-ROM デバイスをブートデバイスとして 含めることができます。 .Pp デフォルトでは 3 段階のブートストラップが使用され、 ブートブロック (ブートストラップの 第 1 および 第 2 段階) から、 これとは別の第 3 段階のブートストラッププログラム .Xr loader 8 へと自動的に制御が移行されます。 この第 3 段階では、 ブート処理において、 ブートブロックにおいて可能なことよりも洗練された制御を提供します。 ブートブロックには、 ディスクやスライスの限られた空間しか与えられないという制約があります。 .Pp しかしながら、第 3 段階をまったく使用せずに済ますこともできます。 このようにするには、ブートブロックパラメータファイル .Pa /boot.config においてカーネル名を指定するか、 .Fl n 無指定時には .Xr loader 8 が起動される前の短い待ち時間 (文字 .Sy - , .Sy \e , .Sy \&| , .Sy / のいずれかが表示されている間) にキーを打ちます。 第 3 段階をロードできない場合にも、第 2 段階においてブートが試みられます。 .Pp 本サブセクションの残りの部分では、ブートブロックについてのみ扱います。 .Xr loader 8 プログラムの文書は別にあります。 .Pp ブートブロックがロードされたあとで、次のようなプロンプトが現れます。 .Bd -literal >> FreeBSD/i386 BOOT Default: 0:ad(0,a)/kernel boot: .Ed .Pp 自動ブートにおいては、フロッピ もしくはハードディスクのパーティション .Ql a から .Pa /kernel をロードしようとします。 この動作は .Ql boot: というプロンプトが出ている間なら、キーボードから適当な文字を入力する ことで中断できます。以下にあげるような入力はブート動作に対する指示と して受付けられます。 .Bl -tag -width indent .It Ic \&? ブートファイルを探す際のヒントとして、デフォルトのブートデバイスの ルートディレクトリにあるファイルの名前を表示します。 (パスの最後の部分に .Ic ?\& を指定することもできます。この場合、任意のサブディレクトリの一覧となります。) .Pp .It Xo .Ar bios_drive : Ns Ar interface Ns Po .Ar unit , Ns Ar part Pc .Ar filename .Op Fl aCcDdghnPprsv .Xc ブートファイルとブートフラグを指定します。 .Bl -tag -width indent .It Ar bios_drive BIOS によって認識されるドライブ番号です。 1 つ目のドライブに対しては 0、 2 つ目のドライブに対しては 1、などです。 .It Ar interface そこからブートするコントローラのタイプです。ブートファイルのイメージ をロードするのには BIOS の機能を使用するので、そのコントローラに対す る BIOS サポートが必要となることに注意して下さい。 .Pp サポートされているインタフェースを以下にあげます。 .Pp .Bl -tag -width "adXX" -compact .It ad WD100[2367] とその互換コントローラ上の ST506, IDE, ESDI, RLL ディスク .It fd 5 1/4" または 3 1/2" 高密度 フロッピ .It da サポートされている SCSI コントローラ上の SCSI ディスク .\".It cd .\"CDROM からのブート .El .It Ar unit 使用されているインタフェース上のドライブのユニット番号です。 1 つ 目のドライブに対しては 0、 2 つ目のドライブに対しては 1、などです。 .It part ディスク上の .Bx 部分内のパーティション文字です。詳しくは .Xr disklabel 8 を参照して下さい。慣例として、パーティション .Ql a のみが ブート可能なイメージを含んでいます。ディスクにスライス .Pq Dq fdisk パーティション か設けられていた場合、任意のスライスからブート可能です。 デフォルトでは、アクティブスライスから、 これがない場合は最初の .Fx スライスからのブートとなります。 .It Ar filename ブートファイルの (指定されたパーティションのルートディレクトリからの 相対) パス名です。デフォルトでは .Pa /kernel となります。シンボリックリンクはサポートされていません (ハードリンク は使用できます)。 .It Fl acCdDghnPrsv ブートフラグです。 .Pp .Bl -tag -width "-CXX" -compact .It Fl a カーネル初期化中に、ルートファイルシステムとしてマウントされるデバイスを 尋ねて来るようにします。 .It Fl C CDROM からブートします。 .It Fl c ロードしたカーネルに対し、ハードウェアのパラメータを変更するため、 UserConfig を実行します。 .Dv USERCONFIG , INTRO_USERCONFIG , VISUAL_USERCONFIG のいずれかのオプション付きでカーネルが構築された場合、 スクリプト中に .Ic quit コマンドがあったとしても、UserConfig 中にとどまります。 .It Fl D シングルとデュアルのコンソール設定を切り替えます。シングル設定では、 下記の .Fl h オプションの状態によって、コンソールは内部ディスプレイかシリアルポートの いずれかになります。デュアルコンソール設定では、内部ディスプレイ とシリアルポートの両方が、 .Fl h オプションの状態によらず、同時にコンソールになります。しかし、 デュアルコンソール設定は、ブートプロンプトの間だけでしか効果を持ちません。 一旦カーネルがロードされると、 .Fl h オプションによって指定されたコンソールが唯一のコンソールになります。 .It Fl d カーネルの初期化のできる限り早い段階で DDB カーネルデバッガ ( .Xr ddb 4 を参照) に入ります。 .It Fl g GDB リモートデバッギングプロトコルを使用します。 .It Fl h 内部コンソールとシリアルコンソールの切り替えを行います。これを使用して コンソールデバイスを変更できます。例えば、内部コンソールからブートし た場合、カーネルがコンソールデバイスとしてシリアルポートを使用するよ うにするため、 .Fl h オプションを使用できます。反対に、シリアルポートからブートした場合、 カーネルがコンソールとして代わりに内部ディスプレイを使用するようにす るため、このオプションを使用できます。 シリアルポートドライバ .Xr sio 4 には、このオプションに優先するフラグがあります。 そのフラグが設定されると、ここで記述した .Fl h オプションとは無関係に、シリアルポートが常にコンソールとして使用されます。 更なる詳細については、マニュアルページ .Xr sio 4 を参照してください。 .It Fl n .Xr loader 8 起動前の、 キー入力によるブート中断を無視します。 .It Fl P キーボードを検出します。キーボードが発見できなかった場合には、 .Fl D と .Fl h オプションが自動的にセットされます。 .It Fl p デバイスの検出フェーズにおいて、各デバイスがアタッチされるたびに停止します。 .It Fl r ルートファイルシステムを含むデバイスとしてスタティックに config され たデフォルトを使用します ( .Xr config 8 を参照)。 .It Fl s シングルユーザ・モードで立上がるようになります。コンソールが .Dq insecure ( .Xr ttys 5 を参照) に設定されていた場合には、root のパスワードを入力しなければなり ません。 .It Fl v デバイス検出の際 (そしてその後も)、詳細を出力します。 .El .El .El .Pp デフォルトを設定するため、BIOS ドライブ番号, コントローラタイプ, ユニット番号, パーティション, カーネルファイル名と 有効なオプションを .Pa /boot.config に書くこともできます。 .Ql boot: プロンプトでタイプするように、 1 行で書いてください。 .Sh 関連ファイル .Bl -tag -width /boot/loader -compact .It Pa /boot.config ブートブロックに対するパラメータ (必須ではない) .It Pa /boot/boot1 第 1 段階のブートストラップ .It Pa /boot/boot2 第 2 段階のブートストラップ .It Pa /boot/loader 第 3 段階のブートストラップ .It Pa /kernel デフォルトカーネル .It Pa /kernel.old 普通は非デフォルトカーネル (必須ではない) .El .Sh 関連項目 .Xr ddb 4 , .Xr ttys 5 , .Xr boot0cfg 8 , .Xr btxld 8 , .Xr config 8 , .Xr disklabel 8 , .Xr halt 8 , .Xr loader 8 , .Xr reboot 8 , .Xr shutdown 8 .Sh 診断 ディスク関連のエラーが発生すると、 第 2 段階のブートストラップがエラーを報告します。 BIOS が返すものと同じエラーコードを使用し、 例えば .Dq Disk error 0x1 (lba=0x12345678) などと報告します。 エラーコードの一部のリストを示します: .Pp .Bl -tag -width "0x80" -compact .It 0x1 不正な引数 .It 0x2 アドレスマークが見付かりません .It 0x4 セクタが見付かりません .It 0x8 DMA オーバラン .It 0x9 64K 境界を越えて DMA を試みました .It 0xc 不正なメディア .It 0x10 訂正できない CRC/ECC エラー .It 0x20 コントローラの異常 .It 0x40 シークの失敗 .It 0x80 タイムアウト .El .Pp -.Sy "要注意" : -BIOS が提供する伝統的なディスクインタフェースの制約のため、 +.Sy "注" : +古いマシンや EDD サポート (ディスクパケットインタフェースサポート) が無い +マシンでは、 ブートフェーズにアクセスされるブート関連の全ファイルと構造 (カーネルを含みます) は、ディスク上で (BIOS が理解するジオメトリにおいて) シリンダ 1023 以下に置かれることが必要です。 第 2 段階のブートストラップが .Dq Disk error 0x1 を報告する場合、通常はこの条件が満されていないことを意味します。 .Sh バグ このバージョンの .Bx で使用されている .Xr disklabel 5 のフォーマットは、他のアーキテクチャで 使用されている物とは全く異なっています。 .Pp 空間の制約により、 .Fl P オプションにより起動されるキーボード検出は、BIOS が .Dq 拡張 キーボードを検出したかを単にテストするだけです。 .Dq XT/AT キーボード (F11, F12 キーなどを持ちません) を接続した場合、 検出は失敗します。 .Pp まだ記述されていない機能があります。 diff --git a/ja_JP.eucJP/man/man8/disklabel.8 b/ja_JP.eucJP/man/man8/disklabel.8 index 471e915ab8..a48fdbba83 100644 --- a/ja_JP.eucJP/man/man8/disklabel.8 +++ b/ja_JP.eucJP/man/man8/disklabel.8 @@ -1,955 +1,964 @@ .\" Copyright (c) 1987, 1988, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Symmetric Computer Systems. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgment: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)disklabel.8 8.2 (Berkeley) 4/19/94 -.\" %FreeBSD: src/sbin/disklabel/disklabel.8,v 1.15.2.17 2002/03/19 01:56:58 dd Exp % +.\" %FreeBSD: src/sbin/disklabel/disklabel.8,v 1.15.2.18 2002/04/17 14:56:42 trhodes Exp % .\" .\" $FreeBSD$ .\" .Dd July 30, 1999 .Dt DISKLABEL 8 .Os .Sh 名称 .Nm disklabel .Nd ディスクラベルの読み書きを行う .Sh 書式 .Nm .Op Fl r .Ar disk .Nm .Fl w .Op Fl r .Op Fl n .Ar disk Ar disktype .Oo Ar packid Oc .Nm .Fl e .Op Fl r .Op Fl n .Ar disk .Nm .Fl R .Op Fl r .Op Fl n .Ar disk Ar protofile .Nm .Op Fl NW .Ar disk .Pp .Nm .Fl B .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk .Oo Ar disktype/auto Oc .Nm .Fl w .Fl B .Op Fl n .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk Ar disktype/auto .Oo Ar packid Oc .Nm .Fl R .Fl B .Op Fl n .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk Ar protofile .Oo Ar disktype/auto Oc .Sh 解説 .Nm はディスクドライブやディスクパックにラベルを書き込んだり、 確認したり、修正したりするために使われます。 ラベルを書き込む際には、ドライブの識別子を変更したり、 ディスクのパーティションを変更したり、 異常のあるラベルを置き換えたりすることができます。 コマンドには、ディスク上のラベルを読んだり (表示したり)、書き込んだり、 編集したりするいくつかの書式があります。 また .Nm は同時にブートストラップコードを インストールすることもできます。 .Ss メモリ内のラベルとディスク上のラベル .Pp ディスクラベルは各ディスクパーティションの先頭、 もしくは先頭付近に存在します。 より速くアクセスするために、カーネルは 常にメモリ内にコピーを保持します。 デフォルトでは、 .Nm による操作のほとんどは メモリ内にあるラベルのコピーに対してアクセスします。 (ディスク上に存在する) ラベルにアクセスするためには .Fl r オプションを使用します。 このオプションにより、 カーネルのサポート無しでラベルをディスクにインストール することが可能になります。 例えばラベルがはじめてシステムにインストールされる時など、 ディスクにはじめてラベルを書き込む際に指定されなければなりません。 .Fl r オプションによる固有の効果は以下の 各コマンドの説明で示します。 .Pp .Ss ディスクデバイス名 .Pp 全ての .Nm の書式で、ディスクのデバイス名が必要です。 ディスクのデバイス名は、 ディスクまたはスライスを示すローデバイス名でなければなりません。 例えば .Pa da0 は DOS パーティションに無関係でディスク全体を表し、 .Pa da0s1 はスライスを表します。 デバイスによっては、特に .Ar ccd では、 .Dq ディスク全体を示す (または .Dq c ) パーティションを必要とします。 例えば .Pa ccd0c です。 デバイス指定時には、 .Pa /dev/ のパスプレフィックスを付ける必要はありません。 .Nm は自動的にこれを前に付けます。 .Ss ディスクラベルの読み込み .Pp ディスクドライブ上のラベルを確認するためには オプションを指定せずに .Nm を使用します。 .Pp .Nm .Op Fl r .Ar disk .Pp .Ar disk は対象とするローディスクを示します。 また .Pa da0 や .Pa /dev/da0c のような書式でも指定することができます。 これによってドライブに関するすべてのパラメータとパーティションのレイアウトを 表示します。 .Fl r フラグを指定しない場合には、カーネルのメモリ内にあるラベルのコピーが 表示されます。 もしディスクにラベルが書き込まれていなかったり、ディスクのパーティション形式が 正しくない場合には、カーネルが作り直したり、修正するかもしれません。 .Fl r フラグが与えられると、 ディスク上の実際のラベルが表示されます。 通常は、どちらでも同じ結果となりますが、 ラベルが未初期化の場合とまたは壊れている場合には、違う結果となります。 .Ss 標準的なラベルの書き込み .Pp 標準的なラベルを書き込むには、 以下の書式を使います。 .Pp .Nm .Fl w .Op Fl r .Op Fl n .Ar disk Ar disktype/auto .Oo Ar packid Oc .Pp .Nm .Fl w .Op Fl r .Op Fl n .Ar disk auto .Pp コマンドには引数として、ラベルを書き込むドライブ名および .Xr disktab 5 に書かれているドライブタイプが必要です。 ドライブのパラメータとパーティション情報は、このファイルから得られたもの が使われます。 もし、同じ型のディスクに異なるパーティション情報を持たせたい場合には、 disktab にそれぞれ別々のエントリを書いておくか、ラベルを書き込んだあとで 後述する方法でそれを編集する必要があります。 オプションの引数として、16 文字までのパック識別用文字列を指定します。 パック名に空白を含める場合にはそれをクォートする必要があります。 .Pp .Fl n フラグが与えられると、データはデバイスに書き込まれません。 代りに、書き込まれるはずだったディスクラベルが、標準出力に表示されます。 .Pp .Fl r フラグが与えられると、ディスクのラベルとブートストラップが 直接書き換えられます。 この副作用として、すでにあるブートストラップ用コードが上書きされてしまうため、 ディスクがブート不能にされてしまいます。 ラベルとブートストラップを同時に書き込む方法は 後述のブートオプションを参照してください。 .Fl r が指定されない場合には、ラベルはメモリ内のコピーを通して書き換えられる ため、ブートストラップコードは影響されません。 もしまだディスクがラベル付けされていなければ、 .Fl r フラグをつけなければなりません。 どちらの方法でも、カーネルのメモリ内コピーは変更されます。 .Pp .Xr disktab 5 に記載されていない未使用のディスクに対しては、 .Ar disktype として .Dq auto を指定できます。 この場合、ディスクの最初のラベルを生成するようにドライバに要求します。 これは成功するかも知れないし成功しないかも知れません。 これはディスクドライバがディスクを全く読む事無く 必要なデータを取得できるか否かに依存します。 全ての SCSI ディスクとほとんどの IDE ディスクと vnode デバイスにおいて 成功するでしょう。 ディスクに対するラベルの書き込みは唯一サポートされた操作であり、 .Ar disk 自身は標準の名前 (フルパス名であってはなりません) で提供される必要があります。 .Pp ほとんどのハードディスクでは、パーセントベースのラベル (および大きさに .Ql * を指定する単一のパーティション) で、もっともな設定を出力するでしょう。 .Pp PC ベースのシステムでは、 BIOS に正しく .Fx ディスクラベルを認識させるために、特別な要件があります。 古いシステムでは、 .Dq 危険な方法で専用化された ディスクラベルが必要かもしれません。 これは、偽の DOS パーティションを作成することにより、 最近のディスクのジオメトリに対して古い BIOS が引き起す問題を 回避するというものです。 -新しいシステムでは、通常の DOS スライスを +新しいシステムでは、通常の DOS パーティションを .Ar fdisk で作成して、このスライス中に .Fx ディスクラベルを作成すれば良いでしょう。 本件についてはこのマニュアルで後述します。 .Pp 新規ディスクラベルをインストールするだけでは、 このラベルでシステムをブートさせることは出来ません。 ブートブロックもまたインストールする必要があります。 本件についてはこのマニュアルで後述します。 .Ss 既存のディスクラベルの編集 .Pp 既存のディスクラベルを編集するには、 以下の書式を使います。 .Pp .Nm .Fl e .Op Fl r .Op Fl n .Ar disk .Pp このコマンドはラベルを カーネルのメモリ内コピーから、または .Fl r フラグが与えられた場合には直接ディスクから 読み込みます。 ラベルは ASCII でファイルにかかれ、 編集するためのエディタへ渡されます。 .Ev EDITOR 環境変数によるエディタの指定がない場合には、このエディタには .Xr vi 1 が使用されます。 エディタを終了すると、ラベルファイルはディスクラベルを 再書き込みするために使われます。 .Fl r フラグの指定の有無にかかわらず、 すでにあるブートストラップコードは変更されません。 .Fl n フラグが与えられると、データはデバイスに書き込まれません。 代りに、書き込まれるはずだったディスクラベルが、標準出力に表示されます。 特定のディスクに対して、 パーティション方式がどのように動作するかを見るのに有用です。 .Ss ファイルからのディスクラベルの復元 .Pp ファイルからディスクラベルを復元するには、 以下の書式を使います。 .Pp .Nm .Fl R .Op Fl r .Op Fl n .Ar disk Ar protofile .Pp .Nm は以前の操作により ASCII ファイルとして保存されているディスクラベル をディスクへ書き戻します。 ラベルを作成するときに使われるプロトタイプファイルは、ラベルを読み込んだり 編集したりするときのものと同じフォーマットである必要があります。 コメントは .Ar \&# と改行で区切られます。 新しいラベルを書き込む際に .Fl r が指定されているとブートストラップコードは使えなくなってしまいますが、 指定されていない場合には影響ありません。 ラベルの復元とブートストラップの書き込みを同時に行う方法は 後述のブートオプションを参照してください。 .Fl n フラグが与えられると、データはデバイスに書き込まれません。 代りに、書き込まれるはずだったディスクラベルが、標準出力に表示されます。 特定のディスクに対して、 パーティション方式がどのように動作するかを見るのに有用です。 .Ss ディスクラベル領域への書き込みの有効化および無効化 .Pp デフォルトでは、 ディスクの先頭領域にあるディスクラベル領域への書き込みは不可能です。 ディスクドライバはいかなる操作も無視します。 もし (例えばラベルを消去するなど) この領域への書き込みを行う必要があるならば、 以下の書式を使います。 .Pp .Nm .Fl W .Ar disk .Pp ラベルの書き込みを可能にした後に不可能にするには 以下のコマンドを使います。 .Pp .Nm .Fl N .Ar disk .Ss ブートストラップのインストール .Pp .Nm の最後の 3 つの書式は、ブートストラップコードを -インストールするために使われます: +インストールするために使われます。 +古い PC システムとの互換性のために +.Dq 危険な方法で専用化された +スライスを作成している場合、通常、 +.Pa da0 +等の生ディスクを指定したいでしょう。 +既存の DOS スライス中にラベルを作成している場合、パーティション名 +.Pa da0s1a +等を指定することでしょう。 +スライスをブート可能にすることはトリッキーです。 +通常の DOS スライスを使用している場合、典型的には、 +ベースディスクに標準 MBR をインストールし (または残し)、 +.Fx +ブートブロックをスライス中にインストールします。 .Pp .Nm .Fl B .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk .Oo Ar disktype Oc .Pp この書式ではブートストラップのみインストールします。 ディスクラベルは変更しません。 .Pp .Nm .Fl w .Fl B .Op Fl n .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk Ar disktype .Oo Ar packid Oc .Pp この書式は前述の .Dq ラベルの書き込み コマンドと一致します。 新しいボリュームラベルを書き込むとともに ブートストラップのインストールもおこないます。 ベースディスクに対して本コマンドを実行すると、 .Dq 危険な方法で専用化された ラベルを作成します。 本コマンドは、通常、ベースディスクではなくスライスに対して実行します。 .Fl n フラグが与えられると、データはデバイスに書き込まれません。 代りに、書き込まれるはずだったディスクラベルが、標準出力に表示されます。 .Pp .Nm .Fl R .Fl B .Op Fl n .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk Ar protofile .Oo Ar disktype Oc .Pp この書式は前述の .Dq ラベルの復元 コマンドと一致します. ボリュームラベルを復元するとともに ブートストラップのインストールもおこないます。 .Pp ブートストラップコマンドは常にディスクに直接アクセスするため、 .Fl r フラグを指定する必要はありません。 .Fl n フラグが与えられると、データはデバイスに書き込まれません。 代りに、書き込まれるはずだったディスクラベルが、標準出力に表示されます。 .Pp ブートストラップコードは 2 つのブートプログラムより構成されます。 インストールされるブートプログラムの名前は 以下の 3 つの方法の中の 1 つより指定します。 .Bl -enum .It .Fl b フラグと .Fl s フラグを用いて明示的に名前を指定します。 .Fl b フラグで指定するのが最初のブートプログラムで、 .Fl s フラグで指定するのが 2 段階目のブートプログラムになります。 ブートプログラムは、 .Pa /boot に置かれます。 .It .Fl b フラグと .Fl s フラグが指定されておらず .Ar disktype が指定された場合、 disktab のエントリが存在しこれらのパラメータが含まれるならば プログラムの名前は このディスクに対する .Xr disktab 5 エントリの .Dq b0 および .Dq b1 パラメータより得られます。 .It そうでない場合、デフォルトのブートイメージ名は 標準のステージ 1 およびステージ 2 のブートイメージとして .Pa /boot/boot1 と .Pa /boot/boot2 になります (詳細はアーキテクチャによって異なり、 Alpha においては単一ステージのブートが使用されます)。 .El .Ss スクラッチからの、ブート可能ディスクの初期化/フォーマット .Pp ディスクをスクラッチから初期化するには、次の手順をお勧めします。 この手順は、FreeBSD 以外のスライスを含む、 ディスク上のすべてを削除してしまうことに注意してください。 .Bl -enum .It -.Ar fdisk -を使用して、DOS パーティションテーブルを作成します。 -これにより、 -.Fx -ディスクラベルを保持するディスク全体のスライスを作成し、 -マスタブートレコードをインストールします。 -.It -.Ar disklabel -を使用して、最初の -.Fx -ディスクラベルを初期化し、 -.Fx -ブートブロックをインストールします。 +.Xr fdisk 8 +を使用してハードディスクを初期化し、 +DOS からはパーティションテーブルとして参照されるスライステーブルを作成します。 +あなたのシステム用のディスクスライスをここで定義します。 .It -.Ar disklabel -を使用して、新規に作成したラベルを編集し、適切なパーティションを追加します。 +.Xr disklabel 8 +を使用して、パーティションおよびマウントポイントの定義と書き込みを行います。 +ここでマウントポイントを決める必要は無く、後で +.Xr mount 8 +を使用して定義可能です。 .It -最後に、ラベル中に作成したファイルシステムパーティションを newfs します。 +最後に、 +.Xr newfs 8 +を使用して、新パーティション中にファイルシステムを作成します。 典型的なディスクラベルのパーティショニング方式では、 .Dq a パーティションは約 128MB でルートファイルシステムを、 .Dq b パーティションはスワップを、 .Dq d パーティションは /var を (通常 128MB)、 .Dq e パーティションは /var/tmp を (通常 128MB)、 .Dq f パーティションは /usr を (通常 2G くらい)、 .Dq g パーティションは /home を (通常、残り)、 それぞれ割り当てます。 これは、システムによって異なります。 .El .Pp .Nm fdisk Fl BI Ar da0 .Pp .Nm .Fl w .Fl B .Ar da0s1 auto .Pp .Pp .Nm .Fl e .Ar da0s1 .Sh 関連ファイル .Bl -tag -width Pa -compact .It Pa /etc/disktab .It Pa /boot/ .It Pa /boot/boot .El .Sh 保存されたファイルの書式 .Nm は ディスクラベルを確認、編集、または復元する際に ASCII 形式のラベルを使用します。 フォーマットは以下のとおりです。 .Bd -literal -offset 4n # /dev/da1c: type: SCSI disk: da0s1 label: flags: bytes/sector: 512 sectors/track: 51 tracks/cylinder: 19 sectors/cylinder: 969 cylinders: 1211 sectors/unit: 1173930 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # milliseconds track-to-track seek: 0 # milliseconds drivedata: 0 8 partitions: # size offset fstype [fsize bsize bps/cpg] a: 81920 0 4.2BSD 1024 8192 16 # (Cyl. 0 - 84*) b: 160000 81920 swap # (Cyl. 84* - 218*) c: 1173930 0 unused 0 0 # (Cyl. 0 - 1211*) h: 962010 211920 vinum # (Cyl. 218*- 1211*) .Ed .Pp # で始まる行はコメントです。 他の項目のほとんども既に使われていません。 正しく設定されてなければならない項目は以下のとおりです: .Pp .Bl -hang -width 20n .It Nm label オプションのラベルです。 ラベルを書き込む際に .Ar packid オプションにより設定されます。 .It Nm flags flags は .Ar removable、 .Ar ecc もしくは .Ar badsect が指定可能です。 .Ar removable はリムーバブルメディアドライブに対して設定されますが、 現在の .Fx のドライバはこのフラグを 評価しません。 .Ar ecc はサポートされていません。 .Ar badsect はドライブが不良セクタの代替を行える場合に 指定します。 .It Nm sectors/unit ディスクの全体の大きさを示します。 この値は正しくなければなりません。 .It Nm パーティションテーブル これは .Ux のパーティションテーブルであり、 .Xr fdisk 8 で述べられている Microsoft のパーティションテーブルではありません。 .El .Pp パーティションテーブルは 8 つまでエントリを持つことができ、 以下の情報を含みます: .Bl -hang -width 10n .It identifier パーティションの識別子は .Dq a から .Dq h の 1 文字です。 慣例的な理由により、 .Dq c パーティションは ディスク全体を表すために予約されています。 .It size セクタ単位でのパーティションの大きさです。 .Cm K (キロバイト - 1024), .Cm M (メガバイト - 1024*1024), .Cm G (ギガバイト - 1024*1024*1024), .Cm % ( .Dq c 以外の固定長のパーティションを取り除いた後の空間に対するパーセント)か、 .Cm * (固定長のパーティションとパーセント指定のパーティションを取り除いた後 の空間すべて)。 .Dq c に対して .Cm * を指定すると、ディスク全体を意味します 小文字の .Cm K , M , .Cm G も許されます。 大きさと型の間には空白を入れてはなりません。 .Pp 例: 2097152, 1g, 1024m, 1048576k はすべて同じ大きさです (512 バイトセクタを仮定)。 .It offset ドライブの先頭からのオフセットによるパーティションの開始位置を、 セクタ単位で指定します。 .Cm * は、使用すべき正しいオフセット (直前のパーティションの終端に 1 を加えたもの) を、 .Nm に計算させます。ただしパーティション .Dq c は無視します。 パーティション .Dq c に対しては、 .Cm * はオフセット 0 と解釈されます。 .It fstype パーティションの使用目的を表します。 例では現在使用されているパーティション型を示します。 UFS ファイルシステムおよび ccd では .Cm 4.2BSD が使われます。 Vinum ドライブでは .Cm vinum が使われます。 他の一般的な型は .Cm unused と .Cm swap です。 取り決めでは、パーティション .Dq c はスライス全体を表し、型 .Cm unused であるべきですが、 .Nm はこの取り決めを強制しません。 .Nm は多くの他のパーティション型を知っていますが、 それらは現在使用されていません。 詳細は、 .Pa /usr/include/sys/disklabel.h で .Dv FS_UNUSED で開始する定義を参照してください。 .It fsize .Cm 4.2BSD と LFS のファイルシステムに対してのみ有効です。 フラグメントの大きさを意味します。 1 GB 未満のパーティションに対するデフォルトは 1024 で、 1 GB 以上に対するデフォルトは 4096 です。 .It bsize .Cm 4.2BSD と LFS のファイルシステムに対してのみ有効です。 ブロックの大きさを意味します。 1 GB 未満のパーティションに対するデフォルトは 8192 で、 1 GB 以上に対するデフォルトは 16384 です。 .It bps/cpg .Cm 4.2BSD ファイルシステムに対しては、 シリンダグループ中のリシンダ数を意味します。 LFS ファイルシステムに対しては、 セグメントシフト値を意味します。 1 GB 未満のパーティションに対するデフォルトは 16 で、 1 GB 以上に対するデフォルトは 64 です。 .El .Pp 行の残りの部分はコメントで、 ドライブの 一般的には使われていない (しかし多分正確な) ジオメトリ情報に 基づいたシリンダの割り当て情報を示しています。 アスタリスク (*) はパーティションがシリンダ境界で 厳密にはじまっていない、もしくは終っていないことを意味します。 .Sh 使用例 .Dl disklabel da0s1 .Pp .Pa da0s1 のラベルとしてカーネル内のコピーを .Pa /dev/da0s1 から得られたものとして表示します。 ラベルを読み込み時には、ラベルがスライス上に存在する場合でも、 FreeBSD はベースディスク名を指定することを許しています。 しかしながら、厳密には、 ベースディスク名を指定するのは .Dq 危険な方法で専用化された ラベルを使用する場合に限定してください。 通常は、スライスを指定してください。 .Pp .Dl disklabel da0s1 > savedlabel .Pp .Pa da0s1 に対する カーネル内のコピーをファイルに .Pa savedlabel に保存します。 このファイルは後で .Fl R フラグを用いてラベルを復元する際に使用できます。 .Pp .Dl disklabel -w -r /dev/da0s1 da2212 foo .Pp .Pa /etc/disktab に書かれている .Dq da2212 の情報を .Pa da0s1 のラベルとして書き込みます。 存在したブートストラップコードは使えなくなります。 .Pp .Dl disklabel -e -r da0s1 .Pp .Pa da0s1 のディスク上のラベルを読み込み、編集し、再び書き込みます。 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 存在したブートストラップコードは影響を受けません。 .Pp .Dl disklabel -e -r -n da0s1 .Pp .Pa da0s1 のディスク上のラベルを読み、編集し、新規ラベルがどのようになるかを (セクタ単位で) 表示します。 新規ラベルは、メモリにもディスクにもインストールしません。 .Pp .Dl disklabel -r -w da0s1 auto .Pp .Pa da0s1 から必要な情報を自動検出し、新しいラベルをディスクに書こうとします。 パーティションおよびファイルシステム情報を編集するために、 この後で disklabel -e コマンドを使って下さい。 .Pp .Dl disklabel -R da0s1 savedlabel .Pp .Pa savedlabel に書かれている情報を .Pa da0s1 のラベルとして書き込みます。 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 存在したブートストラップコードは影響を受けません。 .Pp .Dl disklabel -R -n da0s1 label_layout .Pp パーティションレイアウト .Pa label_layout を使用すると、 .Pa da0s1 のラベルがどのようになるかを表示します。 .Cm % と .Cm * に基くパーティションの大きさ指定を使用するラベル方式を使用した場合に、 各パーティションにどれだけ割り当てられるかを判定するのに有用です。 .Pp .Dl disklabel -B da0s1 .Pp .Pa da0s1 に新たにブートストラップコードを書き込みます. ブートストラップコードは .Pa /boot/boot1 、およびもし必要ならば .Pa /boot/boot2 です。 ディスク上のラベルおよびカーネル内コピーは影響を受けません。 .Pp -.Dl disklabel -w -B /dev/da0s1 -b newboot1 -s newboot da2212 +.Dl disklabel -w -B /dev/da0s1 -b newboot1 -s newboot2 da2212 .Pp 新たなラベルとブートストラップコードを書き込みます。 ラベルは disktab の .Dq da2212 の情報を使用し、 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 ブートストラップコードは .Pa /boot/newboot1 と .Pa /boot/newboot2 です。 .Pp .Dl dd if=/dev/zero of=/dev/da0 bs=512 count=32 .Dl fdisk -BI da0 .Dl dd if=/dev/zero of=/dev/da0s1 bs=512 count=32 .Dl disklabel -w -B da0s1 auto .Dl disklabel -e da0s1 .Pp ディスク上の既存の情報を完全に削除し、 単一の .Dq ディスク全体 スライスを含む DOS パーティションテーブル付きの、 ブート可能ディスクを新規に作成します。 次にスライスを初期化し、編集します。 .Pa dd はオプションですが、 BIOS によっては正しくディスクを認識するために必要です。 .Pp これは、 .Cm % , M , G , .Cm * といった新規パーティションサイズ型を使用する、ディスクラベルの例です。 次のコマンドラインのソースファイルとして使用可能です: .Pp .Dl disklabel -R ad0s1c new_label_file .Bd -literal -offset 4n # /dev/ad0s1c: type: ESDI disk: ad0s1 label: flags: bytes/sector: 512 sectors/track: 63 tracks/cylinder: 16 sectors/cylinder: 1008 cylinders: 40633 sectors/unit: 40959009 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # milliseconds track-to-track seek: 0 # milliseconds drivedata: 0 8 partitions: # size offset fstype [fsize bsize bps/cpg] a: 400M 0 4.2BSD 4096 16384 75 # (Cyl. 0 - 812*) b: 1G * swap c: * * unused e: 204800 * 4.2BSD f: 5g * 4.2BSD g: * * 4.2BSD .Ed .Sh 関連項目 .Xr ccd 4 , .Xr disklabel 5 , .Xr disktab 5 , .Xr boot0cfg 8 , .Xr fdisk 8 , .Xr vinum 8 .Sh 診断 デバイスドライバは、 オープンされているパーティションに関して、 サイズが小さくなることおよびオフセットが変化することを許しません。 デバイスドライバの中には、 ラベルを持たないディスクに対して 1 パーティションのみからなる ラベルを作成するものがあります。 そのため、 オープンされているディスクのラベルは .Dq a パーティションに書く必要があります。 このような理由で、 次の 2 ステップにより、 所望のラベルを作成する必要がある場合があります。 第 1 ステップは少なくとももう 1 つのパーティションを作成することであり、 第 2 ステップは .Dq a パーティションを小さくしながら 新たなパーティションのラベルを設定することです。 .Pp ファイルシステムによっては、 用意された領域にブートストラップコードが収まり切らないような マシンがあるかも知れません。 その結果として、 .Dq ブート可能な ディスクのパーティションに ファイルシステムを作成できない場合があります。 ブートストラップコードを書き込む時に、 .Nm はこのようなケースをチェックします。 FS_UNUSED タイプのパーティションに重なるように ブートストラップコードが書き込まれる場合には、 そのパーティションは FS_BOOT とマークされます。 .Xr newfs 8 ユーティリティは、 FS_BOOT パーティションにファイルシステムを作成することを禁止します。 また逆に、 パーティションのタイプが FS_UNUSED もしくは FS_BOOT では無い場合、 .Nm はそのパーティションに重なるようなブートストラップコードを書き込みません。 .Sh バグ ディスク名がフルパスで指定されない場合には、 デバイス名は .Dq c パーティションになります。 .Pp i386 アーキテクチャでは、プライマリブートストラップセクタに、 組み込みの .Em fdisk テーブルを持ちます。 .Nm は、 ブートストラップのみをインストールする時 .Pq Fl B もしくはラベルを編集する時 .Pq Fl e にこれを壊さないように気を付けます。 しかし、 .Fl w や .Fl R を指定した時には、 無条件でプライマリブートストラッププログラムをディスクに書き込みますので、 .Em fdisk テーブルをブートストラッププログラム内のダミーに置き換えます。 これはディスク全体を専用に使う場合、 すなわち .Bx ディスクラベルがディスクの絶対ブロック 0 から始まる場合 のみ関係あります。 .Pp .Nm はすべての実施可能なエラーチェックは行いません。 次の場合、警告が表示されます: パーティションが重なる場合、 絶対的なオフセットが期待したオフセットと異る場合、 .Dq c パーティションが 0 から開始しないかディスク全体を覆わない場合、 パーティションがデバイスの終端を越える場合、 その他のエラー。 ただし、未使用空間があっても警告は表示されません。 diff --git a/ja_JP.eucJP/man/man8/dump.8 b/ja_JP.eucJP/man/man8/dump.8 index 12c7bf5c28..fb36dbe683 100644 --- a/ja_JP.eucJP/man/man8/dump.8 +++ b/ja_JP.eucJP/man/man8/dump.8 @@ -1,407 +1,424 @@ .\" Copyright (c) 1980, 1991, 1993 .\" Regents of the University of California. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgment: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)dump.8 8.3 (Berkeley) 5/1/95 -.\" %FreeBSD: src/sbin/dump/dump.8,v 1.27.2.11 2002/02/27 03:40:58 dd Exp % +.\" %FreeBSD: src/sbin/dump/dump.8,v 1.27.2.12 2002/04/19 16:26:43 trhodes Exp % .\" .\" $FreeBSD$ .Dd July 9, 2001 .Dt DUMP 8 .Os .Sh 名称 .Nm dump , .Nm rdump .Nd ファイルシステムのバックアップ .Sh 書式 .Nm .Op Fl 0123456789acknu .Op Fl B Ar records .Op Fl b Ar blocksize .Op Fl D Ar dumpdates .Op Fl d Ar density .Op Fl f Ar file .Op Fl h Ar level .Op Fl s Ar feet .Op Fl T Ar date .Ar filesystem .Nm -.Op Fl W Li \&| Fl w +.Fl W | Fl w +.Pp +.Nm rdump +は +.Nm +の別名です。 .Pp .in \" XXX ( .Bx 4.3 形式のオプションは後方互換性のために実装されていますが、 ここでは説明していません。) .Sh 解説 .Nm は、ファイルシステムを調べて バックアップする必要のあるファイルを決定します。 これらのファイルは、指定されたディスク、テープや、 その他の記憶メディアへ保存のためコピーされます (リモートバックアップについては、 .Fl f オプションを参照)。 ダンプの大きさが記録メディアの容量より大きい場合は、 複数ボリュームに分割します。 たいていのメディアの容量は、メディアの終りを通知されるまで 書き込んでみることで決定します。 この方法は、 .Fl a オプションにより強制的に使用することもできます。 .Pp メディアの終りを正しく通知できないメディア (一部の カートリッジ・テープドライブ等) の容量は、 -テープ長と記録密度やブロック数のオプションから求め、 +テープ長と記録密度や +.Fl B +オプションから求め、 各ボリュームはすべて同じ容量を持つものとします。 デフォルトでは、 オペレータにメディア交換を要求した後の各ボリュームにも 同じ出力ファイル名を使用します。 .Pp +ダンプ対象のファイルシステムは、引数 +.Ar filesystem +にて、デバイススペシャルファイルか +(/etc/fstab 中の標準エントリの場合) マウントポイントで指定します。 +.Pp .Nm は、次のオプションをサポートしています。 .Bl -tag -width Ds .It Fl 0\-9 ダンプレベル。 レベル 0 はフルバックアップを意味し、ファイルシステム全体をコピー することを保証します (ただし以下の .Fl h オプションにも注意して下さい)。 0 より大きなレベル番号はインクリメンタルバックアップを意味し、 前回のダンプ (今回指定したものより低いレベルのダンプ) 以降に作られたか修正されたすべてのファイルをコピーします。 デフォルトのレベルは 0 です。 .It Fl a .Dq オートサイズ 全てのテープ長の考慮をせず、メディアの終了を通知されるまで、強制的に 書き込みを続けます。現在のほとんどのテープドライブでは、この方法により もっとも良い結果が得られます。特に、使いかけのテープに追加したり、 ハードウェア圧縮機能のあるテープドライブ(圧縮率がどの程度になるか不確かな もの)を使用したりする場合にこのオプションを使用することをお薦めします。 .It Fl B Ar records -ボリュームあたりの 1 KB ブロック数です。 +ボリュームあたりのキロバイト数です。 +この値が出力ブロックサイズの整数倍でない場合、 +コマンドはこの値より小さい整数倍値を使用します。 このオプションは、テープ長と記録密度を基にしたテープ容量より 優先されます。 .It Fl b Ar blocksize -ダンプレコードあたりのブロックサイズを K バイト単位で指定します。 +出力ブロックあたりのキロバイト数です。 +この値が 64 より大きい場合、コマンドは 64 を使用します +(バグの節を参照してください)。 +デフォルトのブロックサイズは 10 です。 .It Fl c カートリッジテープドライブ用に、記録密度とテープ長のデフォルトをそれぞれ 8000 bpi、1700 feet に変更します。 .It Fl D Ar dumpdates .Pa dumpdates ファイルの代替パスを指定します。 デフォルトは .Pa /etc/dumpdates です。 .It Fl d Ar density テープの記録密度を .Ar density に設定します。デフォルトは 1600BPI です。 .It Fl f Ar file バックアップの出力先ファイルを指定します。 出力先ファイルとしては、 .Pa /dev/sa0 (テープドライブ)や .Pa /dev/fd1 (フロッピーディスクドライブ)のようなデバイスファイル、 通常ファイル、 .Ql Fl (標準出力)を指定することができます。 複数のファイル名を、コンマで区切って一つの引数として指定する ことができます。 各ファイルは、リストされた順に一つのダンプボリュームに使用されます。 指定した名前の数より多くのボリュームが必要な場合、 メディアの交換を要求した後、最後のファイル名を残りのすべての ボリュームに使用します。 ファイル名が、 .Dq host:file または、 .Dq user@host:file の形式である場合、 .Nm は、 .Xr rmt 8 を使用してリモートホスト上の指定されたファイルに書き込みます。 リモートの .Xr rmt 8 のデフォルトのパス名は .Pa /etc/rmt ですが、環境変数 .Ev RMT の値が優先されます。 .It Fl h Ar level ダンプレベルが .Ar level 以上の時に、ユーザが指定した .Dq nodump フラグ .Pq Dv UF_NODUMP に従います (h: honor the flag)。 デフォルトの honor レベルは 1 ですから、 そのようなファイルは、インクリメンタルダンプからは省かれますが、 フルバックアップには含まれます。 .It Fl k リモートのテープサーバとの通信でケルベロス認証を使います。 (このオプションが有効な状態で .Nm がコンパイルされた場合にのみ利用できます。) .It Fl n .Nm がオペレータに注意を促す時に、 .Xr wall 1 に似た方法で .Dq operator グループに属するすべてのユーザにメッセージを送ります。 .It Fl s Ar feet テープの容量を計算する時に記録密度とともに使います。 この容量を超えた場合に、 .Nm は新しいテープを要求します。 このオプションはやや控え目に指定することをお勧めします。 デフォルトのテープの長さは、2300 フィートです。 .It Fl T Ar date .Pa dumpdates ファイル から得られた日時の代わりに、指定された date をダンプの起点として 使います。date の形式は .Xr ctime 3 のそれと同じです。このオプションは期間を指定してバックアップを 取るダンプスクリプトで有用です。 .Fl T オプションは .Fl u オプションと同時には指定できません。 .It Fl u ダンプが成功した後で、 .Pa dumpdates ファイルを更新します。 .Pa dumpdates ファイル は人が読めるファイルであり、各行に以下のレコードが フリーフォーマットで記録されています : ファイルシステム名、インクリメントレベル、 .Xr ctime 3 形式のダンプ日付。 各レベルとファイルシステムごとにエントリが一つだけ存在します。 必要なら、 .Pa dumpdates ファイル の各フィールドを編集しても構いません。 .Pa dumpdates ファイルのデフォルトは .Pa /etc/dumpdates ですが、 .Fl D を使用してこれを変更可能です。 .It Fl W .Nm は、ダンプの必要があるファイルシステムをオペレータに表示します。 この情報は .Pa dumpdates ファイル と .Pa /etc/fstab ファイルから集められます。 .Nm は、 .Pa dumpdates ファイル の中の各ファイルシステム毎に最新のダンプ日付とレベルを示し、 ダンプするべきファイルシステムを明らかにします。 .Fl W オプションが指定された場合、その他のすべてのオプションは無視され、 .Nm は直ちに終了します。 .It Fl w W と同様ですが、ダンプの必要のあるファイルシステムのみを表示します。 .El .Pp .Dq nodump フラグ .Pq Dv UF_NODUMP が設定されたディレクトリおよび通常ファイルと、 そのようなディレクトリ配下のすべては、省略されます。 .Fl h オプションに従います。 .Pp .Nm は、以下に示す場合にオペレータの介入を要求します : テープの終了、 ダンプの終了、 テープ書き込みエラー、 テープオープンエラー、 ディスク読み込みエラー (32 回を越えた場合)。 処理を続けられない時や何か大変まずい事態になった場合には、 .Nm は、 .Fl n オプションがあればすべてのオペレータへ警告したうえで、 .Em dump の制御端末上でオペレータとやりとりします。 .Nm コマンドからのすべての質問には、 .Dq yes または .Dq no で適切に答えなければなりません。 .Pp フルダンプの実施には多くの時間と労力がかかるので、 .Nm は各テープボリュームの先頭にチェックポイントを設定します。 何らかの理由により、あるボリュームの書き込みを失敗した場合には、 テープの巻き戻し、排出、新しいテープのマウントの後で、 .Nm はオペレータの許可の下でチェックポイントから実行を再開します。 .Pp .Nm は処理の進行を、5 分毎または SIGINFO 受信時に、 定期的にオペレータに報告します。 報告には、少なめに推定される書き込みブロック数、 必要なテープ数、完了までの時間、テープ交換までの時間、 を含みます。 .Nm に使っている端末が使用中であることが他人にも分かるように、 このメッセージは冗長になっています。 .Pp ディスクに壊滅的なトラブルが起きた時に、 バックアップテープやファイルからディスクを復元するために 必要な時間は、 インクリメンタルダンプを適当なシーケンスで実行する事によって 最小にする事ができます。 最小のテープ数でこれを行なう効果的な方法を示します。 .\" staggering .Bl -bullet -offset indent .It 常にレベル 0 のバックアップから開始します。例えば以下の通りです。 .Bd -literal -offset indent /sbin/dump -0u -f /dev/nsa0 /usr/src .Ed .Pp これを一ヵ月か二ヵ月毎に新しいテープに対して実施し、 ずっと保存します。 .It 0 レベルのダンプの後は、アクティブなファイルシステムのダンプを、 修正ハノイの塔アルゴリズムによる 次の様なダンプレベルシーケンスによって、毎日行います。 .Bd -literal -offset indent 3 2 5 4 7 6 9 8 9 9 ... .Ed .Pp 毎日のダンプには、一週間毎に繰り返し使われる事になる 一定の数のテープを使う事ができます。 週毎にレベル 1 ダンプを行ない、毎日のハノイ・シーケンスは レベル 3 から開始します。 週毎のダンプには、ダンプするファイルシステム毎に、これも繰り返し 使われる事になる一定数のテープを使います。 .El .Pp 何ヵ月かの後、毎日と毎週のテープはダンプサイクルから順に外し、 新品のテープを導入すべきです。 .Sh 環境変数 環境変数 .Ev RMT は、リモートの .Xr rmt 8 プログラムのパス名を決定するのに用いられます。 .Sh 関連ファイル .Bl -tag -width /etc/dumpdates -compact .It Pa /dev/sa0 デフォルトのダンプテープユニット .It Pa /etc/dumpdates ダンプの日付を記録するファイル (これは変更可能です。 .Fl D オプションを参照してください) .It Pa /etc/fstab ダンプテーブル : ファイルシステムと頻度を決めるファイル .It Pa /etc/group .Em operator グループを検索する .El .Sh 関連項目 .Xr chflags 1 , .Xr fstab 5 , .Xr restore 8 , .Xr rmt 8 .Sh 診断 詳しいメッセージがたくさん出ます。 .Pp 正常時は終了コード 0 で終了します。 開始時のエラーは終了コード 1 で、 異常終了は終了コード 3 で表されます。 .Sh バグ 32 個未満のファイルシステムからの読み取りエラーは無視されます。 .Pp 各リール (ボリューム) ごとに新たなプロセスが作られ、 リールを書き終った親プロセスは テープ全体の書き込みが終るまで待っています。 .Pp 現状では、 .Xr physio 9 スライスのリクエストは 64 KB の塊になります。したがって、それより大きな -テープのブロックサイズを使用することはできず、 +出力ブロックサイズを使用することはできず、 .Nm はこれが発生するのを防ぎます。 .Pp .Nm の .Fl W や .Fl w オプションは、 .Pa /etc/fstab にリストされていても、 .Pa dumpdates ファイル に記録のないファイルシステムについては報告しません。 .Pp .Nm コマンドが、 ダンプシーケンスについて知っていて、 使い散らかしたテープの使用履歴を管理でき、 どのテープをマウントすれば良いかオペレータに教えてくれ、 .Xr restore を実行するオペレータをもっと助けてくれたら、 もっと使いやすいでしょうね。 .Pp セキュリティ的な歴史により、 .Nm は、root 以外のユーザでリモートバックアップを行うことはできません。 これは、 .Fx の今後のバージョンでは修正されるでしょう。 現状では、(従来通り) setuid されていれば正常に動作しますが、 セキュリティ的なリスクを伴います。 .Sh 歴史 .Nm コマンドは、 .At v6 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/fdisk.8 b/ja_JP.eucJP/man/man8/fdisk.8 index bb0049bd43..fee9fa0550 100644 --- a/ja_JP.eucJP/man/man8/fdisk.8 +++ b/ja_JP.eucJP/man/man8/fdisk.8 @@ -1,464 +1,467 @@ -.\" %FreeBSD: src/sbin/i386/fdisk/fdisk.8,v 1.17.2.10 2001/08/16 11:35:43 ru Exp % +.\" %FreeBSD: src/sbin/i386/fdisk/fdisk.8,v 1.17.2.11 2002/04/25 16:25:12 trhodes Exp % .\" .\" $FreeBSD$ .Dd October 4, 1996 .Dt FDISK 8 .Os .Sh 名称 .Nm fdisk -.Nd PC パーティションのメンテナンスプログラム +.Nd PC スライステーブルのメンテナンスプログラム .Sh 書式 .Nm .Op Fl BIaistu .Op Fl b Ar bootcode .Op Fl 1234 .Op Ar disk .Bl -tag -width time .Nm .Fl f Ar configfile .Op Fl itv .Op Ar disk .Sh 前置き BIOS がカーネルをブートするために、 一定の約束をちゃんと守らねばなりません。 -ディスクのセクタ 0 はブートコード、パーティションテーブル、 +ディスクのセクタ 0 はブートコード、スライステーブル、 マジックナンバを含んでいなければならないのです。 -BIOS パーティションはディスクをいくつかの部分に分けるのにも使われます。 +BIOS スライスはディスクをいくつかの部分に分けるのにも使われます。 BIOS はセクタ 0 を読み込み、マジックナンバを確認します -そして、セクタ 0 のブートコードはパーティションテーブルを探し、 -どのパーティションが +そして、セクタ 0 のブートコードはスライステーブルを探し、 +どのスライスが .Em アクティブ と印されているか判定します。 そして、このブートコードはブートストラップを .Em アクティブ -パーティションから読み込み、ブート可能の印が付いていればこれを実行します。 -DOS では、1 個以上のパーティションと 1 個の +スライスから読み込み、ブート可能の印が付いていればこれを実行します。 +DOS では、1 個以上のスライスと 1 個の .Em アクティブ を持てます。 DOS の .Nm プログラムは、 -ディスク空間を 1 個以上のパーティションに分割して、1 個の +ディスク空間を 1 個以上のスライスに分割して、1 個の .Em アクティブ を設定することができます。 .Sh 解説 .Fx のプログラム .Nm は、DOS のそれと似た目的に役立ちます。 -第 1 の形は、パーティション情報の表示や、 -パーティションテーブルの対話的な編集に使われます。 +第 1 の形は、スライス情報の表示や、 +スライステーブルの対話的な編集に使われます。 第 2 の形は、 .Ar configfile -を使ってパーティションテーブルを書き込むという使い方であり、 +を使ってスライステーブルを書き込むという使い方であり、 他のスクリプト/プログラムから利用するよう設計されています。 .Pp オプション: .It Fl a -アクティブパーティションの変更のみを行ないます。 +アクティブスライスの変更のみを行ないます。 .Fl f があるときには無視されます。 .It Fl b Ar bootcode ブートコードをファイル .Ar bootcode から取得します。 デフォルトは .Pa /boot/mbr です。 .It Fl B ディスクのセクタ 0 に含まれるブートコードを再初期化します。 もし .Fl f があると、無視されます。 .It Fl f Ar configfile -パーティションの値をファイル +スライスの値をファイル .Ar configfile を使って設定します。 .Fl i もあるときには、 .Ar configfile が読み込まれるに先立って、 -存在するパーティションは全部消され(つまり「未使用」の印をつけられる) +存在するスライスは全部消され(つまり「未使用」の印をつけられる) ますが、この場合を除いて、 .Ar configfile -はいつも存在するパーティションの変更を行ないます。 +はいつも存在するスライスの変更を行ないます。 .Ar configfile は "-" であってもよく、この場合 .Ar 標準入力 が読まれます。 ファイルの構文は、以降の .Sx 設定ファイル の節をご覧下さい。 .Pp .Em 警告 : .Fl f が使われたときには、 (対話モードで尋ねられるように) -本当にパーティションテーブルを書き込むのかどうかを尋ねられません。 +本当にスライステーブルを書き込むのかどうかを尋ねられません。 用心して使うこと! .It Fl i ディスクのセクタ 0 を初期化します。 もし .Fl f がなければ、 .Fl u の意味も含みます。 .It Fl I 単一の FreeBSD スライスがディスク全体となるように、 セクタ 0 の内容を初期化します。 .It Fl s サマリ情報を表示し、終了します。 .It Fl t -テストモード; パーティションテーブル値を書き込みません。一般に +テストモード; スライステーブル値を書き込みません。一般に .Fl f -オプションを付けて、パーティションテーブルに書き込まれるはずのものを +オプションを付けて、スライステーブルに書き込まれるはずのものを 見るのに使われます。 .Fl v の意味を含みます。 .It Fl u ディスクのセクタ 0 を更新 (編集) するのに使われます。 .Fl f があるときには無視されます。 .It Fl v 冗長になります。 .Fl f が使われたときには、 .Nm -はディスクに書き込まれるパーティションテーブルを表示します。 +はディスクに書き込まれるスライステーブルを表示します。 .It Fl 1234 1 個の fdisk エントリの操作だけを行ないます。 .Fl f があるときには無視されます。 .El .Pp 最後のディスク名 .Ar disk は、 .Sq 裸の ディスク名だけ、 つまり .Ql da0 か、あるいは .Pa /dev の下に完全に限定されたデバイスノードで与えることができます。 もし省略された場合、ディスク .Ql ad0 , .Ql da0 が、どれか 1 個が応答して見付かるまで この順序で検索されます。 .Pp -引数なしで呼び出されたときには、 -セクタ 0 パーティションテーブルを表示します。 +オプションなしで呼び出されたときには、 +.Nm +はセクタ 0 スライステーブルを表示します。 例えば: .Bd -literal ******* Working on device /dev/ad0 ******* parameters extracted from in-core disklabel are: cylinders=769 heads=15 sectors/track=33 (495 blks/cyl) parameters to be used for BIOS calculations are: cylinders=769 heads=15 sectors/track=33 (495 blks/cyl) Warning: BIOS sector numbering starts with sector 1 Information from DOS bootblock is: The data for partition 1 is: sysid 165,(FreeBSD/NetBSD/386BSD) start 495, size 380160 (185 Meg), flag 0 beg: cyl 1/ sector 1/ head 0; end: cyl 768/ sector 33/ head 14 The data for partition 2 is: sysid 164,(unknown) start 378180, size 2475 (1 Meg), flag 0 beg: cyl 764/ sector 1/ head 0; end: cyl 768/ sector 33/ head 14 The data for partition 3 is: The data for partition 4 is: sysid 99,(ISC UNIX, other System V/386, GNU HURD or Mach) start 380656, size 224234 (109 Meg), flag 80 beg: cyl 769/ sector 2/ head 0; end: cyl 197/ sector 33/ head 14 .Ed .Pp このディスクは、たまたまディスク全体を満す -3 つのパーティションに分割されています。 -2 つ目のパーティションは最初のパーティションの最後に重なっています。 +3 つのスライスに分割されています。 +2 つ目のスライスは最初のスライスの最後に重なっています。 (デバッグ目的に使われます) .Bl -tag -width "cyl, sector と head" .It Em "sysid" -パーティションのラベル付に使われます。 +スライスのラベル付に使われます。 .Fx ではマジックナンバ 165 (10進) A5 (16進)を予約しています。 .It Em start No と Em size -パーティションのセクタ単位での +スライスのセクタ単位での 開始アドレスとサイズです。 .It Em "flag 80" -これがアクティブパーティションであることを指定します。 +これがアクティブスライスであることを指定します。 .It Em cyl , sector No と Em head -パーティションの +スライスの 開始アドレスと終了アドレスを指定するのに使われます。 .It Em 注 : これらの数字は、 BIOS の理解するディスクジオメトリを使って計算され、 ブートブロックに保存されます。 .El .Pp -フラグ .Fl i -または +と .Fl u -は、 -もし -.Fl f -オプションが使われていない限り、 -パーティションデータを更新すべきであることを指示します。 +のオプションは、 +スライスデータを更新すべきであることを指示します。 もし .Fl f がなければ、 .Nm -プログラムは対話モードに入ります。 -このモードでは明示的に指示しない限り、どんなデータも変更しないように -設計されています。 +は対話モードに入ります。 +このモードでは、 +.Nm +に明示的に指示しない限り、どんな変更もディスクに書き込みません。 .Nm はこのような振舞いを保証するよう、質問のデフォルトを選択しています。 .Pp .Nm -は各々のパーティションを表示し、 +は各々のスライスを表示し、 それを編集したいかどうかを尋ねます。 yes と答えたら、 -古い値を表示し、新しい値を尋ねて +.Nm +は古い値を表示し、新しい値を尋ねて 各々のフィールドを進みます。 -1 個のパーティションが終了したら、 +1 個のスライスが終了したら、 .Nm はそれを表示して、それで正しいかどうかを尋ねます。 そして .Nm は次のエントリに進みます。 .Pp .Em cyl , sector , .Em head のフィールドを正しく得るにはちょっとした芸当が要ります。 そのためデフォルトでは、 .Nm が代わって計算しますが、選択してそれらの値を指定することもできます。 .Pp -全てのパーティションが進行した後、 +全てのスライスが進行した後、 .Em アクティブ -パーティション変更をすることができます。 +スライス変更をすることができます。 最後に、 -最初のセクタのデータが全部集められたときに、 -本当にセクタ 0 を書換えても良いか尋ねられます。 +セクタ 0 の新規データが全部集められたときに、 +本当に書換えても良いか尋ねられます。 yes と答えた場合だけ、データはディスクに書き込まれます。 .Pp .Fl u フラグと .Fl i -の間の違いは、 +フラグの間の違いは、 .Fl u -フラグはディスク上にあるフィールドの値を編集するだけですが、 +フラグはディスク上にあるフィールドの値を編集 (更新) するだけですが、 一方 .Fl i フラグはセクタ 0 を "初期化" するのに使われます; ディスク全体を .Fx 用に使えるように、 -最後の BIOS パーティションをセットアップして、それをアクティブにします。 +最後の BIOS スライスをセットアップして、それをアクティブにします。 .Sh 注 開始シリンダ等の自動計算は、 BIOS がそのドライブのジオメトリであると思っている数字をもとに行なわれます。 これらの数字はデフォルトでは、メモリ上のディスクラベルから取りますが、 -プログラムの起動時にそれらを変更する機会が与えられます。 +.Nm +の起動時にそれらを変更する機会が与えられます。 このおかげでユーザは、 BIOS がジオメトリ変換を行なうドライブでも動作できるブートブロックを 作ることができます。 .Pp もしディスクのレイアウトを手作業で変更するのなら、 どうか .Fx -パーティションがシリンダ境界から開始することを確認してください。 +スライスがシリンダ境界から開始することを確認してください。 その後のたくさんの決定がこのことを仮定しています。 (これは必要ではなかったのかもしれませんが) .Pp -すでにあるパーティションを編集すると、 -たぶんそのパーティションのデータを失うことになるでしょう。 +すでにあるスライスを編集すると、 +たぶんそのスライスのデータを失うことになるでしょう。 .Pp -このプログラムがどう働くかを調べるために、 +.Nm +がどう働くかを調べるために、 1 度か 2 度は対話的に実行するべきです。 これは、最後の質問に否定で答える限り完全に安全です。 このマニュアルでは完全に説明されていませんが、 -プログラムが検出する微妙な点があります。 +.Nm +が検出する微妙な点があります。 .Sh 設定ファイル .Fl f オプションが与えられたとき、 .Ar configfile -の値を使ってディスクのパーティションテーブルを書換えることができます。 +の値を使ってディスクのスライステーブルを書換えることができます。 このファイルの構文はたいへん単純です。 -各行はコメントか仕様のどちらかで、空白 (改行を除く) は無視されます。 +各行はコメントか仕様のどちらかです。 .Bl -tag -width Ds .It Xo .Ic # .Ar comment ... .Xc \&"#" で開始している行はコメントで無視されます。 .It Xo .Ic g .Ar spec1 .Ar spec2 .Ar spec3 .Xc -パーティション計算で使う BIOS ジオメトリを設定します。 +スライス計算で使う BIOS ジオメトリを設定します。 前に文字を伴った数字で、3 つの値を指定することが必要です。 .Bl -tag -width Ds .Sm off .It Cm c Ar num .Sm on シリンダの数を .Ar num に設定します。 .Sm off .It Cm h Ar num .Sm on ヘッドの数を .Ar num に指定します。 .Sm off .It Cm s Ar num .Sm on トラックあたりのセクタの数を .Ar num に設定します。 .El .Pp これらの指定はどんな順序でもよく、先頭の文字がどの値かを決定します; しかし、3 つ全てを指定することが必要です。 .Pp -この行はパーティション情報を指定するどんな行よりも前に現れなくてはなりません。 +この行はスライス情報を指定するどんな行よりも前に現れなくてはなりません。 .Pp 次の条件が真でなければ、エラーです: .Pp .Bd -literal -offset indent 1 <= シリンダの数 1 <= ヘッドの数 <= 256 1 <= トラックあたりのセクタの数 < 64 .Ed .Pp シリンダの数は 1024 以下でなければなりませんが、 -しかしこれは強制されるものではなく、警告が出力されるでしょう。 +しかしこれは強制されるものではなく、警告が表示されるでしょう。 ブート可能な .Fx -パーティション ("/" ファイルシステム) は +スライス ("/" ファイルシステム) は 最初の 1024 シリンダ以内に収まっていなといけません; もしそうでなければ、ブートに失敗するかもしれません。 -ブートしないパーティションには、この制限はありません。 +ブートしないスライスには、この制限はありません。 .Pp 1019 シリンダ、39 ヘッド、63 セクタのディスクの例 (これらの全てはみな等価): .Pp .Bd -literal -offset indent g c1019 h39 s63 g h39 c1019 s63 g s63 h39 c1019 .Ed .It Xo .Ic p .Ar partition .Ar type .Ar start .Ar length .Xc .Ar partition -(1-4) で与えられたパーティションに、タイプ +(1-4) で与えられたスライスに、タイプ .Ar type 、開始セクタ .Ar start 、長さ (セクタ数) .Ar length を設定します。 .Pp -これらの行で明示的に言及されたパーティションだけが変更されます; -\&"p" 行で参照されていないパーティションは変更されません。 -しかし、無効なパーティションテーブルがあるか、 +これらの行で明示的に言及されたスライスだけが変更されます; +\&"p" 行で参照されていないスライスは変更されません。 +しかし、無効なスライステーブルがあるか、 .Fl i オプションが指定されているなら、 -存在するパーティションエントリは全て取り除かれ (未使用の印がつけられ)、 -パーティション情報を明示的に設定するのに、 +存在するスライスエントリは全て取り除かれ (未使用の印がつけられ)、 +スライス情報を明示的に設定するのに、 \&"p" 行が使われなければなりません。 -もし複数のパーティションを設定する必要があるなら、 +もし複数のスライスを設定する必要があるなら、 複数の "p" 行が指定されなければなりません; -1 行で 1 個のパーティションを設定します。 +1 行で 1 個のスライスを設定します。 .Pp -これらのパーティション行は、もしあればジオメトリ指定行の後に現れなければ +これらのスライス行は、もしあればジオメトリ指定行の後に現れなければ なりません。 .Pp .Fx -パーティションの +スライスの .Ar type -は 165 です。0 のパーティションタイプを指定すると、 -パーティションを取り除き未使用の印をつけたのと同じことになります; +は 165 です。0 のスライスタイプを指定すると、 +スライスを取り除き未使用の印をつけたのと同じことになります; しかし、("0" とかの) ダミーの値が .Ar start と .Ar length に指定されなければなりません。 .Pp -注: パーティションの開始オフセットはヘッド境界まで必要なら繰り上げられ、 +注: スライスの開始オフセットはヘッド境界まで必要なら繰り上げられ、 終了オフセットはシリンダ境界まで必要なら繰り下げられます。 .Pp -例: パーティション 4 を取り除いて、未使用の印をつける: +例: スライス 4 を取り除いて、未使用の印をつける: .Pp .Bd -literal -offset indent p 4 0 0 0 .Ed .Pp -例: パーティション 1 を +例: スライス 1 を .Fx -パーティションであって、 +スライスであって、 セクタ 1 から始まって 2503871 セクタの長さに設定する (注: これらの値は、 対応するヘッドとシリンダ境界に繰り上げ/繰り下げられます): .Pp .Bd -literal -offset indent p 1 165 1 2503871 .Ed .Pp .It Xo .Ic a .Ar partition .Xc .Ar partition -パーティションをアクティブにします。 +スライスをアクティブにします。 設定ファイルのどこに現われても構いませんが、 1 個だけ存在することが必要です。 .Pp -例: パーティション 1 をアクティブパーティションにします: +例: スライス 1 をアクティブスライスにします: .Pp .Bd -literal -offset indent a 1 .Ed .El .Sh 関連ファイル .Bl -tag -width /boot/mbr -compact .It Pa /boot/mbr デフォルトのブートコード .El .Sh 関連項目 .Xr boot0cfg 8 , -.Xr disklabel 8 +.Xr disklabel 8 , +.Xr newfs 8 .Sh バグ デフォルトのブートコードは、 -必ずしもすべてのパーティションタイプを正しく扱いません。 +必ずしもすべてのスライスタイプを正しく扱いません。 特に MS-DOS 6.x 以降に導入されたものについてはそうです。 .Pp プログラム全体をよりユーザフレンドリにするべきです。 .Pp -このマニュアルを通して使われている術語 -.Sq パーティション -は、他で使われる術語に一致させるため、 -本当は -.Sq スライス -であるべきです。 +.Fx +の新規ユーザは、 +.Ar スライス +と +.Ar パーティション +の違いが分からず、慣れるまで大変でしょう。 .Pp ディスク全体を .Fx に捧げるためには、このコマンドは使えません。 これには .Xr disklabel 8 コマンドを使わなればなりません。 diff --git a/ja_JP.eucJP/man/man8/ispppcontrol.8 b/ja_JP.eucJP/man/man8/ispppcontrol.8 deleted file mode 100644 index 6b34418049..0000000000 --- a/ja_JP.eucJP/man/man8/ispppcontrol.8 +++ /dev/null @@ -1,251 +0,0 @@ -.\" Copyright (C) 1997 by Joerg Wunsch, Dresden -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS -.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, -.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" From: spppcontrol.1,v 1.1.1.1 1997/10/11 11:30:30 joerg Exp -.\" -.\" %Id: ispppcontrol.8,v 1.2 2000/08/31 08:51:06 hm Exp % -.\" -.\" %FreeBSD: src/usr.sbin/i4b/ispppcontrol/ispppcontrol.8,v 1.4.2.1 2001/08/01 17:45:09 obrien Exp % -.\" -.\" last edit-date: [Mon Oct 9 16:20:25 2000] -.\" -.\" $FreeBSD$ -.Dd August 31, 2000 -.Os -.Dt ISPPPCONTROL 8 -.Sh 名称 -.Nm ispppcontrol -.Nd isdn4bsd isp インタフェースのパラメータの表示または設定 -.Sh 書式 -.Nm -.Op Fl v -.Ar ifname -.Op Ar parameter Ns Op \&= Ns Ar value -.Op Ar ... -.Sh 解説 -.Xr i4bisppp 4 -ドライバには、 -.Xr ifconfig 8 -にて調整可能な設定の他に、 -多くの追加引数やオプションパラメータが必要となるかもしれません。 -これらには、認証プロトコルのパラメータなどと、 -他の調整可能なコンフィギュレーション変数があります。 -.Nm -ユーティリティは、現在の設定を表示したり、 -これらのパラメータを必要に応じて調整するために使用可能です。 -.Pp -どのような用途においても、 -.Nm -を呼び出す時には、少なくともパラメータ -.Ar ifname -を指定して、インタフェースの名前を指定する必要があります。 -このインタフェースに対して、設定が行われるかまたは設定が表示されます。 -.Xr ifconfig 8 -または -.Xr netstat 1 -を使用して、どのインタフェースが使用可能かを確認してください。 -.Pp -他にパラメータを指定しない場合、 -.Nm -は、 -.Ar ifname -の現在の設定を列挙 (list) して終了します。 -報告される設定にはインタフェースの現在の PPP フェーズも含まれ、その名は -.Em dead , -.Em establish , -.Em authenticate , -.Em network , -.Em terminate -のうちの 1 つです。 -認証プロトコルがインタフェースに対して設定されている場合、 -使用するプロトコル名と、使用するまたは期待されるシステム名と、 -そして認証プロトコルに対して使用可能なオプションがあればそれを表示します。 -認証に使用する秘密情報 ( -.Em キー -とも呼ばれます) は、この機能が使用するシステムコールによって返されないため、 -表示されません。 -.Pp -追加のパラメータを指定する場合、スーパユーザの特権が必要になり、コマンドは -.Ql 設定 (set) -モードにて動作します。 -オプション -.Fl v -が有効にならない限り、静かに動作します。 -.Fl v -を指定すると、他のすべての動作を行った後、 -最後に上述のように設定を表示します。 -インタフェースが現在 -.Em dead -フェーズ以外である場合、このモードを使用しようとしてもリジェクトされます。 -インタフェースを強制的に -.Em dead -フェーズにするためには、 -.Xr ifconfig 8 -をパラメータ -.Ql down -付きで呼び出せば良いことに注意してください。 -.Pp -現在サポートされているパラメータには次のものがあります: -.Bl -tag -offset indent -width indent -.It Ar authproto Ns \&= Ns Em protoname -相手と自分の両方の認証プロトコルを -.Em protoname -に設定します。 -プロトコル名は -.Ql chap , -.Ql pap , -.Ql none -のいずれかです。 -最後の場合、 -指定したインタフェースにおいて認証プロトコルは使用されなくなります。 -この副作用として、 -このインタフェースに関する認証関連の他のパラメータもまた消去されます -(つまり、システム名と認証における秘密情報を忘れてしまいます)。 -.It Ar myauthproto Ns \&= Ns Em protoname -上と同じですが、リンクの自分側にのみ作用します。 -すなわち、相手が認証者であり、かつ、 -自分を認証してもらう必要がある場合に使用されるプロトコルです -.It Ar hisauthproto Ns \&= Ns Em protoname -上と同じですが、リンクの相手側にのみ作用します。 -.It Ar myauthname Ns \&= Ns Em name -認証プロトコルにおける自分のシステム名を設定します。 -.It Ar hisauthname Ns \&= Ns Em name -認証プロトコルにおける相手のシステム名を設定します。 -CHAP では、これはヒントとしてのみ使用され、 -相手が違う名前を提供した場合には警告メッセージが表示されます。 -PAP では、これは相手が相手自身であることを認めさせるときに使用すべき名前です -(相手の秘密情報と関連があります)。 -.It Ar myauthsecret Ns \&= Ns Em secret -認証フェーズにおいて使用する、自分の秘密情報 (キーとパスワード) を設定します。 -CHAP では、これは相手のチャレンジに基づく -返答のハッシュ値を計算するために使用されます。 -PAP では、これはシステム名とともにプレインテキストにて送信されます。 -秘密情報にシェルのメタ文字 (や空白) を含む場合、 -秘密情報をシェルからエスケープすることを忘れないようにしてください。 -.It Ar myauthkey Ns \&= Ns Em secret -上と同様です。 -.It Ar hisauthsecret Ns \&= Ns Em secret -上と同様ですが、 -自分が認証者であり、かつ相手を認証する必要がある場合に使用されます。 -.It Ar hisauthkey Ns \&= Ns Em secret -上と同様です。 -.It Ar callin -相手から呼び出されるときにのみ、相手を認証する必要があり、 -自分が呼び出す場合には不要であることを示します。 -相手が対称的な認証プロトルを実装していない場合に、必要となります -(例えば Ascend ルータ)。 -.It Ar always -.Ar callin -の逆です。どちらが呼び出す場合でも、 -常に相手を認証する必要があることを示します。 -これがデフォルトであり、 -.Ql list -モードでは明示的に表示されません。 -.It Ar norechallenge -CHAP でのみ意味があります。 -最初に CHAP 交換が成功したならば、相手に再チャレンジしません。 -相手の実装が壊れていて、 -接続が確立した後の再チャレンジを認識しない場合、対処として使用します。 -.It Ar rechallenge -CHAP において、接続がネットワークフェーズである間、 -ランダムな間隔にて再チャレンジを送信します。 -(現在、間隔は 300 からおよそ 800 秒です。) -これがデフォルトであり、 -.Ql list -モードでは明示的に表示されません。 -.It Ar lcp-timeout Ns \&= Ns Em timeout-value -LCP タイムアウトの値を変更します。 -LCP タイムアウトのデフォルト値は、現在 3 秒であり、 -リモートの PPP 実装によってはこれは高すぎます。 -タイムアウト値はミリ秒単位で指定します。 -.It Ar enable-vj -Van Jacobsen ヘッダ圧縮のネゴシエーションを有効にします。 -.It Ar disable-vj -Van Jacobsen ヘッダ圧縮のネゴシエーションを無効にします。 -.El -.Sh 使用例 -.Bd -literal -# ispppcontrol isp0 -isp0: phase=dead - myauthproto=chap myauthname="uriah" - hisauthproto=chap hisauthname="ifb-gw" norechallenge - lcp timeout: 3.000 s - enable_vj: on -.Ed -.Pp -isp0 の設定をします。 -インタフェースは、現在 -.Em dead -フェーズ、つまり LCP 層はダウンしているため、通信できません。 -接続の両端は CHAP プロトコルを使用し、 -当方のシステム名は -.Ql uriah -であるとリモート側に対して告げ、 -リモート側は -.Ql ifb-gw -という名前で認証されると期待されます。 -最初の CHAP 交換が成功すると、更なる CHAP チャレンジは送信されません。 -おそらく CHAP に関する双方の秘密情報があるでしょうが、それらは表示されません。 -.Pp -.Bd -literal -# ispppcontrol isp0 \e - authproto=chap \e - myauthname=uriah myauthsecret='some secret' \e - hisauthname=ifb-gw hisauthsecret='another' \e - norechallenge -.Ed -.Pp -インタフェースを上記の例の状態にするために、このように -.Nm -を呼び出したかもしれません。 -.Sh 関連項目 -.Xr netstat 1 , -.Xr i4bisppp 4 , -.Xr ifconfig 8 -.Rs -.%A B. Lloyd, W. Simpson -.%T "PPP Authentication Protocols" -.%O RFC 1334 -.Re -.Rs -.%A W. Simpson, Editor -.%T "The Point-to-Point Protocol (PPP)" -.%O RFC 1661 -.Re -.Rs -.%A W. Simpson -.%T "PPP Challenge Handshake Authentication Protocol (CHAP)" -.%O RFC 1994 -.Re -.Sh 歴史 -.Nm -ユーティリティは、 -.Fx 3.0 -に登場した -.Xr spppcontrol 8 -ユーティリティを元にしました。 -.Sh 作者 -プログラムの記述を -.An J\(:org Wunsch , -Dresden が行いました。 diff --git a/ja_JP.eucJP/man/man8/lpc.8 b/ja_JP.eucJP/man/man8/lpc.8 index a8133f7ef8..408ced4e31 100644 --- a/ja_JP.eucJP/man/man8/lpc.8 +++ b/ja_JP.eucJP/man/man8/lpc.8 @@ -1,202 +1,203 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)lpc.8 8.5 (Berkeley) 4/28/95 -.\" %FreeBSD: src/usr.sbin/lpr/lpc/lpc.8,v 1.8.2.6 2001/08/16 15:56:03 ru Exp % +.\" %FreeBSD: src/usr.sbin/lpr/lpc/lpc.8,v 1.8.2.7 2002/04/25 21:43:01 gad Exp % .\" .\" $FreeBSD$ .\" .Dd June 20, 2001 .Dt LPC 8 .Os .Sh 名称 .Nm lpc .Nd ラインプリンタの制御を行う .Sh 書式 .Nm .Op Ar command Op Ar argument ... .Sh 解説 .Nm は、システム管理者がラインプリンタの動作を制御するために使われます。 各ラインプリンタの設定は .Pa /etc/printcap で行います。 .Nm は以下の目的で利用します。 .Bl -bullet -offset indent .It プリンタの利用可能/不可能の設定を行う .It スプールキューへのジョブ投入可能/不可能の設定を行う .It スプールキュー内のジョブの順番を並べ直す .It プリンタ、スプールのキュー、およびプリンタデーモンのステータスを調べる .El .Pp 引数なしの場合、 .Nm は標準入力からコマンドを読むためにプロンプトを出します。 引数をつけた場合、第 1 引数をコマンドとし、残りの引数を そのコマンドのパラメータと解釈します。 標準入力をリダイレクトして、 .Nm にファイルからコマンドを読み込ませることもできます。 コマンドは略して書くことができます。 利用可能なコマンドを以下に列挙します。 .Pp .Bl -tag -width indent -compact .It Ic \&? Op Ar command ... .It Ic help Op Ar command ... 引数で指定したコマンドの簡単な説明を表示します。引数がないときはコマンド の一覧を表示します。 .Pp .It Ic abort Brq Cm all | Ar printer ローカルホスト上の動作中のスプールデーモンをただちに終了させ、指定した プリンタをプリントアウトできないように ( .Xr lpr 1 が新しいデーモンをスタートさせないように) します。 .Pp .It Ic clean Brq Cm all | Ar printer ローカルマシン上の指定したプリンタのキューから、出力できない (すなわち、 完全なプリンタジョブの形になっていない) テンポラリファイル、データファイル、 コントロールファイルをすべて削除します。 本コマンドは、各プリンタキューに対し、 スプールディレクトリ中の .Pa core ファイルも探し、 発見されたものを列挙します。 本コマンドは .Pa core ファイルを削除しません。 .Ic tclean コマンドも参照してください。 .Pp .It Ic disable Brq Cm all | Ar printer 指定したプリンタのキューをオフにします。これにより、 .Xr lpr 1 によって新しいプリンタジョブがキューに入らないようになります。 .Pp .It Ic down Bro Cm all | Ar printer Brc Ar message ... 指定したプリンタのキューをオフにし、プリントアウトできないようにし、 プリンタのステータスファイルに .Ar message を書きます。メッセージは引用符で囲む必要はなく、残りの引数は .Xr echo 1 と同様に扱われます。通常、この コマンドはプリンタをダウンさせ、ユーザに対しそのダウンの理由を .Xr lpq 1 によって説明させるために使われます。 .Pp .It Ic enable Brq Cm all | Ar printer 指定したプリンタ用のキューのスプーリングを行うようにします。これは、 .Xr lpr 1 で新しいプリンタジョブをスプールキューに挿入することができるよ うにします。 .Pp .It Ic exit .It Ic quit .Nm を終了させます。 .Pp .It Ic restart Brq Cm all | Ar printer 新しいプリンタデーモンの再スタートを試みます。このコマンドは、異常な 状態になって突然デーモンが死に、キュー内にジョブが残ったままになった場合に 有効です。この状態が起きたときには、 .Xr lpq 1 は現在デーモンが動いていないことを報告します。 もしあなたがスーパユーザなら、現在動いているデーモンを先に殺してください (つまり、動かなくなったデーモンを殺してから再スタートさせるわけです)。 .Pp .It Ic start Brq Cm all | Ar printer 指定したプリンタを出力可能にしてスプールデーモンをスタートさせます。 .Pp .It Ic status Brq Cm all | Ar printer ローカルマシン上のデーモンとキューの状態を表示します。 .Pp .It Ic stop Brq Cm all | Ar printer 現行のジョブが終了したあとでデーモンのスプーリングをストップさせ、 プリントアウトできないようにします。 .Pp .It Ic tclean Brq Cm all | Ar printer 本コマンドは、 .Ic clean コマンドのテスト実行を行います。 同じチェックが行われますが、同様の .Ic clean コマンドが入力された場合に実行する事柄を、本コマンドは表示します。 本コマンドは、いかなるファイルも削除しません。 .Ic clean は特権コマンドですが、 .Ic tclean は制限がありません。 .Pp .It Ic topq Ar printer Xo .Op Ar jobnum ... .Op Ar user ... .Xc 引数に並べた順番で、ジョブをキューの先頭に移動させます。 .Pp .It Ic up Brq Cm all | Ar printer すべての状態を可能状態(enable)にし、新しいプリンタデーモンをスタートさせます。 .Ic down の逆です。 .El .Sh 関連ファイル .Bl -tag -width /var/spool/*/lockx -compact .It Pa /etc/printcap プリンタの設定を記述するファイル .It Pa /var/spool/* スプールディレクトリ .It Pa /var/spool/*/lock プリンタキューの制御を行うためのロックファイル .El .Sh 関連項目 .Xr lpq 1 , .Xr lpr 1 , .Xr lprm 1 , .Xr printcap 5 , +.Xr chkprintcap 8 , .Xr lpd 8 .Sh 診断 .Bl -diag .It "?Ambiguous command" コマンド指定が省略し過ぎのため、複数のコマンドにマッチしています。 .It "?Invalid command" マッチするコマンドがありません。 .It "?Privileged command" "operator" グループのメンバか root でなければこのコマンドは 実行できません。 .El .Sh 歴史 .Nm コマンドは .Bx 4.2 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/lpd.8 b/ja_JP.eucJP/man/man8/lpd.8 index 17ac0a12e1..755dc0e4f4 100644 --- a/ja_JP.eucJP/man/man8/lpd.8 +++ b/ja_JP.eucJP/man/man8/lpd.8 @@ -1,299 +1,307 @@ \" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)lpd.8 8.3 (Berkeley) 4/19/94 -.\" %FreeBSD: src/usr.sbin/lpr/lpd/lpd.8,v 1.14.2.8 2001/08/16 15:56:04 ru Exp % +.\" %FreeBSD: src/usr.sbin/lpr/lpd/lpd.8,v 1.14.2.10 2002/04/25 21:43:01 gad Exp % .\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man8/lpd.8,v 1.13 2001/08/05 02:45:49 horikawa Exp $ +.\" $FreeBSD$ .\" .Dd April 19, 1994 .Dt LPD 8 .Os .Sh 名称 .Nm lpd .Nd ラインプリンタ・スプーラ・デーモン .Sh 書式 .Nm -.Op Fl cdlpW46 +.Op Fl cdlpsW46 .Op Ar port# .Sh 解説 .Nm はラインプリンタのためのデーモン (スプール領域を管理するプログラム) で、 通常はブート時に .Xr rc 8 ファイルから起動されます。このデーモンは、接続されているプリンタの情報を .Xr printcap 5 ファイルを一通り読み込むことによって取得し、クラッシュ後に残っていた ファイルがあれば印刷します。その後、システムコールの .Xr listen 2 と .Xr accept 2 を用いてキュー内のファイルの印刷・スプール領域へのファイル転送・ キューの表示・キューからのジョブの削除などの要求を受け付けます。 何か要求があると lpd は子プロセスを fork してその要求を処理するので、 親プロセスは続けて次の要求待ちをできるようになっています。 .Pp 使用できるオプション: .Bl -tag -width Ds .It Fl c デフォルトでは、リモートホストがローカルホスト上の .Nm へ印刷を試みた際にエラーが発生すると、 .Nm はリモートホストに対してエラーメッセージのみを送信します。 .Fl c フラグを使用すると、 .Nm はこれらの接続エラーを .Xr syslog 3 で記録します。 .It Fl d インターネットで listen するソケットにて .Dv SO_DEBUG をオンにします ( .Xr setsockopt 2 参照)。 .It Fl l .Fl l オプションを つけると、 .Nm はネットワークから受けとった正当な要求について記録をとるようになります。 これはデバッグを行う際に有用です。 .It Fl p .Fl p -フラグは、 +フラグは +.Fl s +フラグの別名です。 +このフラグは価値が低下しており、将来のバージョンの +.Nm +では削除されるかもしれません。 +.Fl s +(セキュア) フラグは、 .Nm に、インターネットで listen するソケットをオープンしないようにさせます。 これは、リモートホストからの接続を .Nm が拒否するもののローカルユーザからの印刷要求は許可することを意味します。 .It Fl W デフォルトでは、 .Nm デーモンはリモートホストの予約ポート (1024 未満) からの接続のみを受け付けます。 .Fl W フラグを指定すると、 .Nm はすべてのポートからの接続を受け付けます。 Windows 用の特定の lpr 実装からの印刷ジョブを受け付けたい場合に有用です。 .It Fl 4 inet のみ。 .It Fl 6 inet6 のみ。 .It Fl 46 inet と inet6 (デフォルト)。 .It Ar "port#" 他のプロセスと接続するのに用いる インターネットポート番号は通常 .Xr getservbyname 3 を使って取得しますが、引数 .Ar port# を使って変更することも可能です。 .El .Pp プリンタへのアクセス制限は二つの手段を用いて行われます。第一に、全ての要求は .Pa /etc/hosts.equiv ファイルもしくは .Pa /etc/hosts.lpd ファイルに列挙さ れているマシンからのものでなければなりません。 第二に、アクセスされるプリンタに関する .Xr printcap 5 エントリに .Li rs 特性の指定があると、 .Em lpr からの要求はそのプリンタが接続されているマシンにアカウントを持つ ユーザのものしか受け付けられなくなります。 .Pp 各スプールディレクトリ内に .Em minfree というファイルを作成し、空きとして残しておくディスクのブロック数を 書いておけば、ラインプリンタキューがディスクを使い尽くしてしまわないよう にできます。 .Em minfree ファイルは任意のテキストエディタを使って 編集できます。 .Pp このデーモンは、プリンタへのアクセスを 排他的に行うためのロック (後述) を行ったうえで ファイルの処理を開始し、スプール ディレクトリの中に .Em cf で始まる名前のファイルがあるかどうかを調べます。 .Em cf ファイルの内容は印刷すべきファイルの名前もしくは印刷以外で行うべき 何らかの動作を示しています。ファイル中の各行はキー文字から始まっており、 その行の残りの部分と合わせてどのような動作を行うべきかを表しています。 .Bl -tag -width Ds .It J ジョブ名 (job name)。バーストページに印刷されるジョブ名として用いられる文字列。 .It C 分類 (classification)。バーストページに印刷される分類行に用いられる 文字列。 .It L リテラル (literal)。この行はパスワードファイルから取り出した ID 情報を 保持しており、この行があると見出しページが印刷されます。 .It T 表題 (title)。 .Xr pr 1 で表題として使用される文字列。 .It H ホスト名 (host name)。 .Xr lpr 1 が実行されたマシンの名前。 .It P 人物 (person)。 .Xr lpr 1 を実行した人物のログイン名。これは .Xr lprm 1 がジョブの所有権を調べる際に使用されます。 .It M 現在の印刷ジョブが完了した時、指定のユーザにメールを送ります。 .It f 整形済みファイル (formatted file)。すでに整形済みである印刷ファイルの名前。 .It l ``f'' とほぼ同じですが、制御文字を通すことと改ページを行わない点が異なります。 .It p フィルタとして .Xr pr 1 を使用して印刷すべきであるファイルの名前。 .It t troff ファイル。ファイルの内容が .Xr troff 1 の出力結果であることを示します。 .It n ditroff ファイル。ファイルの内容がデバイス独立troff の出力結果であることを示します。 .It r DVI ファイル。ファイルの内容が .Xr TeX l の出力する DVI 形式であることを示します。 .It g graph ファイル。ファイルの内容が .Xr plot 3 の生成したデータであることを示します。 .It c cifplot ファイル。ファイルの内容が .Em cifplot の生成したデータであることを示します。 .It v ファイルの内容がラスタイメージであることを示します。 .It r ファイルの内容が FORTRAN のキャリッジ制御文字を伴った テキストデータであることを示します。 .It \&1 troff R フォント。デフォルトのものに代えて使用するフォントファイルの名前。 .It \&2 troff I フォント。デフォルトのものに代えて使用するフォントファイルの名前。 .It \&3 troff B フォント。デフォルトのものに代えて使用するフォントファイルの名前。 .It \&4 troff S フォント。デフォルトのものに代えて使用するフォントファイルの名前。 .It W 幅 (width)。 .Xr pr 1 および他のテキストフィルタが使用するページ幅 (文字数) を変更します。 .It I 字下げ (indent)。字下げの文字数が ASCII で書かれています。 .It U リンク解除 (unlink)。印刷完了時に消去するファイルの名前。 .It N ファイル名 (file name)。印刷中のファイルの名前。ファイルが標準 入力の場合 ( .Xr lpr がパイプラインの中で実行された場合) は空白になっています。 .It Z ロケールです。 .Xr pr 1 が使用するロケール文字列です。 .El .Pp 何らかのファイルがオープンできない場合、 .Xr syslog 3 を通じて .Em LOG_LPR 機能分類でメッセージが記録されます。 .Nm は最大 20 回まで目的のファイルのオープンを試みますが、それでも失敗すると そのファイルに関わる印刷処理は飛ばします。 .Pp .Nm は、ロックファイルを排他的にアクセスする目的あるいは複数のデーモンが同時 にアクティブになるのを回避する目的で .Xr flock 2 を使用します。デーモンが kill されたり異常終了した場合でもロックファイルを 削除する必要はありません。ロックファイルは普通に読むことができる ASCII 形式で 書かれており、2 行からなります。1 行目はデーモンのプロセスIDで、2 行目は 現在実行中であるジョブの制御ファイル名です。2 行目は .Xr lpq 1 および .Xr lprm 1 が使用できるよう、常に .Nm の現在の状態を示すように更新されています。 .Sh 関連ファイル .Bl -tag -width "/var/spool/*/minfree" -compact .It Pa /etc/printcap プリンタ記述ファイル .It Pa /var/spool/* スプールディレクトリ群 .It Pa /var/spool/*/minfree 最低限残しておく空き領域の設定 .It Pa /dev/lp* ラインプリンタデバイス .It Pa /var/run/printer ローカルな要求のためのソケット .It Pa /etc/hosts.equiv プリンタへのアクセスを許可されているマシンの一覧 .It Pa /etc/hosts.lpd プリンタへのアクセスは許可されているが、同一の管理権限下には 置かれていないマシンの一覧 .El .Sh 関連項目 .Xr lpq 1 , .Xr lpr 1 , .Xr lprm 1 , .Xr setsockopt 2 , .Xr syslog 3 , .Xr hosts.lpd 5 , .Xr printcap 5 , +.Xr chkprintcap 8 , .Xr lpc 8 , .Xr pac 8 .Rs .%T "4.2 BSD Line Printer Spooler Manual" .Re .Sh 歴史 .Nm プログラムは .At v6 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/mailstats.8 b/ja_JP.eucJP/man/man8/mailstats.8 index 0ef3b3659a..12539e3818 100644 --- a/ja_JP.eucJP/man/man8/mailstats.8 +++ b/ja_JP.eucJP/man/man8/mailstats.8 @@ -1,110 +1,110 @@ -.\" Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. +.\" Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. .\" All rights reserved. .\" .\" By using this file, you agree to the terms and conditions set .\" forth in the LICENSE file which can be found at the top level of .\" the sendmail distribution. .\" .\" -.\" $Id: mailstats.8,v 1.12 2002-03-31 07:00:10 horikawa Exp $ +.\" $Id: mailstats.8,v 1.13 2002-04-29 01:09:00 horikawa Exp $ .\" .\" $FreeBSD$ -.TH MAILSTATS 8 "$Date: 2002-03-31 07:00:10 $" +.TH MAILSTATS 8 "$Date: 2002-04-29 01:09:00 $" .SH 名称 .B mailstats \- メールの統計情報を表示する .SH 書式 .B mailstats .RB [ \-o "] [" \-p "] [" \-P ] .RB [ \-C .IR cffile ] .RB [ \-f .IR stfile ] .SH 解説 .B mailstats は、現在のメールの統計情報を表示します。 .PP まず、統計が開始された時刻が ctime(3) で指定されるフォーマットで表示されます。 次に、各メーラの状態が 1 行で表示されます。 それぞれ空白で区切られた次のフィールドからなります: .sp .RS .PD 0.2v .TP 1.2i .B M メーラ番号。 .TP .B msgsfr メーラからのメッセージ数。 .TP .B bytes_from メーラからのキロバイト数。 .TP .B msgsto メーラへのメッセージ数。 .TP .B bytes_to メーラへのキロバイト数。 .TP .B msgsrej (check_* ルールセットによって) 拒否されたメッセージ数。 .TP .B msgsdis (check_* ルールセットによって) 捨てられたメッセージ数。 .TP .B Mailer メーラ名。 .PD .RE .PP この表示の後、 すべてのメーラの総計行が表示されます (前に ``T'' が付きます)。 これらは、等号 (``='') 文字のみからなる行によりその前の情報と分けられます。 -文字 ``C'' が前に付く他の行は、接続数を示します。 +文字 ``C'' が前に付く他の行は、TCP 接続数を示します。 .PP オプションは以下の通りです: .TP .B \-C デフォルトの .B sendmail 設定 ファイルの代りに指定されたファイルを読みます。 .TP .B \-f .B sendmail 設定 ファイルで指定されている統計情報ファイルの代りに、 指定された統計情報ファイルを読みます。 .TP .B \-P プログラムが読み取る形式で情報を出力しますが、統計情報をクリアしません。 .TP .B \-p プログラムが読み取る形式で情報を出力し、統計情報をクリアします。 .TP .B \-o 出力においてメーラ名を表示しません。 .PP .B mailstats は成功時には 0 で、エラー時には >0 で終了します。 .SH 関連ファイル .PD 0.2v .TP 2.5i /etc/mail/sendmail.cf デフォルトの .B sendmail 設定 ファイル .TP /etc/mail/statistics デフォルトの .B sendmail 統計情報ファイル .PD .SH 関連項目 mailq(1), sendmail(8) diff --git a/ja_JP.eucJP/man/man8/mount.8 b/ja_JP.eucJP/man/man8/mount.8 index 3679a3b2d3..27d3b60586 100644 --- a/ja_JP.eucJP/man/man8/mount.8 +++ b/ja_JP.eucJP/man/man8/mount.8 @@ -1,399 +1,405 @@ .\" Copyright (c) 1980, 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)mount.8 8.8 (Berkeley) 6/16/94 -.\" %FreeBSD: src/sbin/mount/mount.8,v 1.31.2.7 2001/12/14 15:17:50 ru Exp % +.\" %FreeBSD: src/sbin/mount/mount.8,v 1.31.2.9 2002/04/21 18:29:34 dwmalone Exp % .\" .\" $FreeBSD$ .\" .Dd June 16, 1994 .Dt MOUNT 8 .Os .Sh 名称 .Nm mount .Nd ファイルシステムをマウントする .Sh 書式 .Nm .Op Fl adfpruvw -.Op Fl t Ar ufs | lfs | external_type +.Op Fl t Ar ufs | external_type .Nm .Op Fl dfpruvw .Ar special | node .Nm .Op Fl dfpruvw .Op Fl o Ar options -.Op Fl t Ar ufs | lfs | external_type +.Op Fl t Ar ufs | external_type .Ar special node .Sh 解説 .Nm コマンドは .Xr mount 2 システムコールを使用して、 .Ar "スペシャルデバイス" かリモートノード (rhost:path) を ファイルシステムツリーの .Ar node へ接合します。 もし .Ar special または .Ar node が指定されなかった場合には、 .Xr fstab 5 ファイルから適切な情報を取得します。 .Pp システムは、現在マウントしているファイルシステムのリストを管理しています。 .Nm コマンドを引数を与えずに実行すると、このリストが表示されます。 .Pp オプションとしては以下のものがあります: .Bl -tag -width indent .It Fl a .Xr fstab 5 に記述されているファイルシステムを すべてマウントします。 例外は、 .Dq noauto が指定されているもの、 .Fl t フラグにて除外されているもの (後述)、 既にマウントされているもの (ルートファイルシステムは伝統的なシングルユーザモードの動作を保つ ために除外されます) です。 通常、これはシステムの起動時に実行されます。 .It Fl d システムコールの実行以外のすべてのことを行ないます。 このオプションを .Fl v とともに指定することで、 .Nm コマンドが何をしようとしているのかを確認することができます。 .It Fl f ファイルシステムのマウント状態を読み書き可能から読み込み専用へ 変更しようとするときに、 すでにオープンされているファイルへの書き込み許可を強制的に取り消します。 また、正常かどうか不明なファイルシステムも強制的に読み書き可能に マウントします (危険なため注意して使って下さい)。 .It Fl o オプションは .Fl o の後にコンマで区切って指定します。 衝突するオプションが指定された場合、最も右側のオプションが効果があります。 以下のオプションが指定できます: .Bl -tag -width indent .It Cm async 指定したファイルシステムのすべての .Tn I/O を非同期に行います。 このフラグを指定することは非常に .Em 危険 ですので、 システムクラッシュ時にファイルシステムを 作り直す用意ができていないかぎりは使うべきではありません。 .It Cm current .Fl u フラグとともに使用された場合、 マウントされているファイルシステムに対する現在の効果を指定することと同じです。 .It Cm force .Fl f オプションと同じです。 ファイルシステムのマウント状態を読み書き可能から読み込み専用へ 変更しようとするときに、 すでにオープンされているファイルへの書き込み許可を強制的に取り消します。 また、正常かどうか不明なファイルシステムも強制的に読み書き可能に マウントします (危険なため注意して使って下さい)。 .It Cm fstab .Fl u フラグとともに使用された場合、 ファイルシステムに対して .Xr fstab 5 に列挙されている全オプションを指定することと同じです。 .It Cm noasync メタデータ I/O を同期に行い、データ I/O を非同期に行います。 これがデフォルトです。 .It Cm noatime ファイル読み取り時に、ファイルアクセス時刻を更新しません。 このオプションが便利なのは、 多くのファイルを持ち、(ほとんどの場合重要ではない) ファイルアクセス時刻 を更新するよりも性能が重要であるファイルシステムです。 このオプションは現在ローカルファイルシステムでのみサポートされています。 .It Cm noauto .Nm が .Fl a フラグ付きで動作しているときに、このファイルシステムをスキップします。 .It Cm noclusterr リード時のクラスタリングを無効にします。 .It Cm noclusterw ライト時のクラスタリングを無効にします。 .It Cm nodev ファイルシステム上のキャラクタスペシャルデバイスや ブロックスペシャルデバイスを解釈しません。 このオプションは、サーバが自分自身以外のアーキテクチャ用の スペシャルデバイスを含むファイルシステムを持っている場合に有用です。 .It Cm noexec マウントしているファイルシステム上のバイナリの 実行を許可しません。 このオプションは、サーバが自分自身以外のアーキテクチャ用の バイナリを含むファイルシステムを持っている場合に有用です。 .It Cm nosuid 実効ユーザ ID (set-user-ID) セット、 実効グループ ID (set-group-ID) セットビットの 効果をなくします。 注意: .Xr suidperl 1 のような suid/sgid ラッパが 誰でも使えるようにシステムにインストールされている場合には、価値がありません。 .It Cm nosymfollow マウントされたファイルシステムにおいては、シンボリックリンクを追跡しません。 .It Cm rdonly .Fl r と同じく、マウントするファイルシステムを読み込み専用とします (スーパユーザでも書き込みできなくなります)。 .It Cm sync ファイルシステムのすべての .Tn I/O を同期的に行います。 .It Cm suiddir マウントされたファイルシステムにおけるディレクトリに SUID ビットがセットされると、 新規ファイルの所有者をディレクトリの所有者に設定します。 新規ディレクトリは親ディレクトリのビットを継承します。 実行ビットはファイルから取り除かれ、 ファイルは root の所有とはなりません。 .Pp この機能は PC ユーザに対して ftp, SAMBA, netatalk のサービスを行う ファイルサーバのためにデザインされました。 これはシェルユーザに対してセキュリティホールとなりますので、 特にホームディレクトリを持つシェルマシンでは使用すべきではありません。 このオプションが動作するためには、カーネルの SUIDDIR オプションが必要です。 UFS ファイルシステムのみがこのオプションをサポートします。 詳細は .Xr chmod 2 を参照してください。 .It Cm update .Fl u と同じく、すでにマウントされているファイルシステムの状態を変化させることを 指示します。 .It Cm union マウントポイント以下の名前空間に、マウントされたファイルシステムのルートと マウントポイントに元から存在するディレクトリの両方が見えるようにします。 名前を検索するときは、マウントしたファイルシステムが先に検索されます。 ファイルが存在しない ために検索が失敗した場合は、既存のディレクトリがアクセスされます。 ファイル等の作成は、すべて マウントしたファイルシステム上に対して行われます。 .El .Pp .Nm が内部で知っているファイルシステムタイプ .Pf ( Fl t オプションを参照) 以外の、ファイルシステムタイプに固有のオプションは、 コンマで区切って指定します。このオプションは、オプションの前に .Dq \&- (ダッシュ記号) をつけて区別します。値を持つオプションは、 -option=valueの形で指定します。 たとえば、 .Bd -literal -offset indent mount -t mfs -o nosuid,-N,-s=4000 /dev/dk0b /tmp .Ed .Pp では、 .Nm コマンドは以下と同じものを実行します: .Bd -literal -offset indent /sbin/mount_mfs -o nosuid -N -s 4000 /dev/dk0b /tmp .Ed .Pp ファイルシステムタイプに固有な追加オプションで、 内部的には分からないもの (下記 .Fl t オプションを参照してください) は、関連する .Pa /sbin/mount_ Ns Sy XXX ユーティリティのマニュアルページに記述されているかもしれません。 .It Fl p マウント情報を .Xr fstab 5 の形式で表示します。暗黙的に .Fl v オプションを指定します。 .It Fl r ファイルシステムをリードオンリーで マウントします (スーパユーザでも書き込みは行えません)。 これは、 .Fl o オプションで .Cm rdonly を指定するのと同じです。 -.It Fl t Ar "ufs \\*(Ba lfs \\*(Ba external type" +.It Fl t Ar "ufs \\*(Ba external type" .Fl t のあとの引数にはファイルシステムタイプを指定します。 デフォルトは、 .Ar ufs です。 .Fl t オプションによって、 .Nm コマンドの操作が、指定した特定のタイプのファイルシステムに対してのみ 行われるように指示することができます。 2つ以上のタイプを指定するにはコンマで区切ります。 ファイルシステムリスト の先頭に .Dq no という文字をつけることに よって、 .Nm コマンドの操作の対象と .Em しない ファイルシステムタイプを指定することができます。 以下に例を示します: .Bd -literal -offset indent mount -a -t nonfs,mfs .Ed .Pp は、 .Tn NFS と .Tn MFS を除いた、すべてのファイルシステムをマウントします。 .Pp type を内部で解釈できない場合、 .Nm は .Pa /sbin/mount_ Ns Sy XXX というプログラムを実行しようとします。 .Sy XXX の部分が type になります。たとえば nfs ファイルシステムは、 .Pa /sbin/mount_nfs というプログラムによってマウント されます。 .Pp ほとんどのファイルシステム用モジュールは カーネル中にない場合、ファイルシステム別の .Nm プログラム によって動的に読み込まれます。 そこでは .Xr vfsload 3 サブルーチンが使われます。 この機構には書き込み可能な作業領域が必要なため、 .Pa /tmp があるファイルシステムタイプのモジュールはカーネルに 組み込まれている必要があります。さらに .Pa /etc/fstab において、 .Pa /tmp や .Pa /usr/bin/ld があるファイルシステムは 動的に読み込まれるファイルシステムよりも前に 記述されていなければいけません。 .It Fl u .Fl u フラグは、すでにマウントしているファイルシステム の状態の変更を指示します。 ファイルシステムを読み込み専用から読み書き可能へ、またその逆へも変更することを 含めて、すでに説明したすべてのオプション .Pf ( Fl o オプション) の内容を変更することができます。 読み書き可能なファイルシステムを読み出し専用に変更する場合、 書き込みのためにオープンしているファイルがあるときには、 .Fl f オプションを指定しなければ変更に失敗します。 どのオプションを適用するかを決定する際、最初に .Fl o オプションの引数を適用し、最後に .Fl r , .Fl w オプションが適用されます。 .It Fl v 詳細なメッセージを表示します。 .It Fl w ファイルシステムを読み書き可能とします。 .El .Sh 診断 多岐に渡りますが、ほぼ全てが自明です。 .Pp .Dl XXXXX filesystem is not available .Pp カーネルはそのファイルシステムタイプをサポートしていません。 ファイルシステムのサポートは、 静的 (カーネルコンパイル時) もしくは動的 ( .Xr kldload 8 によってカーネルモジュールとしてロードされる) です。 通常、 .Nm もしくはそのサブプロセスは、 ファイルシステムモジュールが静的に組み込まれていない場合は、 .Xr vfsload 3 を使用して動的にそのファイルシステムモジュールをロードしようとします。 この場合上記エラーメッセージは、 モジュールをロードするパーミッションを持たないことも意味する場合があります。 .Sh 関連ファイル .Bl -tag -width /etc/fstab -compact .It Pa /etc/fstab ファイルシステムテーブル .El .Sh 関連項目 .Xr mount 2 , .Xr vfsload 3 , .Xr fstab 5 , .Xr kldload 8 , .Xr mount_cd9660 8 , +.Xr mount_ext2fs 8 , .Xr mount_fdesc 8 , .Xr mount_kernfs 8 , +.Xr mount_linprocfs 8 , .Xr mount_mfs 8 , .Xr mount_msdos 8 , .Xr mount_nfs 8 , +.Xr mount_ntfs 8 , .Xr mount_null 8 , +.Xr mount_nwfs 8 , .Xr mount_portal 8 , .Xr mount_procfs 8 , +.Xr mount_smbfs 8 , +.Xr mount_std 8 , .Xr mount_umap 8 , .Xr mount_union 8 , .Xr umount 8 .Sh バグ 異常なファイルシステムをマウントすると、 システムクラッシュを引き起こすことがあります。 .Sh 警告 .Nm に成功した後にマウントされたファイルシステムから .Pa ..\& がアクセス可能かどうかは、 元のマウントポイントのパーミッションが決定します。 全ユーザが双方向にマウントポイントを行き来可能とするために最低限必要な パーミッションは 0111 (全員が実行可能) です。 .Sh 歴史 .Nm コマンドは .At v1 から登場しています。 diff --git a/ja_JP.eucJP/man/man8/spppcontrol.8 b/ja_JP.eucJP/man/man8/spppcontrol.8 index eb06c1c47b..4a16c581f1 100644 --- a/ja_JP.eucJP/man/man8/spppcontrol.8 +++ b/ja_JP.eucJP/man/man8/spppcontrol.8 @@ -1,234 +1,259 @@ .\" Copyright (C) 1997 by Joerg Wunsch, Dresden .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS .\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE .\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, .\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES .\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR .\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" %FreeBSD: src/sbin/spppcontrol/spppcontrol.8,v 1.6.2.3 2002/01/10 16:06:13 ru Exp % +.\" %FreeBSD: src/sbin/spppcontrol/spppcontrol.8,v 1.6.2.4 2002/04/24 18:47:22 joerg Exp % .\" .\" $FreeBSD$ .Dd October 11, 1997 .Os .Dt SPPPCONTROL 8 .Sh 名称 .Nm spppcontrol .Nd sppp インタフェースのパラメータの表示または設定 .Sh 書式 .Nm .Op Fl v .Ar ifname .Op Ar parameter Ns Op Li = Ns Ar value .Op Ar ... .Sh 解説 .Xr sppp 4 ドライバには、 .Xr ifconfig 8 にて調整可能な設定の他に、 多くの追加引数やオプションパラメータが必要となるかもしれません。 これらには、認証プロトコルのパラメータなどと、 他の調整可能なコンフィギュレーション変数があります。 .Nm ユーティリティは、現在の設定を表示したり、 これらのパラメータを必要に応じて調整するために使用可能です。 .Pp どのような用途においても、 .Nm 呼び出しにおいては、少なくともパラメータ .Ar ifname を指定して、インタフェースの名前を指定する必要があります。 このインタフェースに対して、設定がおこなわれるかまたは設定が表示されます。 .Xr ifconfig 8 または .Xr netstat 1 を使用して、どのインタフェースが使用可能かを確認してください。 .Pp 他にパラメータを指定しない場合、 .Nm は、 .Ar ifname の現在の設定を列挙 (list) して終了します。 報告される設定にはインタフェースの現在の PPP フェーズも含まれ、その名は .Em dead , .Em establish , .Em authenticate , .Em network , .Em terminate のうちの 1 つです。 認証プロトコルがインタフェースに対して設定されている場合、 使用するプロトコル名と、使用するまたは期待されるシステム名と、 そして認証プロトコルに対して使用可能なオプションがあればそれを表示します。 認証に使用する秘密情報 ( .Em キー とも呼ばれます) は、この機能が使用するシステムコールによって返されないため、 表示されません。 .Pp 追加のパラメータを指定する場合、スーパユーザの特権が必要になり、コマンドは .Dq 設定 (set) モードにて動作します。 オプション .Fl v が有効にならない限り、静かに動作します。 .Fl v を指定すると、他のすべての動作をおこなった後、 最後に上述のように設定を表示します。 インタフェースが現在 .Em dead フェーズ以外である場合、このモードを使用しようとしてもリジェクトされます。 インタフェースを強制的に .Em dead フェーズにするためには、 .Xr ifconfig 8 をパラメータ .Cm down 付きで呼び出せば良いことに注意してください。 .Pp 現在サポートされているパラメータには次のものがあります: .Bl -tag -offset indent -width indent .It Ar authproto Ns Li = Ns Em protoname 相手と自分の両方の認証プロトコルを .Ar protoname に設定します。 プロトコル名は .Dq Li chap , .Dq Li pap , .Dq Li none のいずれかです。 最後の場合、 指定したインタフェースにおいて認証プロトコルは使用されなくなります。 この副作用として、 このインタフェースに関する認証関連の他のパラメータもまた消去されます (つまり、システム名と認証における秘密情報を忘れてしまいます)。 .It Va myauthproto Ns Li = Ns Em protoname 上と同じですが、リンクの自分側にのみ作用します。 すなわち、 相手が認証者であり、かつ、 自分を認証してもらう必要がある場合に使用されるプロトコルです .It Va hisauthproto Ns Li = Ns Em protoname 上と同じですが、リンクの相手側にのみ作用します。 .It Va myauthname Ns Li = Ns Em name 認証プロトコルにおける自分のシステム名を設定します。 .It Va hisauthname Ns Li = Ns Em name 認証プロトコルにおける相手のシステム名を設定します。 CHAP では、これはヒントとしてのみ使用され、 相手が違う名前を提供した場合には警告メッセージが表示されます。 PAP では、これは相手が相手自身であることを認めさせるときに使用すべき名前です (相手の秘密情報と関連があります)。 .It Va myauthsecret Ns Li = Ns Em secret 認証フェーズにおいて使用する、自分の秘密情報 (キーとパスワード) を設定します。 CHAP では、これは相手のチャレンジに基づく 返答のハッシュ値を計算するために使用されます。 PAP では、これはシステム名とともにプレインテキストにて送信されます。 秘密情報にシェルのメタ文字 (や空白) を含む場合、 秘密情報をシェルからエスケープすることを忘れないようにしてください。 .It Va myauthkey Ns Li = Ns Em secret 上と同様です。 .It Va hisauthsecret Ns Li = Ns Em secret 上と同様ですが、 自分が認証者であり、かつ相手を認証する必要がある場合に使用されます。 .It Va hisauthkey Ns Li = Ns Em secret 上と同様です。 .It Va callin 相手から呼び出されるときにのみ、相手を認証する必要があり、 自分が呼び出す場合には不要であることを示します。 相手が対称的な認証プロトルを実装していない場合に、必要となります (例えば Ascend ルータ)。 .It Va always .Va callin の逆です。どちらが呼び出す場合でも、 常に相手を認証する必要があることを示します。 これがデフォルトであり、 .Dq list モードでは明示的に表示されません。 .It Va norechallenge CHAP でのみ意味があります。 最初に CHAP 交換が成功したならば、相手に再チャレンジしません。 相手の実装が壊れていて、 接続が確立した後の再チャレンジを認識しない場合、対処として使用します。 .It Va rechallenge CHAP において、接続がネットワークフェーズである間、 ランダムな間隔にて再チャレンジを送信します。 (現在、間隔は 300 からおよそ 800 秒です。) これがデフォルトであり、 .Dq list モードでは明示的に表示されません。 +.It Ar lcp-timeout Ns \&= Ns Em timeout-value +LCP リスタートタイマの値を変更します。 +値はミリ秒単位で指定します。 +値は 10 から 20000 ms の間であることが必要です。 +デフォルトは 3000 ms です。 +.It Ar enable-vj +Van Jacobsen ヘッダ圧縮のネゴシエーションを有効化します +(デフォルトで有効です)。 +.It Ar disable-vj +Van Jacobsen ヘッダ圧縮のネゴシエーションを無効化します +.It Ar enable-ipv6 +IPv6 ネットワーク制御プロトコルのネゴシエーションを有効化します +(カーネルの IPv6 が有効な場合、デフォルトで有効です) +.It Ar disable-ipv6 +IPv6 ネットワーク制御プロトコルのネゴシエーションを無効化します +IPv6 を有効可したカーネルでは、 +すべての IPv4 インタフェースが自動的に IPv6 アドレスを割り当てられます。 +本オプションにより、 +リンクが IPv6 をネゴシエーションすることを運用として禁止できます。 +IPv6 インタフェースの初期化には複数のパケットの送出を要しますので、 +(ダイヤルオンデマンドのインタフェースでは) +望まないトラフィックコストがかかります。 .El .Sh 使用例 .Bd -literal # spppcontrol bppp0 bppp0: phase=dead myauthproto=chap myauthname="uriah" hisauthproto=chap hisauthname="ifb-gw" norechallenge + lcp-timeout=3000 + enable-vj + enable-ipv6 .Ed .Pp .Li bppp0 の設定を表示します。 インタフェースは、現在 .Em dead フェーズ、つまり LCP 層はダウンしているため、通信できません。 接続の両端は CHAP プロトコルを使用し、 当方のシステム名は .Dq Li uriah であるとリモート側に対して告げ、 リモート側は .Dq Li ifb-gw という名前で認証されると期待されます。 最初の CHAP 交換が成功すると、更なる CHAP チャレンジは送信されません。 おそらく CHAP に関する双方の秘密情報があるでしょうが、それらは表示されません。 .Bd -literal # spppcontrol bppp0 \e authproto=chap \e myauthname=uriah myauthsecret='some secret' \e hisauthname=ifb-gw hisauthsecret='another' \e norechallenge .Ed .Pp インタフェースを前の例の状態にするために、このように .Nm を呼び出したかもしれません。 .Sh 関連項目 .Xr netstat 1 , .Xr sppp 4 , .Xr ifconfig 8 .Rs .%A B. Lloyd .%A W. Simpson .%T "PPP Authentication Protocols" .%O RFC 1334 .Re .Rs .%A W. Simpson, Editor .%T "The Point-to-Point Protocol (PPP)" .%O RFC 1661 .Re .Rs .%A W. Simpson .%T "PPP Challenge Handshake Authentication Protocol (CHAP)" .%O RFC 1994 .Re .Sh 歴史 .Nm ユーティリティは .Fx 3.0 に登場しました。 .Sh 作者 プログラムの記述を .An J\(:org Wunsch, Dresden がおこないました。 diff --git a/ja_JP.eucJP/man/man8/sysinstall.8 b/ja_JP.eucJP/man/man8/sysinstall.8 index 261ea01e98..29d6b578b2 100644 --- a/ja_JP.eucJP/man/man8/sysinstall.8 +++ b/ja_JP.eucJP/man/man8/sysinstall.8 @@ -1,911 +1,911 @@ .\" Copyright (c) 1997 .\" Jordan Hubbard . All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY Jordan Hubbard AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL Jordan Hubbard OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" %FreeBSD: src/release/sysinstall/sysinstall.8,v 1.31.2.12 2001/12/20 16:32:21 ru Exp % .\" .\" $FreeBSD$ .Dd August 9, 1997 .Dt SYSINSTALL 8 .Os .Sh 名称 .Nm sysinstall .Nd システムのインストール及び設定のためのツール .Sh 書式 .Nm .Op Ar var=value .Op Ar function .Op Ar ... .Sh 解説 .Nm は、 .Fx システムのインストールと設定のためのユーティリティです。 これは .Fx インストーラのブートフロッピが最初に起動するプログラムであり、 新規に .Fx システムがインストールされた時には .Pa /stand/sysinstall に、後のシステム設定で使用するためにコピーされます。 .Pp この .Nm プログラムは、引数なしで起動された場合には既定のモードで動作します。 このモードでは、インストール及び設定のためのメニューが存在します。 .Pp しかし sysinstall のサブシステムを直接起動する必要がある場合には、 コマンドラインからそれを指定することもできます。インストールスクリプトを 実行することとコマンドラインからの指定はまったく同じことなので、 スクリプトの作成に関するセクションに目を通しておくと良いでしょう。 .Sh 注 .Nm は、 .Xr libdisk 3 の機能を用いて MBR やディスクラベルを書くことと、新規および既存の .Fx システムに、配布ファイルや package (訳注: FreeBSD の package system におけるパッケージを指す場合にこう表記します) をインストールすることができるモノリシックな C プログラムに過ぎません。 また、このプログラムは .Fx インストールのための起動処理の中で実行されたときのために、 .Xr init 8 の代用として動作するための機能も併せ持っています。 これは自分以外のユーティリティのサポートがほとんどないと仮定し、 ファイルシステム操作のほとんどを、(たとえば .Xr mount 2 のような) ユーティリティに相当するシステムコールを 直接呼び出すことによって行ないます。 .Pp .Nm は現在のところ、システムコンソールや、カラー表示をサポートした端末 エミュレータで起動した場合に単純な ANSI ライングラフィックスや色を 使った操作を実現するために .Xr dialog 3 を使用しています (xterm の新しいバージョンでは、temcap の .Dq xterm-color エントリを使用することでカラー表示をサポートします)。 .Pp このプログラムはそろそろライフサイクルの終わりに来ており、新しい ものによって置き換えられるかもしれません。 .Sh スクリプトの実行 .Nm は、そのさまざまなメニューを通じ対話的に操作することもできますし、外部の スクリプトによってバッチモードで動作させることもできます。このような スクリプトを読み込んで実行する方法には以下の 3 通りがあります: .Bl -tag -width Ds .It Sy "LOAD_CONFIG_FILE" もし .Nm が、環境変数 (または Makefile 中に) LOAD_CONFIG_FILE に何らかの値が セットされた状態でコンパイルされていれば、 .Nm が非対話的なモードで起動された際に自動的に探して読み込むファイル名として その値が用いられます。このオプションは、大きなサイトにおいて、 ほぼ同じ設定とインストールオプションで、ひとつの雛型に基づき 多数のマシンにインストールしたい場合のためのものです。 .It Sy "メインメニュー" .Nm が対話的に起動された場合、すなわち既定の方法で起動された場合、オプション "load config file" を含むメインメニューを表示します。このオプションを 選択すると、スクリプトファイル名を尋ねるプロンプトが出され、続いてその ファイルを DOS または UFS 形式のフロッピディスクから読み込みます。 .It Sy "コマンド行" .Nm がマルチユーザモードで動作している場合はコマンドライン引数のそれぞれが スクリプトの指示であるとして扱われます。実行終了のリクエスト (たとえば .Ar shutdown 指示など)、引数列の終わり、エラー発生のいずれかにより実行は終了します。 .Pp たとえば、 .Bd -literal /stand/sysinstall _ftpPath=ftp://ziggy/pub/ mediaSetFTP configPackages .Ed .Pp は、 .Nm を、インストールメディア FTP (サーバは `ziggy') で初期化し、続いて package インストールエディタを起動し、それが終わると終了します。 .El .Sh スクリプトの文法 スクリプトはひとつ以上の指示のリストです。それぞれの指示は以下の形をとります。 .Pp .Ar var=value .Pp .Ar function .Pp .Ar #somecomment .Pp .Ar var=value は、たとえば "ftpPass=FuNkYChiKn" のような、 .Nm の内部変数の設定です。また、 .Ar function は、"mediaSetFTP" のような .Nm の内部関数の名称であり、 .Ar #comment はドキュメンテーションのために挿入する一行のコメントです (sysinstall はこれを無視します)。 それぞれの指示は一行にひとつずつ書かれなければなりません。 関数は、既知の変数名を調べることで、その引数を得ます。 したがって、ある変数を必要とする関数を呼び出す前には、 関連する変数を予め設定しておく必要があります。 .Pp 各ディレクティブの前に .Ar noError 変数を設定しておくことが可能です。 これにより、ディレクティブ自身は無視されるような場合においても、 エラーを検知可能とします。 .Ar noError の値は、ディレクティブが処理されるたび自動的に、 デフォルトの "未設定" に戻ります。 .Pp いつどの関数が、どの変数に依存するかを、 下の表に示します。 .Pp .Sy "関数一覧" : .Pp .\"===kuma=========================================== .Bl -tag -width indent .It configAnonFTP 匿名 FTP の設定メニューを起動します。 .Pp .Sy 変数: 無し .It configRouter 使用したいルーティングデーモンを選択します。必要ならサードパーティの ものを使用することもできます。 .Pp .Sy 変数: .Bl -tag -width indent .It router これには、たとえば .Dq routed や .Dq gated のように、希望するルーティングデーモンの名前を設定します。 設定されていなければ入力を求められます。 .El .It configNFSServer ホストを NFS サーバとして設定します。 .Pp .Sy 変数: なし .It configNTP ホストをネットワークタイムプロトコルのユーザとして設定します。 .Pp .Sy 変数: .Bl -tag -width indent .It ntpdate_flags これには、 .Xr ntpdate 8 のオプションを設定します。同期をとるために使用するサーバの名前は ここに設定してください。 .El .It configPCNFSD ホストを PC NFS をサポートするように設定します。 .Pp .Sy 変数: .Bl -tag -width indent .It pcnfsd_pkg 必要ならば PCNFSD の package 名を設定します (既定値としてハードコード されたものが使用されます)。 .El .It configPackages 対話的な package 管理画面を起動します。 .Pp .Sy 変数: なし .It configUsers システムにユーザやグループを追加します。 .Pp .Sy 変数: なし .It configXEnvironment X ウィンドウシステムの設定を行います。 .Pp .Sy 変数: なし .It diskPartitionEditor ディスクパーティション (MBR) エディタを起動します。 .Pp .Sy 変数: .Bl -tag -width findx .It geometry シリンダ数/ヘッド数/セクタ数の形式で書かれたディスクジオメトリを 設定します。 既定値: ジオメトリを変更しません。 .It partition ディスクパーティションのタイプやサイズを設定します。この値が .Ar free であれば、 .Fx のために使用可能な空き領域のみを使用します。 .Ar all であれば、ディスク全体を .Fx に割り当てますが、正しいパーティションテーブルを作成します。 .Ar existing であれば、既存の .Fx パーティションのうち、最初に見つかったものを使用します。 .Ar exclusive であれば、ディスクを、 .Dq 危険な方法で専用化された モードで使用します。 最後に、 .Ar somenumber であれば、空き領域のうちの .Ar somenumber ブロックを新規の .Fx パーティションのために使用します。 既定値: 対話モードで起動します。 .It bootManager は、次のどれかから選択する必要があります。 .Ar boot は、ブートマネージャのインストールを指示します。 .Ar standard は、ブートマネージャでない「標準の」DOS MBRのインストールを指示します。 .Ar none は、ブートマネージャに対して何の操作も行わないことを指示します。 既定値: none です。 .El .Pp 注意: この関数では実際のディスクへの書き込みは行われません。実際に 書き込みを行うためには、 .Ar diskPartitionWrite 操作を行う必要があります。 .It diskPartitionWrite は、MBR に対する、待ち状態にあるすべての変更を行います (一般には .Ar diskPartitionEditor によって呼び出されます)。 .Pp .Sy 変数: 無し .It diskLabelEditor ディスクラベルエディタを起動します。 スクリプトから動かすのはちょっと手品のようになります。 というのも、 .Ar diskPartitionEditor 関数で作成された各 .Fx (タイプ 0xA5) パーティション中のすべてに対してラベルする必要が 本質的にあるためであり、 これはどのようにレイアウトされるかについての少数のルールを知る 必要があるためです。 スクリプトを作成して、 自動的にディスク空間の割り当てとパーティションを行う場合、 少なくとも一度はまず対話的にインストールを実行し、 スライス名がどうなるかを見てから、 これをスクリプトに埋め込むことをお勧めします。 .Pp 例えば、SCSI ディスクがあり、そのスライス 2 に .Fx を作成したとします (DOS パーティションはスライス 1 にあるとします)。 .Fx 全体のスライス名は .Ar da0s2 になります (DOS プライマリパーティションは .Ar da0s1 となります)。 更に、このパーティションに 500MB あり、 この空間をルートとスワップと var と usr のファイルシステムに 更に分割すると仮定します。 .Ar diskLabelEditor 関数呼び出しには、次の変数設定が伴うでしょう: .Bl -tag -width findx .It Li "da0s2-1=ufs 40960 /" 20MB ルートファイルシステム (すべての大きさは 512 バイトブロック数)。 .It Li "da0s2-2=swap 131072 /" 64MB スワップパーティション。 .It Li "da0s2-3=ufs 204800 /var" 100MB /var ファイルシステム。 .It Li "da0s2-4=ufs 0 /usr 1" 空き空間の残り (約 316MB) が /usr ファイルシステムで ソフトアップデートを有効にします (マウントポイント後の非 0 引数は、ソフトアップデートフラグ設定を意味します)。 .El .Pp 新規パーティションを作成するのと同様に、 既存のパーティションのマウントや消去に、 .Ar diskLabelEditor を使用可能です。 前の例の、DOS パーティションをマウントし、これに対応する .Pa /etc/fstab エントリを、新規インストールにおいて作成したいとします。 .Ar diskLabelEditor 関数の呼び出し前に、次の追加行を単に足せば良いです: .Pp .Dl "da0s1=/dos_c N" .Pp これは、最初のスライスを .Pa /dos_c にマウントしてこれを newfs しないよう、ラベルエディタに指示します ( .Nm は DOS パーティションに対しては如何なる場合でも newfs を実行しません。 既存の UFS パーティションに対しても、ここに名前を書くことで実行できます。 2 番目のフィールドは省略不可です)。 .\" なんだかよくわかりません horikawa 2001/03/25 .\" 原文は .\" not that sysinstall would attempt this for a DOS partition in .\" any case, but it could just as easily be an existing UFS partition .\" being named here and the 2nd field is non-optional .Pp 注: .Ar diskLabelCommit が呼び出される前は、 ファイルシステムデータは実際にディスクに書き込まれません。 .It diskLabelCommit 設定した、待ち状態であるディスクラベル情報をすべて書き込み、 .Ar diskLabelEditor でマウントを設定したすべてのファイルシステムをマウントします。 .Pp .Sy 変数: なし .It distReset 選択した配布ファイルのセットをリセットして、何も選択していない状態にします。 .Pp .Sy 変数: なし .It distSetCustom 配布ファイルセットの選択を、予め用意されたセットからの選択でなく、 非対話モードでも「カスタム」で行うようにします。 .Pp .Sy 変数: .Bl -tag -width indent .It dists 読み込む配布ファイルのセットのリストを設定します。 値として使用できるのは以下の通りです。 .Bl -tag -width indentxx .It Li bin 基本バイナリファイルのセット .It Li doc 様々な文書 .It Li games ゲーム .It Li manpages フォーマット前のマニュアルページ .It Li catpages フォーマット済のマニュアルページ .It Li proflibs 開発者のためのプロファイルされたライブラリ .It Li dict スペルチェックなどのツールのための辞書情報 .It Li info GNU info ファイルとその他の追加文書 .It Li crypto 暗号化のためのバイナリとライブラリ .It Li compat1x .Fx 1.x との互換性 .It Li compat20 .Fx 2.0 との互換性 .It Li compat21 .Fx 2.1 との互換性 .It Li compat22 .Fx 2.2 及び .Fx 3.0 の a.out バイナリ互換性 .It Li compat3x .Fx 3.x との互換性 ( .Fx 4.0 でのみ利用可能) .It Li compat4x .Fx 4.x との互換性 (初期の .Fx 4.x リリースでのみ利用可能) .It Li ports ports コレクション .It Li krb4 KerberosIV バイナリ .It Li krb5 Kerberos5 バイナリ .It Li ssecure /usr/src/secure .It Li sbase /usr/src/(トップレベルファイル) .It Li scontrib /usr/src/contrib .It Li sgnu /usr/src/gnu .It Li setc /usr/src/etc .It Li sgames /usr/src/games .It Li sinclude /usr/src/include .It Li slib /usr/src/lib .It Li slibexec /usr/src/libexec .It Li srelease /usr/src/release .It Li sbin /usr/src/bin .It Li ssbin /usr/src/sbin .It Li sshare /usr/src/share .It Li ssys /usr/src/sys .It Li subin /usr/src/usr.bin .It Li susbin /usr/src/usr.sbin .It Li ssmailcf /usr/src/usr.sbin/sendmail/cf .It Li XF86-xc XFree86 の公式なソース .It Li XF86-co XFree86 に寄贈されたソース .It Li Xbin -XFree86 3.3.6 バイナリ +XFree86 バイナリ .It Li Xcfg -XFree86 3.3.6 設定ファイル +XFree86 設定ファイル .It Li Xdoc -XFree86 3.3.6 に関する文書 +XFree86 に関する文書 .It Li Xhtml -XFree86 3.3.6 に関する HTML 文書 +XFree86 に関する HTML 文書 .It Li Xlib -XFree86 3.3.6 ライブラリ +XFree86 ライブラリ .It Li Xlk98 -XFree86 3.3.6 PC98 向けサーバリンクキット +XFree86 PC98 向けサーバリンクキット .It Li Xlkit -XFree86 3.3.6 一般向けサーバリンクキット +XFree86 一般向けサーバリンクキット .It Li Xman -XFree86 3.3.6 マニュアルページ +XFree86 マニュアルページ .It Li Xprog -XFree86 3.3.6 開発者向け配布物 +XFree86 開発者向け配布物 .It Li Xps -XFree86 3.3.6 に関する postscript 文書 +XFree86 に関する postscript 文書 .It Li Xset -XFree86 3.3.6 グラフィカルセットアップツール +XFree86 グラフィカルセットアップツール .It Li PC98-Servers/X9480 -XFree86 3.3.6 PC98 8-bit (256 色) PEGC-480 サーバ +XFree86 PC98 8-bit (256 色) PEGC-480 サーバ .It Li PC98-Servers/X9EGC -XFree86 3.3.6 PC98 4-bit (16 色) EGC サーバ +XFree86 PC98 4-bit (16 色) EGC サーバ .It Li PC98-Servers/X9GA9 -XFree86 3.3.6 PC98 GA-968V4/PCI (S3 968) サーバ +XFree86 PC98 GA-968V4/PCI (S3 968) サーバ .It Li PC98-Servers/X9GAN -XFree86 3.3.6 PC98 GANB-WAP (cirrus) サーバ +XFree86 PC98 GANB-WAP (cirrus) サーバ .It Li PC98-Servers/X9LPW -XFree86 3.3.6 PC98 PowerWindowLB (S3) サーバ +XFree86 PC98 PowerWindowLB (S3) サーバ .It Li PC98-Servers/X9MGA [記述無し] .It Li PC98-Servers/X9NKV -XFree86 3.3.6 PC98 NKV-NEC (cirrus) サーバ +XFree86 PC98 NKV-NEC (cirrus) サーバ .It Li PC98-Servers/X9NS3 -XFree86 3.3.6 PC98 NEC (S3) サーバ +XFree86 PC98 NEC (S3) サーバ .It Li PC98-Servers/X9SPW -XFree86 3.3.6 PC98 SKB-PowerWindow (S3) サーバ +XFree86 PC98 SKB-PowerWindow (S3) サーバ .It Li PC98-Servers/X9SVG [記述無し] .It Li PC98-Servers/X9SVG -XFree86 3.3.6 PC98 Cyber9320, TGUI9680 サーバ +XFree86 PC98 Cyber9320, TGUI9680 サーバ .It Li PC98-Servers/X9WEP -XFree86 3.3.6 PC98 WAB-EP (cirrus) サーバ +XFree86 PC98 WAB-EP (cirrus) サーバ .It Li PC98-Servers/X9WS -XFree86 3.3.6 PC98 WABS (cirrus) サーバ +XFree86 PC98 WABS (cirrus) サーバ .It Li PC98-Servers/X9WSN -XFree86 3.3.6 PC98 WSN-A2F (cirrus) サーバ +XFree86 PC98 WSN-A2F (cirrus) サーバ .It Li Servers/X3DL -XFree86 3.3.6 3D Labs サーバ +XFree86 3D Labs サーバ .It Li Servers/X8514 -XFree86 3.3.6 8514 サーバ +XFree86 8514 サーバ .It Li Servers/XAGX -XFree86 3.3.6 8 ビット AGX サーバ +XFree86 8 ビット AGX サーバ .It Li Servers/XI128 -XFree86 3.3.6 #9 Imagine I128 サーバ +XFree86 #9 Imagine I128 サーバ .It Li Servers/XMa8 -XFree86 3.3.6 ATI Mach8 サーバ +XFree86 ATI Mach8 サーバ .It Li Servers/XMa32 -XFree86 3.3.6 ATI Mach32 サーバ +XFree86 ATI Mach32 サーバ .It Li Servers/XMa64 -XFree86 3.3.6 ATI Mach64 サーバ +XFree86 ATI Mach64 サーバ .It Li Servers/XMono -XFree86 3.3.6 monochrome サーバ +XFree86 monochrome サーバ .It Li Servers/XP9K -XFree86 3.3.6 P9000 サーバ +XFree86 P9000 サーバ .It Li Servers/XS3 -XFree86 3.3.6 S3 サーバ +XFree86 S3 サーバ .It Li Servers/XS3V -XFree86 3.3.6 S3 Virge サーバ +XFree86 S3 Virge サーバ .It Li Servers/XSVGA -XFree86 3.3.6 SVGA サーバ +XFree86 SVGA サーバ .It Li Servers/XVG16 -XFree86 3.3.6 VGA16 サーバ +XFree86 VGA16 サーバ .It Li Servers/XW32 -XFree86 3.3.6 ET4000/W32, /W32i, /W32p サーバ +XFree86 ET4000/W32, /W32i, /W32p サーバ .It Li Servers/XTGA TGA カード用サーバ (alpha アーキテクチャのみ) .It Li Servers/Xnest -XFree86 3.3.6 ネスト X サーバ。 +XFree86 ネスト X サーバ。 .It Li Servers/Xvfb -XFree86 3.3.6 仮想フレームバッファ X サーバ。 +XFree86 仮想フレームバッファ X サーバ。 .It Li Xfnts -XFree86 3.3.6 基本フォントセット。 +XFree86 基本フォントセット。 .It Li Xf100 -XFree86 3.3.6 100DPI フォントセット。 +XFree86 100DPI フォントセット。 .It Li Xfcyr -XFree86 3.3.6 キリル語フォントセット。 +XFree86 キリル語フォントセット。 .It Li Xfscl -XFree86 3.3.6 スケーラブルフォントセット。 +XFree86 スケーラブルフォントセット。 .It Li Xfnon -XFree86 3.3.6 非英語フォントセット。 +XFree86 非英語フォントセット。 .It Li Xfsrv -XFree86 3.3.6 フォントサーバ。 +XFree86 フォントサーバ。 .El .El .It distSetDeveloper 標準開発者配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetXDeveloper 標準 X 開発者配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetKernDeveloper 標準カーネル開発者配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetUser 標準ユーザ配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetXUser 標準 X ユーザ配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetMinimum 最小配布セットを選択します。 .Pp .Sy 変数: 無し .It distSetEverything 全部、つまり利用可能な配布すべてを選択します。 .Pp .Sy 変数: 無し .It distSetCRYPTO 暗号化のパーツ群を、対話的に選択します。 .Pp .Sy 変数: 無し .It distSetSrc ソースのパーツ群を、対話的に選択します。 .Pp .Sy 変数: 無し .It distSetXF86 -XFree86 3.3.6 のパーツ群を、対話的に選択します。 +XFree86 のパーツ群を、対話的に選択します。 .Pp .Sy 変数: 無し .It distExtractAll 現在選択されている配布すべてをインストールします (メディアデバイスが既に選択されていることが必要です)。 .Pp .Sy 変数: 無し .It docBrowser (必要であれば) HTML 文書ブラウザをインストールし、 HTML 文書サブメニューに行きます。 .Pp .Sy 変数: .Bl -tag -width indent .It browserPackage 必要に応じてインストールを試みる、ブラウザの package 名です。 デフォルトは最新の lynx package です。 .It browserBinary ブラウザバイナリ自身の名前です ( .Ar browserPackage 変数に優先させる場合)。デフォルトは lynx です。 .El .It installCommit ディスクに対する待ち状態の変更を、すべて実施します。 この関数は、本質的に、細粒度の "実施" 関数をまとめたものです。 .Pp .Sy 変数: 無し .It installExpress 「高速」インストールを開始します。 ユーザへの質問は少数です。 .Pp .Sy 変数: 無し .It installStandard 「標準」インストールを開始します。 利用可能なインストールタイプ中で、最もユーザフレンドリです。 .Pp .Sy 変数: 無し .It installUpgrade アップグレードインストールを開始します。 .Pp .Sy 変数: 無し .It installFixitHoloShell init として起動している場合、 「緊急ホログラフィックシェル」を VTY4 で起動します。 .Ar noHoloShell を設定しない限りにおいては、 これはインストール処理の一部として自動的に実施されます。 .Pp .Sy 変数: 無し .It installFixitCDROM "fixit" モードに入ります。 ライブファイルシステム CDROM がドライブにあるものと仮定します。 .Pp .Sy 変数: 無し .It installFixitFloppy "fixit" モードに入ります。 fixit フロッピディスクが利用可能と仮定します (ユーザは問い合わせを受けます)。 .Pp .Sy 変数: 無し .It installFilesystems インストールのファイルシステム初期化部分のみを実行します。 .Pp .Sy 変数: 無し .It installVarDefaults 全変数をデフォルトに初期化し、以前の設定を上書きします。 .Pp .Sy 変数: 無し .It loadConfig #include 文のようなものであり、他の設定ファイルをロードできます。 .Pp .Sy 変数: .Bl -tag -width indent .It configFile ロードするファイルの完全な形でのパス名です。 .El .It mediaSetCDROM インストールメディアとして .Fx CDROM を選択します。 .Pp .Sy 変数: 無し .It mediaSetFloppy インストールメディアとして 作成済フロッピインストールセットを選択します。 .Pp .Sy 変数: 無し .It mediaSetDOS インストールメディアとして 既存の DOS プライマリパーティションを選択します。 最初に見付かるプライマリパーティション (例 C:) を使用します。 .Pp .Sy 変数: 無し .It mediaSetTape インストールメディアとしてテープデバイスを使用します。 .Pp .Sy 変数: 無し .It mediaSetFTP インストールメディアとして FTP サイトを使用します。 .Pp .Sy 変数: .Bl -tag -width indent .It hostname インストールされるホストの名前 (省略不可)。 .It domainname インストールされるホストのドメイン名 (省略不可)。 .It defaultrouter このホストのデフォルトルータ (省略不可)。 .It netDev どのホストインタフェースを使用するか (例えば .Ar ed0 や .Ar ep0 です。省略不可)。 .It netInteractive 設定すると、関連するすべての設定変数を陶に設定していても、 対話的なネットワーク設定フォームを起動します (省略可)。 .It ipaddr 選択したホストインタフェースの IP アドレス (省略不可)。 .It netmask 選択したホストインタフェースのネットマスク (省略不可)。 .It _ftpPath 対象となる .Fx 配布を保持する FTP サイトの完全な形での URL。例えば .Ar ftp://ftp.FreeBSD.org/pub/FreeBSD/ 。 .El .It mediaSetFTPActive .Ar mediaSetFTP と同様ですが、「能動的」な FTP 転送モードを使用します。 .Pp .Sy 変数: .Ar mediaSetFTP と同様です。 .It mediaSetFTPPassive .Ar mediaSetFTP と同様ですが、「受動的」な FTP 転送モードを使用します。 .Pp .Sy 変数: .Ar mediaSetFTP と同様です。 .It mediaSetHTTP .Ar mediaSetFTP と同様ですが、HTTP プロキシを使用します。 .Pp .Sy 変数: .Ar mediaSetFTP を参照してください。更に以下も使用します。 .Bl -tag -width indent .It _httpPath 使用するプロキシ (host:port) (省略不可)。 .El .It mediaSetUFS インストールメディアとして、 (ラベルエディタでマウントされている) 既存の UFS パーティション を選択します。 .Pp .Sy 変数: .Bl -tag -width indent .It ufs 対象となる .Fx 配布を保持する、完全な /path 指定。 .El .It mediaSetNFS .Pp .Sy 変数: .Bl -tag -width indent .It hostname インストールされるホストの名前 (省略不可)。 .It domainname インストールされるホストのドメイン名 (省略不可)。 .It defaultrouter このホストのデフォルト経路 (省略不可)。 .It netDev どのホストインタフェースを使用するか (例えば .Ar ed0 や .Ar ep0 です。省略不可)。 .It netInteractive 設定すると、関連するすべての設定変数を陶に設定していても、 対話的なネットワーク設定フォームを起動します (省略可)。 .It ipaddr 選択したホストインタフェースの IP アドレス (省略不可)。 .It netmask 選択したホストインタフェースのネットマスク (省略不可)。 .It nfs 対象となる .Fx 配布を保持する、完全な hostname:/path 指定。 .El .It mediaSetFTPUserPass .Pp .Sy 変数: .Bl -tag -width indent .It ftpUser FTP サーバに接続する場合のユーザ名を設定します。 既定値: ftp .It ftpPass FTP サーバに接続する場合のパスワードを設定します。 既定値: user@host .El .It mediaSetCPIOVerbosity .Pp .Sy 変数: .Bl -tag -width indent .It cpioVerbose cpio で展開を行う際のメッセージの冗長度を low, medium, high から選択します。 .El .It mediaGetType 対話的にユーザにメディアタイプの指定を求めます。 .Pp .Sy 変数: 無し .It optionsEditor オプション編集画面を起動します。 .Pp .Sy 変数: なし .It packageAdd package を取得してインストールしようと試みます (メディアが設定されている 必要があります)。 .Pp .Sy 変数: .Bl -tag -width indent .It package bash-1.14.7 や ncftp-2.4.2 のようにインストールする package の名前 を指定します。 .El .It addGroup 対話的なグループエディタを起動します。 .Pp .Sy 変数: なし .It addUser 対話的なユーザエディタを起動します。 .Pp .Sy 変数: なし .It shutdown スクリプトの実行を停止して sysinstall を終了します。 .Pp .Sy 変数: なし .It system .Xr system 3 を用いて外部コマンドを実行します。 .Pp .Sy 変数: .Bl -tag -width indent .It command 実行するコマンドの名前。ブートフロッピから起動されている場合は、 システム全体がインストールされている場合と比較して使用できるものが 大幅に限定されていることに注意してください。 .El .El .Sh 関連ファイル このユーティリティは .Pa /etc/rc.conf , .Pa /etc/hosts , .Pa /etc/resolv.conf の内容を、ネットワーク等の設定変更に応じて変更します。 .Sh 関連項目 十分に完全なソースツリーがオンライン上にあれば、 サンプルのインストールスクリプトについて .Pa /usr/src/release/sysinstall/install.cfg を参照してください。 .Sh バグ 本ユーティリティは雛型であり、 期限切後も数年を生き延びており、大いに死すべきです。 .Sh 作者 .An Jordan K. Hubbard Aq jkh@FreeBSD.org .Sh 歴史 このバージョンの .Nm は、 .Fx 2.0 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/vinum.8 b/ja_JP.eucJP/man/man8/vinum.8 index c3e7e99bff..6ee4dd9c8c 100644 --- a/ja_JP.eucJP/man/man8/vinum.8 +++ b/ja_JP.eucJP/man/man8/vinum.8 @@ -1,2798 +1,2798 @@ .\" Hey, Emacs, edit this file in -*- nroff-fill -*- mode .\"- .\" Copyright (c) 1997, 1998 .\" Nan Yang Computer Services Limited. All rights reserved. .\" .\" This software is distributed under the so-called ``Berkeley .\" License'': .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by Nan Yang Computer .\" Services Limited. .\" 4. Neither the name of the Company nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" This software is provided ``as is'', and any express or implied .\" warranties, including, but not limited to, the implied warranties of .\" merchantability and fitness for a particular purpose are disclaimed. .\" In no event shall the company or contributors be liable for any .\" direct, indirect, incidental, special, exemplary, or consequential .\" damages (including, but not limited to, procurement of substitute .\" goods or services; loss of use, data, or profits; or business .\" interruption) however caused and on any theory of liability, whether .\" in contract, strict liability, or tort (including negligence or .\" otherwise) arising in any way out of the use of this software, even if .\" advised of the possibility of such damage. .\" .\" %Id: vinum.8,v 1.48 2001/01/15 22:15:05 grog Exp % -.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.33.2.8 2001/04/27 10:35:19 ru Exp % +.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.33.2.9 2002/04/22 08:18:57 kuriyama Exp % .\" .\" $FreeBSD$ .\" WORD: attach 結合 (する) .Dd December 20, 2000 .Dt VINUM 8 .Sh 名称 .Nm vinum .Nd 論理ボリュームマネージャの制御プログラム .Sh 書式 .Nm .Op Ar command .Op Fl options .Sh コマンド .Bl -tag -width indent .It Ic attach Ar plex volume Op Cm rename .It Xo .Ic attach Ar subdisk plex .Op Ar offset .Op Cm rename .Xc プレックスをボリュームに、またはサブディスクをプレックスに結合します。 .It Xo .Ic checkparity Ar plex .Op Fl f RAID-4 または RAID-5 のプレックスのパリティブロックを検査します。 .Xc .It Xo .Ic concat .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives .Xc 指定したドライブからコンカチネート化ボリュームを作成します。 .It Xo .Ic create .Op Fl f .Ar description-file .Xc .Ar description-file の記述に従ってボリュームを作成します。 .It Ic debug ボリュームマネージャをカーネルデバッガに移行させます。 .It Ic debug Ar flags デバッグフラグを設定します。 .It Xo .Ic detach .Op Fl f .Op Ar plex | subdisk .Xc 結合されていたボリュームやプレックスから、プレックスやサブディスクを分離します。 .It Ic dumpconfig Op Ar drive ... 指定されたドライブに格納されている設定情報を表示します。 ドライブ名を指定しないと、システムの全ドライブの情報を表示します。 .It Xo .Ic info .Op Fl v .Op Fl V .Xc ボリュームマネージャの状態を表示します。 .It Xo .Ic init .Op Fl S Ar size .Op Fl w .Ar plex | subdisk .Xc .\" XXX サブディスクまたはプレックスの全サブディスクの内容をすべて 0 に初期化します。 .It Ic label Ar volume ボリュームラベルを作成します。 .It Xo .Ic l | list .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar volume | plex | subdisk .Xc 指定したオブジェクトの情報を表示します。 .It Xo .Ic ld .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar volume .Xc ドライブの情報を表示します。 .It Xo .Ic ls .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar subdisk .Xc サブディスクの情報を表示します。 .It Xo .Ic lp .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar plex .Xc プレックスの情報を表示します。 .It Xo .Ic lv .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar volume .Xc ボリュームの情報を表示します。 .It Ic makedev .Ar /dev/vinum にデバイスノードを再作成します。 .It Xo .Ic mirror .Op Fl f .Op Fl n Ar name .Op Fl s .Op Fl v .Ar drives .Xc 指定したドライブからミラー化ボリュームを作成します。 .It Xo .Ic move | mv .Fl f .Ar drive object ... .Xc 指定したドライブにオブジェクトを移動します。 .It Ic printconfig Op Ar file 現在の設定のコピーを .Ar file へ書き込みます。 .It Ic quit 対話モード時に、 .Nm プログラムを終了します。通常 .Dv EOF 文字を入力することにより実現できます。 .It Ic read Ar disk ... 指定したディスクから .Nm の設定を読み出します。 .It Xo .Ic rename Op Fl r .Op Ar drive | subdisk | plex | volume .Xc 指定したオブジェクトの名前を変更します。 .\" XXX .\".It Ic replace Ar drive newdrive .\"指定したドライブから新しいドライブ上へすべてのサブディスクを移動します。 .It Xo .Ic rebuildparity Ar plex Op Fl f .Op Fl v .Op Fl V .Xc RAID-4 または RAID-5 のプレックスのパリティブロックを再構築します。 .It Ic resetconfig すべての .Nm の設定をリセットします。 .It Xo .Ic resetstats .Op Fl r .Op volume | plex | subdisk .Xc 指定したオブジェクトの統計情報をリセットします。指定がない場合はすべての オブジェクトが対象です。 .It Xo .Ic rm .Op Fl f .Op Fl r .Ar volume | plex | subdisk .Xc オブジェクトを削除します。 .It Ic saveconfig 設定失敗後に、 .Nm の設定をディスクへ保存します。 .\" XXX .\".It Xo .\".Ic set .\".Op Fl f .\".Ar state .\".Ar volume | plex | subdisk | disk .\".Xc .\"オブジェクトの状態をに設定します。 .\".Ar state .\"に設定します。 .It Ic setdaemon Op Ar value デーモンの設定を与えます。 .It Xo .Ic setstate .Ar state .Op Ar volume | plex | subdisk | drive .Xc 他のオブジェクトに影響を与えずに状態を設定します。 診断のためだけに使用します。 .It Ic start 全 vinum ドライブから設定を読み込みます。 .It Xo .Ic start .Op Fl i Ar interval .Op Fl S Ar size .Op Fl w .Ar volume | plex | subdisk .Xc システムがオブジェクトへアクセスできるようにします。 .It Xo .Ic stop .Op Fl f .Op Ar volume | plex | subdisk .Xc オブジェクトへのアクセスを終了させます。 パラメータを指定しないと、 .Nm を停止させます。 .It Xo .Ic stripe .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives .Xc 指定したドライブからストライプ化ボリュームを作成します。 .El .Sh 解説 .Nm は .Xr vinum 4 論理ボリュームマネージャと通信するための ユーティリティプログラムです。 .Nm は対話形式と、単独のコマンドを実行する形式のいずれも実行可能になっています。 コマンドライン引数を伴わずに .Nm を起動すると対話形式になる一方、 コマンドラインでコマンドを指定するとそのコマンド だけを実行します。 対話モードでは、 .Nm はコマンドラインヒストリを保持します。 .Sh オプション .Nm のコマンドにはオプションを付加することができます。どのコマンドにも 下記オプションのどれでも指定することができますが、 オプションが無視される場合があります。例えば、 .Ic stop コマンドは .Fl v オプションと .Fl V オプションを無視します。 .Bl -tag -width indent .It Fl f .Fl f Pq Dq force: 強制 オプションは安全性の確認を無効にします。細心の注意を払って 使用して下さい。 このオプションは緊急時にのみ使用するものです。例えば、 コマンド .Pp .Dl rm -f myvolume .Pp は .Ar myvolume がオープンされていたとしても削除します。以降、このボリュームに アクセスすると、ほぼ確実にパニックを起こします。 .It Fl i Ar millisecs .Ic init または .Ic start のコマンドを実行時、各ブロックのコピーの間に .Ar millisecs ミリ秒待ちます。 これにより、システム負荷を軽減できます。 .It Fl n Ar name ボリューム名を指定するために .Fl n オプションを使用します。単純な設定コマンド .Ic concat , .Ic mirror , .Ic stripe 用です。 .It Fl r .Fl r .Pq Dq recursive: 再帰的 オプションは表示系のコマンドで使い、 指示したオブジェクト だけでなく、下位のオブジェクトの情報も表示します。 例えば、 .Ic lv コマンドとともに使われる場合、 .Fl r オプションは対象のボリュームに属するプレックスとサブディスクの情報も表示します。 .It Fl s .Fl s .Pq Dq statistics: 統計 オプションは表示系のコマンドで統計情報を表示するために使います。 .Ic mirror コマンドもこのオプションを使用し、 ストライプ化プレックスを作成すべきことを示します。 .It Fl S Ar size .Fl S オプションは、 .Ic init と .Ic start コマンドのための転送サイズを指定します。 .It Fl v .Fl v .Pq Dq verbose: 冗長 オプションは、 さらに詳細な情報を要求するために使用します。 .It Fl V .Fl V .Pq Dq Very verbose: とても冗長 オプションは、 .Fl v オプションが提供するものよりもさらに詳細な情報を要求するために使用します。 このフラグは .Nm init コマンドではベリファイを意味します。 .It Fl w .Fl w .Pq Dq wait: 待ち オプションは、 .Ic init のように通常はバックグラウンドで実行するコマンドの完了を、 .Nm に待たせます。 .El .Sh コマンドの詳細 .Nm コマンドは以下の機能を実行します。 .Pp .Bl -tag -width indent -compact .It Ic attach Ar plex volume Op Cm rename .It Xo .Ic attach Ar subdisk plex .Op Ar offset .Op Cm rename .Xc .Nm Ic attach .Nm Ic attach は指定されたプレックスやサブディスクをそれぞれボリュームやプレックスに 組み込みます。サブディスクに ついては、プレックス中の始点 (オフセット) を指定することができます。 指定がない場合、 サブディスクは有効な最初の位置に結合されます。空でないボリュームにプレックスが 結合されると、 .Nm はそのプレックスを再統合します。 .Pp .Cm rename キーワードが指定されると、 .Nm はオブジェクトの (プレックスの場合には下位のサブディスクの) 名前を変更して デフォルトの .Nm 命名規則に合わせます。 オブジェクトを他の名前に変更するには、 .Ic rename コマンドを使用します。 .Pp サブディスク結合に際しては、いくつか考慮すべきことがあります: .Bl -bullet .It サブディスクの結合対象は、通常、コンカチネート化プレックスのみです。 .It ストライプ化プレックスおよび RAID-5 プレックスにおいて サブディスクが失われた場合 (例えばドライブの故障後など)、 当該サブディスクを置き換えられるのは同じ大きさのサブディスクだけです。 .It ストライプ化または RAID-5 のプレックスに更にサブディスクを追加するには、 .Fl f (強制) オプションを使用します。プレックス内のデータを破壊します。 .\" ストライプ化および RAID-5 のプレックスに対しては、 .\" 別のサブディスクを結合することは、現在許されていません。 .It コンカチネート化プレックスに対しては、 .Ar offset パラメータが、プレックスの先頭からのブロック単位のオフセットを指定します。 ストライプ化プレックスおよび RAID-5 プレックスに対しては、 本パラメータは、サブディスクの最初のブロックのオフセットを指定します。 別の表現をするなら、オフセットは、 サブディスクの数値指定による位置とストライプの大きさとの積になります。 例えば、ブロックの大きさが 271k のプレックスでは、 最初のサブディスクはオフセット 0 に、2 番目のオフセットは 271k に、 3 番目は 542k に、などとなります。 この計算では、RAID-5 プレックスのパリティブロックは無視されます。 .El .Pp .It Xo .Ic checkparity .Ar plex .Op Fl f .Op Fl v .Xc 指定した RAID-4 または RAID-5 プレックスのパリティブロックをチェックします。 この操作はプレックス中のポインタを維持しますので、 望むならば、一時停止して後で同じ場所から再開可能です。 さらに、このポインタは .Ic rebuildparity コマンドも使用します。 最初にパリティの問題が検出された箇所から、 パリティブロックの再構築を開始可能です。 .Pp .Fl f フラグが指定されると、 .Ic checkparity はプレックスの先頭からチェックを開始します。 .Fl v フラグが指定されると、 .Ic checkparity は進捗報告を表示します。 .Pp .It Xo .Ic concat .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives .Xc .Ic concat コマンドは、単一のコンカチネート化プレックスからなるボリュームを作成する .Ic create コマンドの、単純な代替手段です。 各ドライブ中の最大の連続空間が、 プレックスのサブディスク作成のために使用されます。 .Pp 通常、 .Ic concat コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト .Dq Li vinum および小さな整数からなり、例えば .Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name オプションで、上書きすることが可能です。 プレックスとサブディスクの名前は、通常の作法で、ボリューム名からとられます。 .Pp ドライブの名前には選択の余地はありません。 ドライブが既に .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト .Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば .Dq Li vinumdrive7 となります。 .Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp このコマンドの例は、後述の .Sx 単純な設定 の節を参照してください。 .Pp .It Xo .Ic create .Op Fl f .Ar description-file .Xc .Nm Ic create はどのオブジェクトの作成にも使われます。相互の関連性が比較的複雑で .Nm オブジェクトの作成には潜在的に危険があることを考慮して、この機能には対話的な インタフェースはありません。 ファイル名を指定しないと、 .Nm は一時ファイルに対してエディタを起動します。 環境変数 .Ev EDITOR が設定されている場合、 .Nm はこのエディタを起動します。設定されていない場合のデフォルトは .Nm vi です。 詳細は後述の .Sx 設定ファイル の節を参照して下さい。 .Pp .Nm Ic create 機能は加法的であることに注意してください: 複数回実行すると、名前付けしていない全オブジェクトのコピーを、 複数生成することになります。 .Pp 通常 .Ic create は既存の .Nm ドライブの名前を変更しません。これは、誤って消去してしまうのを避けるためです。 不要な .Nm ドライブを破棄する正しい方法は、 .Ic resetconfig コマンドで設定をリセットすることです。 しかし、起動できない .Nm ドライブ上に新規データを生成する必要がある場合があります。 この場合、 .Ic create Fl f を使用してください。 .Pp .It Ic debug 引数無しの .Nm Ic debug は、リモートカーネルデバッガに入るために使用します。これは .Nm が .Dv VINUMDEBUG オプション付きで作成されている場合にのみ実行可能です。 このオプションはカーネルデバッガから抜け出るまでオペレーティング システムの実行を停止させます。 リモートデバッグが設定されており、 カーネルデバッガへのリモートコネクションがないと、 デバッガから抜け出るためにはシステムをリセットしてリブート することが必要になります。 .Pp .It Ic debug Ar flags 内部デバッグフラグのビットマスクを設定します。 本製品が改良されるにつれ、このビットマスクは警告無しに変更されるでしょう。 確認のために、ヘッダファイル .Aq Pa sys/dev/vinumvar.h を見てください。 ビットマスクは次の値から構成されます: .Bl -tag -width indent .It Dv DEBUG_ADDRESSES Pq No 1 リクエスト中のバッファ情報を表示します。 .\".It Dv DEBUG_NUMOUTPUT Pq No 2 .\".Va vp->v_numoutput .\" の値を表示します。 .It Dv DEBUG_RESID Pq No 4 .Fn complete_rqe においてデバッガに移行します。 .It Dv DEBUG_LASTREQS Pq No 8 最新のリクエストのリングバッファを保存します。 .It Dv DEBUG_REVIVECONFLICT Pq No 16 再生における衝突に関する情報を表示します。 .It Dv DEBUG_EOFINFO Pq No 32 ストライププレックスで .Dv EOF を返すとき、内部状態の情報を表示します。 .It Dv DEBUG_MEMFREE Pq No 64 最後にメモリアロケータが解放したメモリ領域に関する循環リストを管理します。 .It Dv DEBUG_REMOTEGDB Pq No 256 .Ic debug コマンドが発行されたときに、リモート .Nm gdb に移行します。 .It Dv DEBUG_WARNINGS Pq No 512 実装内のミラーの問題に関する警告を表示します。 .El .Pp .It Xo .Ic detach Oo Fl f Oc Ar plex .Xc .It Xo .Ic detach Oo Fl f Oc Ar subdisk .Xc .Nm Ic detach は指定されたプレックスやサブディスクを、 結合されているボリュームやプレックスから 分離します。分離するとボリュームのデータが欠ける可能性のある 場合、この操作は .Fl f オプションを指定しない限り実行されません。 オブジェクトが上位のオブジェクトに従った名前になっている場合 (例えば、プレックス .Li vol1.p7 に結合されているサブディスク .Li vol1.p7.s0 の場合)、 その名前は頭に .Dq Li ex- がついたものに変更されます (例えば .Li ex-vol1.p7.s0 に変更されます)。 その後の処理で必要であれば、その名前から頭の部分が外されます。 .Pp ストライプ化プレックスおよび RAID-5 プレックスにおいては、 .Ic detach はサブディスク数を減らしません。 その代わり、サブディスクには存在しないという印が付けられ、後で .Ic attach コマンドを使用して交換可能となります。 .Pp .It Ic dumpconfig Op Ar drive ... .Nm Ic dumpconfig は、指定されたドライブ上に保管された設定情報を表示します。ドライブ名が 指定されていない場合、 .Ic dumpconfig はシステム上にあるすべてのドライブから vinum パーティションを探し出し、 その情報をダンプします。設定の更新を無効にしている場合、このコマンドが 返す情報と .Ic list コマンドが返す情報とが同じにならないことがあります。このコマンドは、 主に保守およびデバッグ用に使用されるものです。 .Pp .It Ic info .Nm Ic info は .Nm のメモリ使用に関する情報を表示します。これは主にデバッグのためのものです。 .Fl v オプションを付けると、使用中のメモリ領域についての詳細な情報を表示します。 .Pp .Fl V オプションを付けると、 .Nm ドライバが扱った最大 64 個までの最近の I/O リクエストに関する情報を、 .Ic info は表示します。 この情報は、デバッグフラグ 8 が設定されているときのみ収集されます。 書式は次のようになります: .Bd -literal vinum -> info -V Flags: 0x200 1 opens Total of 38 blocks malloced, total memory: 16460 Maximum allocs: 56, malloc table at 0xf0f72dbc Time Event Buf Dev Offset Bytes SD SDoff Doffset Goffset 14:40:00.637758 1VS Write 0xf2361f40 91.3 0x10 16384 14:40:00.639280 2LR Write 0xf2361f40 91.3 0x10 16384 14:40:00.639294 3RQ Read 0xf2361f40 4.39 0x104109 8192 19 0 0 0 14:40:00.639455 3RQ Read 0xf2361f40 4.23 0xd2109 8192 17 0 0 0 14:40:00.639529 3RQ Read 0xf2361f40 4.15 0x6e109 8192 16 0 0 0 14:40:00.652978 4DN Read 0xf2361f40 4.39 0x104109 8192 19 0 0 0 14:40:00.667040 4DN Read 0xf2361f40 4.15 0x6e109 8192 16 0 0 0 14:40:00.668556 4DN Read 0xf2361f40 4.23 0xd2109 8192 17 0 0 0 14:40:00.669777 6RP Write 0xf2361f40 4.39 0x104109 8192 19 0 0 0 14:40:00.685547 4DN Write 0xf2361f40 4.39 0x104109 8192 19 0 0 0 11:11:14.975184 Lock 0xc2374210 2 0x1f8001 11:11:15.018400 7VS Write 0xc2374210 0x7c0 32768 10 11:11:15.018456 8LR Write 0xc2374210 13.39 0xcc0c9 32768 11:11:15.046229 Unlock 0xc2374210 2 0x1f8001 .Ed .Pp .Ar Buf フィールドは、ユーザバッファヘッダのアドレスを常に含みます。 ユーザリクエストに関連付けられるリクエスト (複数可) を識別するために 使用できますが、100% 信頼できるものというわけではありません: 理論的には、シーケンス中の 2 個のリクエストが同じバッファヘッダを使い得ますが、 これは一般的ではありません。 リクエストの先頭は、イベント .Ar 1VS または .Ar 7VS で識別可能です。 前述の 1 番目の例は、ユーザ要求に関連するリクエストを示しています。 2 番目は、ロックを伴うサブディスク I/O リクエストです。 前記の例では、複数のリクエストが単一のユーザリクエストに含まれています。 .Pp .Ar Event フィールドは、 リクエストチェーン中のイベントシーケンスに関連する情報を含みます。 .Ar 1 から .Ar 6 までの数字はイベントの大まかなシーケンスを示し、 2 文字の省略形は位置のニーモニックです。 .Bl -tag -width Lockwait .It 1VS (vinum の strategy) .Fn vinumstrategy の入口にある、ユーザリクエストに関する情報を表示します。 デバイス番号は .Nm デバイスであり、オフセットと長さはユーザパラメータです。 本ニーモニックは、常にリクエストシーケンスの先頭になります。 .It 2LR (リクエスト発行) 関数 .Fn launch_requests において低レベル .Nm リクエストを発行する直前の、ユーザリクエストを表示します。 パラメータは .Ar 1VS の情報と同じはずです。 .El .Pp ここから後のリクエストでは、利用可能である場合、 .Ar Dev は関連付けられたディスクパーティションのデバイス番号であり、 .Ar Offset はパーティションの先頭からのオフセットであり、 .Ar SD は .Va vinum_conf 中のサブディスクインデックスであり。 .Ar SDoff はサブディスクの先頭からのオフセットであり、 .Ar Doffset は関連付けられたデータリクエストのオフセットであり、 .Ar Goffset は関連付けられたグループリクエストのオフセットです。 .Bl -tag -width Lockwait .It 3RQ (リクエスト) 高レベルのリクエストを満たすために発行される、 いくつかありうる低レベル .Nm リクエストのうちのひとつを表示します。 この情報は、 .Fn launch_requests においても記録されます。 .It 4DN (完了) .Fn complete_rqe から呼ばれ、リクエストの完了を表示します。 この完了は、ステージ .Ar 4DN において .Fn launch_requests から発行されたリクエストか、またはステージ .Ar 5RD か .Ar 6RP の .Fn complete_raid5_write から発行されたリクエストにマッチするはずです。 .It 5RD (RAID-5 データ) .Fn complete_raid5_write から呼ばれ、 パリティ計算後に RAID-5 データストライプへ書き込まれたデータを表現します。 .It 6RP (RAID-5 パリティ) .Fn complete_raid5_write から呼ばれ、 パリティ計算後に RAID-5 パリティストライプへ書き込まれたデータを表現します。 .It 7VS サブディスク I/O リクエストを表示します。 通常、これらのリクエストは .Nm 内部のものであり、プレックスの初期化や再構築といった操作に使用します。 .It 8LR サブディスク I/O リクエストのために生成した、低レベル操作を表示します。 .It Lockwait プロセスがレンジロックを待っていることを示します。 パラメータは、リクエストに関連付けられたバッファヘッダと、 プレックス番号と、ブロック番号です。 内部的な理由で、ブロック番号は、 ストライプ開始アドレスよりも 1 個大きくなっています。 .It Lock レンジロックを取得済みであることを示します。 パラメータはレンジロックと同じです。 .It Unlock レンジロックを解放済みであることを示します。 パラメータはレンジロックと同じです。 .El .\" XXX .Pp .It Xo .Ic init .Op Fl S Ar size .Op Fl w .Ar plex | subdisk .Xc .Nm Ic init は指定したサブディスクに 0 を書き込んで初期化します。 プレックスが指定された場合はプレックス内の全サブディスクを初期化できます。 これはプレックス中のデータに矛盾のないことを確実にする唯一の方法です。 RAID-5 プレックスの使用前には、この初期化が必要です。 他の新規プレックスに対しても、この初期化を推奨します。 .Nm はプレックス中のすべてのサブディスクを並行して初期化します。 この操作には長い時間が かかるため、通常バックグラウンドで実行されます。 このコマンドの完了を待ちたい場合、 .Fl w (待ち) オプションを使用してください。 .Pp .Fl S オプションでデフォルト値の 16 kB と異なるサイズの書き込みブロックを 指定できます。 .Nm は初期化が完了するとコンソールメッセージを出力します。 .Pp .It Ic label Ar volume .Ic label コマンドは、ボリュームに .Em ufs 形式のボリュームラベルを書き込みます。これは適切に .Ic disklabel を呼び出すことに対しての、単純な代替方法です。 いくつかの .Em ufs コマンドはラベルを入手するために正規の .Xr ioctl 2 コールを使わず、依然としてラベルを捜してディスクの読み込みを行う ため、このコマンドは必要になります。 .Nm はボリュームのデータとは別にボリュームラベルを保持しているため、この コマンドは .Xr newfs 8 用には必要ありません。 このコマンドの価値は低下しています。 .Pp .It Xo .Ic list .Op Fl r .Op Fl V .Op Ar volume | plex | subdisk .Xc .It Xo .Ic l .Op Fl r .Op Fl V .Op Ar volume | plex | subdisk .Xc .It Xo .Ic ld .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar volume .Xc .It Xo .Ic ls .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar subdisk .Xc .It Xo .Ic lp .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar plex .Xc .It Xo .Ic lv .Op Fl r .Op Fl s .Op Fl v .Op Fl V .Op Ar volume .Xc .Ic list は指定したオブジェクトの情報を表示するために使われます。引数が省略されると .Nm が認識しているすべてのオブジェクトについての情報が表示されます。 .Ic l コマンドは .Ic list と同じものです。 .Pp .Fl r オプションはボリュームとプレックスに関連します。 指定されると、そのオブジェクト下位のサブディスクと (ボリュームに対しては) プレックスの情報を再帰的に表示します。 .Ic lv , .Ic lp , .Ic ls , .Ic ld のコマンドは、それぞれボリューム、プレックス、サブディスク、そしてドライブの 情報だけを表示します。これはパラメータを指定しないで使う場合に特に有用です。 .Pp .Fl s オプションで .Nm は装置の統計情報を出力するようになり、 .Fl v (verbose: 饒舌な) オプションはいくらかの付加情報を出力させ、 そして .Fl V は数多くの付加情報を出力させます。 .Pp .It Ic makedev .Ic makedev コマンドは、ディレクトリ .Pa /dev/vinum を除去した上で、 現在の設定を反映するようなデバイスノードと共にこのディレクトリを再作成します。 本コマンドは、通常の場合に使用されることを意図していません。 非常時にのみ使用するために提供しています。 .Pp .It Xo .Ic mirror .Op Fl f .Op Fl n Ar name .Op Fl s .Op Fl v .Ar drives .Xc .Ic mirror コマンドは、ミラー化ボリュームを作成する .Ic create コマンドの、単純な代替手段です。 オプションを指定しないと、RAID-1 (ミラー化) ボリュームを、 2 つのコンカチネート化ボリュームで作成します。 各ドライブ中の最大の連続空間が、 プレックスのサブディスク作成のために使用されます。 1 番目のプレックスは、リストの奇数番号のドライブから構築され、 2 番目のプレックスは、リストの偶数番号のドライブから構築されます。 ドライブの大きさが異なる場合、プレックスの大きさは異なるでしょう。 .Pp .Fl s オプションを指定すると、 .Ic mirror はストライプの大きさが 256 kB のストライプ化プレックスを構築します。 各プレックスのサブディスクの大きさは、 プレックスを構成するドライブの中で、最小の連続ストレージの大きさです。 ここでもまた、プレックスの大きさは異なるかもしれません。 .Pp 通常、 .Ic mirror コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト .Dq Li vinum および小さな整数からなり、例えば .Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name オプションで、上書きすることが可能です。 プレックスとサブディスクの名前は、通常の作法で、ボリューム名からとられます。 .Pp ドライブの名前には選択の余地はありません。 ドライブが既に .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト .Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば .Dq Li vinumdrive7 となります。 .Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp このコマンドの例は、後述の .Sx 単純な設定 の節を参照してください。 .Pp .It Ic mv Fl f Ar drive object ... .It Ic move Fl f Ar drive object ... 指定したオブジェクトから新しいドライブへすべてのサブディスクを移動します。 オブジェクトは、サブディスク、ドライブあるいはプレックスです。ドライブ またはプレックスが指定された場合、オブジェクトに関係するすべての サブディスクが移動されます。 .Pp この機能は現在サブディスク中のデータを保存しないため .Fl f オプションが必要です。 この付加機能は、後日追加されます。しかしながら、この状態でも、故障した ディスクドライブを復旧させるのには十分です。 .Pp .It Ic printconfig Op Ar file 現在の設定のコピーを、 .Nm 設定を再生成可能な書式で、 .Ar file に書き込みます。 ディスク上に保存された設定とは違い、ドライブの定義を含みます。 .Ar file を指定しないと、 .Nm は一覧を .Dv stdout へ書き込みます。 .Pp .It Ic quit 対話モードで実行中のときに、 .Nm プログラムを終了します。通常は、文字 .Dv EOF を入力することで実現できます。 .Pp .It Ic read Ar disk ... .Ic read コマンドは、指定したディスクを走査し、作成済の設定情報を含む .Nm パーティションを探します。 そして、最近更新されたものから過去に更新されたものの順番で、 設定を読み込みます。 .Nm は最新のすべての設定情報を各ディスクパーティションに保持しています。 このコマンドの パラメータとして、設定の中の全スライスを指定する必要があります。 .Pp .Ic read コマンドは、他の .Nm パーティションを持つシステム上で、 .Nm 設定を選択的にロードすることを意図しています。 システム上の全パーティションを起動したい場合、 .Ic start コマンドを使用する方が簡単です。 .Pp 本コマンド実行時に .Nm がエラーになると、 ディスク上のコピーが壊れないようにするため、自動的な設定更新を無効にします。 これは、ディスク上の設定が、設定エラーを示す (例えば、有効な空間指定を持たないサブディスク) 場合にも同様です。 再度更新をオンにするには、 .Ic setdaemon と .Ic saveconfig のコマンドを使用してください。 デーモンオプションマスクのビット 2 をリセットして、 設定保存を再度有効にしてください。 .Pp .It Xo .Ic rebuildparity .Ar plex .Op Fl f .Op Fl v .Op Fl V .Xc 指定した RAID-4 または RAID-5 プレックスのパリティブロックを再構築します。 この操作はプレックス中のポインタを維持しますので、 望むならば、一時停止して後で同じ場所から再開可能です。 さらに、このポインタは .Ic checkparity コマンドも使用します。 最初にパリティの問題が検出された箇所から、 パリティブロックの再構築を開始可能です。 .Pp .Fl f フラグが指定されると、 .Ic rebuildparity はプレックスの先頭から再構築を開始します。 .Fl v フラグが指定されると、 .Ic rebuildparity はまず既存のパリティブロックをチェックし、 再構築前に、不整合情報を表示します。 .Fl V フラグが指定されると、 .Nm rebuildparity は進捗報告を表示します。 .Pp .It Xo .Ic rename .Op Fl r .Ar [ drive | subdisk | plex | volume ] .Ar newname .Xc 指定したオブジェクトの名前を変更します。 .Fl r オプションが指定されると、下位のオブジェクトがデフォルトの規則に従って命名され ます。プレックスの名前はボリューム名に .Li .p Ns Ar number を付加して作られ、 サブディスクの名前はプレックス名に .Li .s Ns Ar number を付加して作られます。 .\" .It Xo .\" .Ic replace .\" .Ar drive .\" .Ar newdrive .\" .Pp .\" 指定したドライブから新しいドライブへすべてのサブディスクを移動します。 .\" これは回復可能なサブディスクを回復しようとします。そして、回復不可能な .\" サブディスクを最初から作ります。 .\" もし、新しいドライブにこの操作のための容量が不足する時は、できるだけ .\" 多くのサブディスクを新しいドライブ上に組み込み、残りを元のドライブに .\" 残します。 .Pp .It Ic resetconfig .Ic resetconfig コマンドはシステム内の .Nm 設定を完全に削除します。設定を完全に消去したい場合にだけ使って下さい。 .Nm は確認を求めます。 .Li "NO FUTURE" (前途なし) という語句を以下の通りに入力する必要が あります。 .Bd -unfilled -offset indent .No # Nm Ic resetconfig WARNING! This command will completely wipe out your vinum configuration. All data will be lost. If you really want to do this, enter the text NO FUTURE .No "Enter text ->" Sy "NO FUTURE" Vinum configuration obliterated (訳注: ここから上記テキストの翻訳です) 警告! このコマンドはあなたの vinum 設定を完全に消し去ります。 全データは失われます。本当にこれを実行したい場合は、語句 NO FUTURE を入力して下さい。 入力してください -> \f(BINO FUTURE\fP vinum の設定は削除されました。 (訳注: ここまで上記テキストの翻訳です) .Ed .Pp メッセージが示すように、どたん場のコマンドです。 既存の設定をもう見たくもないとき以外は、このコマンドを使わないでください。 .Pp .It Xo .Ic resetstats .Op Fl r .Op Ar volume | plex | subdisk .Xc .Nm は各オブジェクトについて多数の統計カウンタを保持しています。詳細は ヘッダファイル .Aq Pa sys/dev/vinumvar.h を参照して下さい。 .\" XXX 仕上がったらここに入れる これらのカウンタをリセットするためには .Ic resetstats コマンドを使って下さい。 .Fl r オプションも共に指定すると、 .Nm は下位のオブジェクトのカウンタもリセットします。 .Pp .It Xo .Ic rm .Op Fl f .Op Fl r .Ar volume | plex | subdisk .Xc .Ic rm はオブジェクトを .Nm 設定から消去します。ひとたびオブジェクトが消去されるとそれを復旧する方法は ありません。通常 .Nm はオブジェクトを消去する前に数多くの一貫性確認を行います。 .Fl f オプションを指定すると、 .Nm はこの確認を省略し、オブジェクトを無条件に消去します。このオプションは細心の 注意を払って使用して下さい。ボリューム上のすべてのデータを失うことも あり得ます。 .Pp 通常、 .Nm は下位にプレックスを持つボリュームや、下位にサブディスクを持つプレックスを 消去することを拒否します。 .Fl f フラグを指定すると、 .Nm は無条件にオブジェクトを消去します。または .Fl r (recursive: 再帰的) フラグを使うことで、同様に下位のオブジェクトを 消去することができます。 .Fl r フラグを付けてボリュームを消去すると、プレックスとそれに属するサブディスクも 消去します。 .Pp .It Ic saveconfig 現在の設定をディスクに保存します。 .Nm は自動的に設定変更を保存するので、通常これは不要です。 起動時にエラーが発生した場合、更新は無効化されます。 .Ic setdaemon コマンドで再度有効化しても、 .Nm は設定を自動的にはディスクへ保存しません。 このコマンドを使用して設定を保存してください。 .\".It Xo .\".Ic set .\".Op Fl f .\".Ar state .\".Ar volume | plex | subdisk | disk .\".Xc .\".Ic set .\"は指定したオブジェクトに、妥当な状態 (下記 .\".Sx オブジェクト状態 .\"参照) のひとつを .\"セットします。 .\"通常、 .\".Nm .\"は変更を加える前に非常に多くの一貫性の調査を実行します。 .\".Fl f .\"オプションを指定すると、 .\".Nm .\"はこの調査を省略し、無条件に変更を行います。このオプションは大いに注意して .\"使って下さい。ボリューム上のすべてのデータを失うこともあり得ます。 .Pp .It Ic setdaemon Op Ar value .Ic setdaemon は .Nm デーモンの変数ビットマスクを設定します。 本コマンドは一時的なものであり、将来置き換えられます。 現在、ビットマスクにはビット 1 (全アクションを syslog へ記録する) と ビット 4 (設定を更新しない) があります。 オプションビット 4 はエラー回復時に有用かもしれません。 .Pp .It Xo .Ic setstate Ar state .Op Ar volume | plex | subdisk | drive .Xc .Ic setstate は、指定したオブジェクトの状態を指定した状態に設定します。 .Nm の通常の一貫性機構はバイパスされます。回復の目的でのみ使用すべきです。 このコマンドを誤って使用すると、システムを破壊する可能性があります。 .Pp .It Xo .Ic start .Op Fl S Ar size .Op Fl w .Op Ar plex | subdisk .Xc .Ic start は 1 つまたはそれ以上の .Nm オブジェクトを起動します ( .Em up 状態に移行させます)。 .Pp オブジェクト名を指定しないと、システムが .Nm ドライブであると知っているディスクを、 .Nm は走査します。その後、 .Ic read コマンドのところに書いてあるように、設定を読み込みます。 .Nm ドライブにはそのドライブ中のデータについてのすべての情報を持つヘッダが 入っており、その情報としてはプレックスとボリュームを表現するために必要な 他のドライブの名前を含んでいます。 .Pp 本コマンド実行時に .Nm がエラーになると、 ディスク上のコピーが壊れないようにするため、自動的な設定更新を無効にします。 これは、ディスク上の設定が、設定エラーを示す (例えば、有効な空間指定を持たないサブディスク) 場合にも同様です。 再度更新をオンにするには、 .Ic setdaemon と .Ic saveconfig のコマンドを使用してください。 デーモンオプションマスクのビット 4 をリセットして、 設定保存を再度有効にしてください。 .Pp オブジェクト名が指定されると、 .Nm はそれらを起動します。 通常、この操作はサブディスクに対してのみ行います。 動作はオブジェクトの現在の状態に依存します: .Bl -bullet .It オブジェクトが既に .Em up 状態の場合、 .Nm はなにもしません。 .It オブジェクトがサブディスクであり、 .Em down または .Em reborn の状態の場合、 .Nm は .Em up 状態に変更します。 .It オブジェクトがサブディスクであり、 .Em empty 状態の場合、変更はサブディスクに依存します。 サブディスクがプレックスの一部であり このプレックスが他のプレックスを含むボリュームの一部である場合、 .Nm はサブディスクを .Em reviving 状態にし、データをボリュームからコピーしようとします。 操作完了時に、サブディスクは .Em up 状態に設定されます。 サブディスクがプレックスの一部であり このプレックスが他のプレックスを含まないボリュームの一部である場合、 またはサブディスクがプレックスの一部ではない場合、 .Nm は即時にサブディスクを .Em up 状態にします。 .It オブジェクトがサブディスクであり、 .Em reviving 状態である場合、 .Nm は 再生 操作をオフラインにて継続します。 操作完了時に、サブディスクは .Em up 状態に設定されます。 .El .Pp サブディスクが .Em up 状態になると、 .Nm は自動的に、 サブディスクが属す可能性のあるプレックスとボリュームの状態をチェックし、 これらの状態を適切に更新します。 .Pp オブジェクトがプレックスの場合、 .Ic start は下位のサブディスクの (ボリュームの場合にはこれに加えてプレックスの) 状態を チェックし、起動可能なサブディスクを起動します。 .Pp マルチプレックスボリュームの中の 1 つのプレックスを起動するには、 ボリューム中の他のプレックスからデータをコピーする必要があります。 これにはしばしば長い時間がかかるため、バックグラウンドで実行されます。 この操作が完了することを待ちたい場合 (例えば、この操作をスクリプト中で実行している場合)、 .Fl w オプションを使用してください。 .Pp データのコピーにはたいして時間がかかりません。それは、さらに重大な負荷を システムにかけ得ます。 .Fl S オプションで転送サイズを、 .Fl i オプションで各ブロックを転送する間隔を (ミリ秒で) 指定可能です。 どちらもシステム負荷を軽減します。 .Pp .It Xo .Ic stop .Op Fl f .Op Ar volume | plex | subdisk .Xc パラメータを指定しないと、 .Ic stop は .Nm KLD を削除し、 .Xr vinum 4 を停止します。 活動状態のオブジェクトが存在しない場合のみ、行うことが可能です。 特に、 .Fl f オプションはこの要求に優先しません。 通常、 .Ic stop コマンドは、終了前に現在の設定をディスクへ書き戻します。 設定の更新が無効になっている場合にはこれはできませんので、 設定の更新が無効になっている場合には .Nm は停止しません。 これを上書きするには .Fl f オプションを指定します。 .Pp .Ic stop コマンドは .Nm が KLD としてロードされている場合のみ動作します。 静的に構成されたドライバをアンロードすることはできないからです。 .Nm が静的に構成されている場合、 .Nm Ic stop は失敗します。 .Pp オブジェクト名が指定されると、 .Ic stop はそのオブジェクトへのアクセスを無効化します。 オブジェクトに下位オブジェクトがある場合、 それらのサブオブジェクトは既に非活動状態 (stop また error) となっているか、 .Fl r と .Fl f のオプションが指定されていることが必要です。 このコマンドは、オブジェクトを設定から取り除きません。 .Ic start コマンドの後で再度アクセスができるようになります。 .Pp デフォルトでは .Nm は動作中のオブジェクトは停止しません。例えば、動作中のボリュームに結合 されているプレックスは停止できないし、オープン中のボリュームは停止できません。 .Fl f オプションは .Nm にこの確認を省略して無条件に削除するよう指示します。このオプションは 大いに注意し、よく理解した上で使って下さい。もし間違って使うとひどい データ破壊を起こすことがあります。 .Pp .It Xo .Ic stripe .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives .Xc .Ic stripe コマンドは、単一のストライプ化プレックスからなるボリュームを作成する .Ic create コマンドの、単純な代替手段です。 サブディスクの大きさは、 全ドライブで利用可能な最大の連続空間の大きさです。 ストライプの大きさは 256 kB に固定されています。 .Pp 通常、 .Ic stripe コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト .Dq Li vinum および小さな整数からなり、例えば .Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name オプションで、上書きすることが可能です。 プレックスとサブディスクの名前は、通常の作法で、ボリューム名からとられます。 .Pp ドライブの名前には選択の余地はありません。 ドライブが既に .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト .Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば .Dq Li vinumdrive7 となります。 .Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp このコマンドの例は、後述の .Sx 単純な設定 の節を参照してください。 .El .Sh 単純な設定 この節では、 .Ic concat , .Ic mirror , .Ic stripe コマンドを使用する、 .Nm 設定の単純なインタフェースを説明します。 これらのコマンドは、大概の通常状況では便利な設定を作成しますが、 .Ic create コマンド程の柔軟性はありません。 .Pp コマンドの解説は前述を参照してください。 ここでは例を示します。どれも同じディスクを使用しています。 最初のドライブ .Pa /dev/da1h は他のドライブよりも小さいことに注意してください。 各サブディスクの大きさに影響があります。 .Pp 次に示す例ではすべて .Fl v オプションを使用することにより、システムに渡すコマンドを見せ、 ボリュームの構造を列挙します。 .Fl v オプションを使用しないと、これらのコマンドは何も出力しません。 .Ss 単一コンカチネート化プレックスのボリューム 単一コンカチネート化プレックスのボリュームを使用し、 最大のストレージ容量を得ます。 ただし、ドライブ故障への耐性はありません。 .Bd -literal vinum -> concat -v /dev/da1h /dev/da2h /dev/da3h /dev/da4h volume vinum0 plex name vinum0.p0 org concat drive vinumdrive0 device /dev/da1h sd name vinum0.p0.s0 drive vinumdrive0 size 0 drive vinumdrive1 device /dev/da2h sd name vinum0.p0.s1 drive vinumdrive1 size 0 drive vinumdrive2 device /dev/da3h sd name vinum0.p0.s2 drive vinumdrive2 size 0 drive vinumdrive3 device /dev/da4h sd name vinum0.p0.s3 drive vinumdrive3 size 0 V vinum0 State: up Plexes: 1 Size: 2134 MB P vinum0.p0 C State: up Subdisks: 4 Size: 2134 MB S vinum0.p0.s0 State: up PO: 0 B Size: 414 MB S vinum0.p0.s1 State: up PO: 414 MB Size: 573 MB S vinum0.p0.s2 State: up PO: 988 MB Size: 573 MB S vinum0.p0.s3 State: up PO: 1561 MB Size: 573 MB .Ed .Pp この場合、4 ディスクすべての空間を使用し、 ボリュームの大きさは 2134 MB になります。 .Ss 単一ストライプ化プレックスのボリューム 単一ストライプ化プレックスのボリュームは コンカチネート化プレックスよりも性能が良いかもしれません。 しかし、ストライプ化プレックスの制約により、 ボリュームは小さいかもしれません。 これもまたドライブ故障の耐性はありません。 .Bd -literal vinum -> stripe -v /dev/da1h /dev/da2h /dev/da3h /dev/da4h drive vinumdrive0 device /dev/da1h drive vinumdrive1 device /dev/da2h drive vinumdrive2 device /dev/da3h drive vinumdrive3 device /dev/da4h volume vinum0 plex name vinum0.p0 org striped 256k sd name vinum0.p0.s0 drive vinumdrive0 size 849825b sd name vinum0.p0.s1 drive vinumdrive1 size 849825b sd name vinum0.p0.s2 drive vinumdrive2 size 849825b sd name vinum0.p0.s3 drive vinumdrive3 size 849825b V vinum0 State: up Plexes: 1 Size: 1659 MB P vinum0.p0 S State: up Subdisks: 4 Size: 1659 MB S vinum0.p0.s0 State: up PO: 0 B Size: 414 MB S vinum0.p0.s1 State: up PO: 256 kB Size: 414 MB S vinum0.p0.s2 State: up PO: 512 kB Size: 414 MB S vinum0.p0.s3 State: up PO: 768 kB Size: 414 MB .Ed .Pp この場合、サブディスクの大きさは利用できるディスクの最小に制限され、 ボリュームの大きさは 1659 MB になります。 .Ss 2 つのコンカチネート化プレックスのミラー化ボリューム 信頼性を向上するため、ミラー化およびボリューム化を使用します: .Bd -literal vinum -> mirror -v -n mirror /dev/da1h /dev/da2h /dev/da3h /dev/da4h drive vinumdrive0 device /dev/da1h drive vinumdrive1 device /dev/da2h drive vinumdrive2 device /dev/da3h drive vinumdrive3 device /dev/da4h volume mirror setupstate plex name mirror.p0 org concat sd name mirror.p0.s0 drive vinumdrive0 size 0b sd name mirror.p0.s1 drive vinumdrive2 size 0b plex name mirror.p1 org concat sd name mirror.p1.s0 drive vinumdrive1 size 0b sd name mirror.p1.s1 drive vinumdrive3 size 0b V mirror State: up Plexes: 2 Size: 1146 MB P mirror.p0 C State: up Subdisks: 2 Size: 988 MB P mirror.p1 C State: up Subdisks: 2 Size: 1146 MB S mirror.p0.s0 State: up PO: 0 B Size: 414 MB S mirror.p0.s1 State: up PO: 414 MB Size: 573 MB S mirror.p1.s0 State: up PO: 0 B Size: 573 MB S mirror.p1.s1 State: up PO: 573 MB Size: 573 MB .Ed .Pp この例ではボリューム名を .Ar mirror と指定しています。 1 つのドライブの大きさが他のドライブよりも小さいため、 2 つのプレックスの大きさは異なり、 ボリュームの最後の 158 MB には耐性がありません。 このような状況で完全な信頼性を保証するためには、 .Ic create コマンドを使用して 988 MB のボリュームを作成します。 .Ss 2 つのストライプ化プレックスのミラー化ボリューム 今度は、2 つのストライプ化プレックスのミラー化ボリュームを作成するために .Fl s オプションを使用します: .Bd -literal vinum -> mirror -v -n raid10 -s /dev/da1h /dev/da2h /dev/da3h /dev/da4h drive vinumdrive0 device /dev/da1h drive vinumdrive1 device /dev/da2h drive vinumdrive2 device /dev/da3h drive vinumdrive3 device /dev/da4h volume raid10 setupstate plex name raid10.p0 org striped 256k sd name raid10.p0.s0 drive vinumdrive0 size 849825b sd name raid10.p0.s1 drive vinumdrive2 size 849825b plex name raid10.p1 org striped 256k sd name raid10.p1.s0 drive vinumdrive1 size 1173665b sd name raid10.p1.s1 drive vinumdrive3 size 1173665b V raid10 State: up Plexes: 2 Size: 1146 MB P raid10.p0 S State: up Subdisks: 2 Size: 829 MB P raid10.p1 S State: up Subdisks: 2 Size: 1146 MB S raid10.p0.s0 State: up PO: 0 B Size: 414 MB S raid10.p0.s1 State: up PO: 256 kB Size: 414 MB S raid10.p1.s0 State: up PO: 0 B Size: 573 MB S raid10.p1.s1 State: up PO: 256 kB Size: 573 MB .Ed .Pp この場合、使用可能なボリュームはより小さくなります。 なぜなら、最小のドライブに適合するように、 第 1 プレックスが小さくなったためです。 .Sh 設定ファイル .Nm では、 .Ic create コマンドに渡すすべての引数は設定ファイルに入っている必要があります。 設定ファイルのエントリは、ボリュームやプレックスやサブディスクを定義します。 エントリは 1 行に 1 つということ以外には決まった書式はありません。 .Ss スケールファクタ これらの値は、バイトで指定しても良いですし、 次のスケールファクタのいずれか 1 つを後に付けても良いです: .Bl -tag -width indent .It s 値が 512 バイトのセクタ数であることを示します。 .It k 値がキロバイト数であることを示します (1024 バイト)。 .It m 値がメガバイト数であることを示します (1048576 バイト)。 .It g 値がギガバイト数であることを示します (1073741824 バイト)。 .It b .Tn VERITAS との互換性のために使用します。 これは、512 バイトのブロック数を意味します。 .Dq ブロック という語を別の意味で使用していますので、 この短縮形は混乱させるものです。 この短縮形の価値は低下しています。 .El .Pp 例えば、16777216 バイトという値は、 .Em 16m , .Em 16384k , .Em 32768s のいずれの表記も可能です。 .Pp 設定ファイルには以下のエントリを記述することができます。 .Pp .Bl -tag -width 4n .It Ic drive Ar name devicename Op Ar options ドライブを定義します。オプションは次の通りです: .Bl -tag -width 18n .It Cm device Ar devicename ドライブが乗るデバイスを指定します。 .Ar devicename は、例えば .Pa /dev/da1e や .Pa /dev/ad3s2h といったパーティションである必要があり、タイプ .Em vinum である必要があります。 .Dq Li c パーティションを使用してはなりません。 これはディスク全体のために予約されているからです。 .It Cm hotspare ドライブを .Dq ホットスペア ドライブであると定義します。 これは、故障したドライブと自動的に交換するために管理されます。 .Nm はこのドライブを他の用途に使用することを許しません。 特に、サブディスクをこの上に作成できません。 この機能はまだ完全には実装されていません。 .El .It Ic volume Ar name Op Ar options .Ar name という名前でボリュームを定義します。 オプションには次のものがあります。 .Bl -tag -width 18n .It Cm plex Ar plexname .It Nm plex Ar plexname 指定したプレックスをボリュームに追加します。 .Ar plexname が .Ar * として指定されると、 .Nm は設定ファイル中のボリューム定義の後で、次の妥当なエントリとなり得るプレックス の定義を捜します。 .It Cm readpol Ar policy ボリュームの .Em read policy (読み込み方針) を定義します。 .Ar policy は .Cm round か .Cm prefer Ar plexname のどちらかです。 .Nm は読み込み要求を、ただ 1 つのプレックスによって満たします。 .Cm round 読み込み方針は、読み込みを別々のプレックスから .Em ラウンドロビン 方式で 行うように指定します。 .Ar prefer 読み込み方針では、指定したプレックスから毎回読み込みを行います。 .It Cm setupstate マルチプレックスボリュームを作成する際に、すべてのプレックスの内容に一貫性が あると仮定します。通常こうなることはないため、デフォルトでは、 最初のプレックスを除いたすべてのプレックスを .Em faulty 状態に設定します。 .Ic start コマンドを使って、最初に一貫性のある状態にする必要があります。しかし ストライプ化プレックスとコンカチネート化プレックスの場合には、普通は一貫性が ないままでも問題にはなりません。ボリュームをファイルシステムや スワップパーティションとして使う場合にはディスク上の以前の内容は どうでもよいため、それは無視されます。この危険を受け入れる場合には、 .Cm setupstate キーワードを使って下さい。 設定ファイル中でボリュームの直後で定義されるプレックスに対してのみ 適用されます。 後でプレックスをボリュームに追加する場合には、 これらのプレックスを .Ic start コマンドで統合する必要があります。 .Pp RAID-5 プレックスには .Ic init を使うことが .Em 必要 なことに注意して下さい。さもないと 1 つのサブディスクに障害が起きた時、大きくデータが破壊されます。 .El .It Ic plex Op Ar options プレックスを定義します。ボリュームとは違い、名前は不要です。 オプションには次のものを指定可能です: .Bl -tag -width 18n .It Cm name Ar plexname プレックスの名前を指定します。プレックスやサブディスクに名前をつける場合には .Cm name キーワードが必要になることに注意して下さい。 .It Cm org Ar organization Op Ar stripesize プレックスの編成を指定します。 .Ar organization は .Cm concat か .Cm striped か .Cm raid5 のいずれかです。 .Cm striped と .Cm raid5 のプレックスに対しては .Ar stripesize 引数を指定する必要がありますが、 .Cm concat のプレックスに対しては省略する必要があります。 .Ar striped タイプについては各ストライプの幅を指定します。 .Ar raid5 については、グループの大きさを指定します。 グループとはプレックスの一部分であり、 同じサブディスクに入っているすべてのデータのパリティが入っています。 それはプレックスの大きさの約数である必要があり (つまり、プレックスの大きさをストライプの大きさで割ったものは 整数である必要があり)、 ディスクセクタ長 (512バイト) の倍数である必要があります。 .Pp 最適な性能のためには、ストライプの大きさは少なくとも 128kB であるべきです。 これより小さくすると、 個々のリクエストが複数のディスクに対して割り当てられることにより、 I/O のアクティビティが非常に増加します。 本マッピングによる並行転送数増加に起因する性能向上は、 レイテンシ増加に起因する性能劣化を引き起しません。 ストライプの大きさの目安は、256 kB から 512 kB の間です。 2 の羃乗は避けるべきです。 2 の羃乗を使用すると、すべてのスーパブロックを 最初のサブディスクに置く傾向があるからです。 .Pp ストライプ化プレックスは最低 2 つのサブディスクを持つ必要がありますし (そうでないとコンカチネート化プレックスになります)、 それぞれは同じ大きさである必要があります。 RAID-5 プレックスは最低 3 つのサブディスクを持つ必要があり、 それぞれは同じ大きさである必要があります。 実際には RAID-5 プレックスは最低 5 つのサブディスクから構成されるべきです。 .It Cm volume Ar volname プレックスを、指定したボリュームに追加します。 .Cm volume キーワードが指定されないと、プレックスは設定ファイル中の最後に記述された ボリュームに追加されます。 .It Cm sd Ar sdname offset 指定したサブディスクをプレックスの .Ar offset の位置に追加します。 .El .It Ic subdisk Op Ar options サブディスクを定義します。オプションには次のものを指定可能です: .Bl -hang -width 18n .It Cm name Ar name サブディスクの名前を指定します。これは必ずしも指定する必要は ありません。 上記の .Sx オブジェクトの命名 を参照してください。 サブディスクに名前をつける場合には .Cm name キーワードを指定する必要があることに注意して下さい。 .It Cm plexoffset Ar offset プレックス内のサブディスクの始点を指定します。指定がないと、 .Nm はすでにサブディスクがあればその直後の領域を割り当て、なければ プレックスの先頭から割り当てます。 .It Cm driveoffset Ar offset ドライブ内のサブディスクの始点を指定します。指定がないと、 .Nm はドライブ中で最初の .Ar length バイト連続の空き領域を割り当てます。 .It Cm length Ar length サブディスクの大きさを指定します。このキーワードは必須です。 デフォルト値はありません。 値 0 を指定すると、 .Dq ドライブ上で最大限利用可能な連続空き領域を使用 という意味になります。 ドライブが空の場合、サブディスクとしてドライブ全体を使用することを意味します。 .Cm length は .Cm len と短縮することもできます。 .It Cm plex Ar plex サブディスクが属すプレックスを指定します。デフォルトでは、サブディスクは 最後に記述されたプレックスに属します。 .It Cm drive Ar drive サブディスクが乗るドライブを指定します。デフォルトでは最後に記述された ドライブ上に位置します。 .El .El .Sh 設定ファイル例 .Bd -literal # vinum 設定ファイル例 # # ドライブ drive drive1 device /dev/da1h drive drive2 device /dev/da2h drive drive3 device /dev/da3h drive drive4 device /dev/da4h drive drive5 device /dev/da5h drive drive6 device /dev/da6h # 1 つのストライプ化プレックスをもつボリューム volume tinyvol plex org striped 512b sd length 64m drive drive2 sd length 64m drive drive4 volume stripe plex org striped 512b sd length 512m drive drive2 sd length 512m drive drive4 # 2 つのプレックス volume concat plex org concat sd length 100m drive drive2 sd length 50m drive drive4 plex org concat sd length 150m drive drive4 # 1 つのストライプ化プレックスと 1 つのコンカチネート化プレックスを持つボリューム volume strcon plex org striped 512b sd length 100m drive drive2 sd length 100m drive drive4 plex org concat sd length 150m drive drive2 sd length 50m drive drive4 # 1 つの RAID-5 プレックスと 1 つのストライプ化プレックスを持つボリューム # RAID-5 ボリュームの方が 1 つのサブディスク分だけ大きいことに注意 volume vol5 plex org striped 64k sd length 1000m drive drive2 sd length 1000m drive drive4 plex org raid5 32k sd length 500m drive drive1 sd length 500m drive drive2 sd length 500m drive drive3 sd length 500m drive drive4 sd length 500m drive drive5 .Ed .Sh ドライブレイアウト上の考慮点 現在、 .Nm ドライブは .Bx ディスクパーティションです。それは 他の用途で使用されているデータの上書きを避けるために .Em vinum タイプである必要があります。 .Nm disklabel Fl e を使用して、パーティションタイプ定義を編集してください。 次の表示は、 .Xr disklabel 8 が示す典型的なパーティションレイアウトです: .Bd -literal 8 partitions: # size offset fstype [fsize bsize bps/cpg] a: 81920 344064 4.2BSD 0 0 0 # (Cyl. 240*- 297*) b: 262144 81920 swap # (Cyl. 57*- 240*) c: 4226725 0 unused 0 0 # (Cyl. 0 - 2955*) e: 81920 0 4.2BSD 0 0 0 # (Cyl. 0 - 57*) f: 1900000 425984 4.2BSD 0 0 0 # (Cyl. 297*- 1626*) g: 1900741 2325984 vinum 0 0 0 # (Cyl. 1626*- 2955*) .Ed .Pp この例では、パーティション .Dq Li g を .Nm パーティションとして使用可能です。パーティション .Dq Li a , .Dq Li e , .Dq Li f は、 .Em UFS ファイルシステムまたは .Em ccd パーティションとして使用可能です。パーティション .Dq Li b はスワップパーティションであり、パーティション .Dq Li c はディスク全体を表現するため他の用途に使用できません。 .Pp .Nm は各パーティションの先頭から 265 セクタを設定情報に使用するため、 サブディスクの最大の大きさはドライブよりも 265 セクタ小さくなります。 .Sh ログファイル .Nm はログファイルを管理します。 ログファイルは、デフォルトでは .Pa /var/tmp/vinum_history であり、 .Nm に対して発行したコマンドの履歴を保持します。 環境変数 .Ev VINUM_HISTORY をファイルの名前に設定することにより、 このファイルの名前をオーバライド可能です。 .Pp ログファイル中のメッセージの前には日付が付きます。 デフォルトの書式は .Qq Li %e %b %Y %H:%M:%S です。書式の文字列に関するさらなる詳細については .Xr strftime 3 を参照してください。 これは環境変数 .Ev VINUM_DATEFORMAT でオーバライド可能です。 .Sh VINUM 設定法 本節では、 .Nm システムの実装方法に関する、現実的なアドバイスを行います。 .Ss データを何処に置くか まず決定が必要な選択は、データを何処に置くかです。 .Nm 専用のディスクパーティションが必要です。 これらは、デバイスやパーティション .Dq Li c ではなく、パーティションであるべきです。 例えば、適切な名前とは、 .Pa /dev/da0e や .Pa /dev/ad3s4a です。 不適切な名前とは、パーティションではなくデバイスを表現する .Pa /dev/da0 , .Pa /dev/da0s1 や、ディスク全体を表現しタイプ .Em unused であるべき .Pa /dev/ad1c です。 前述の、 .Sx ドライブレイアウト上の考察点 下にある使用例を参照してください。 .Ss ボリュームのデザイン .Nm ボリュームの設定方法は、あなたの意図に依存します。 次のように多くの可能性があります: .Bl -enum .It 多くの小さなディスクを結合して、 適切な大きさのファイルシステムを作成したいと考えるかもしれません。 例えば、小さなディスクを 5 個持っていて、 全空間を単一ボリュームとして使用したい場合、次のような設定ファイルを書きます: .Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e drive d4 device /dev/da5e drive d5 device /dev/da6e volume bigger plex org concat sd length 0 drive d1 sd length 0 drive d2 sd length 0 drive d3 sd length 0 drive d4 sd length 0 drive d5 .Ed .Pp この場合、サブディスクの長さを 0 と指定します。 これは、 .Dq ドライブ上にある空き空間のうち、最大領域を使用する ことを意味します。 指定するサブディスクが、ドライブ上の唯一のサブディスクである場合、 このサブディスクは使用可能な空間全体を使用します。 .It ディスク故障に対する追加の回復力 (レジリエンス; resilience) を .Nm に与えたい場合を考えます。 選択肢としては、 .Dq ミラーリング とも呼ばれる RAID-1 か、 .Dq パリティ とも呼ばれる RAID-5 があります。 .Pp ミラーリングの設定のためには、 単一ボリュームの中に複数のプレックスを作成する必要があります。 例えば、 2 GB のミラー化ボリュームを作成するには、 次のような設定ファイルを作成します: .Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e volume mirror plex org concat sd length 2g drive d1 plex org concat sd length 2g drive d2 .Ed .Pp ミラー化ドライブを作成するときには、 各プレックスからのデータが、 違う物理ディスク上にあることを保証することが重要です。 これにより、単一ドライブ故障においても、 .Nm はボリュームの完全なアドレス空間にアクセス可能となります。 各プレックスが、 完全なボリュームと同じだけのデータを必要とすることに注意してください: この例では、ボリュームは 2 GB の大きさですが、各プレックス (と各サブディスク) は 2 GB を必要としますので、全体のディスクストレージ要求は 4 GB となります。 .Pp RAID-5 の設定をするには、タイプ .Cm raid5 の単一プレックスを作成します。 例えば、回復力を持つ 2 GB に相当するボリュームを作成するには、 次のような設定ファイルを使用します: .Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e drive d4 device /dev/da5e drive d5 device /dev/da6e volume raid plex org raid5 512k sd length 512m drive d1 sd length 512m drive d2 sd length 512m drive d3 sd length 512m drive d4 sd length 512m drive d5 .Ed .Pp RAID-5 プレックスは、最低 3 個のサブディスクを必要とします。 これらのうち 1 個には、パリティ情報を格納するので、 データストレージとしては使用しません。 より多くのディスクを使用すると、 より多くの割合のディスクストレージを、 データストレージとして使用可能となります。 この例では、総ストレージ使用量は 2.5 GB です。 これに対し、ミラー設定での総ストレージ使用量は 4 GB です。 最小の 3 個のディスクだけを使用する場合、 情報格納のために次のように 3 GB を必要とします: .Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e volume raid plex org raid5 512k sd length 1g drive d1 sd length 1g drive d2 sd length 1g drive d3 .Ed .Pp ミラー化ドライブを作成するときには、 各サブディスクからのデータが、 違う物理ディスク上にあることを保証することが重要です。 これにより、単一ドライブ故障においても、 .Nm はボリュームの完全なアドレス空間にアクセス可能となります。 .It また、 .Nm の設定により、 ファイルシステムへのアクセスの並行性を増したいと考えるかもしれません。 多くの場合、単一のファイルシステムへのアクセスは、 ディスク速度により制限されます。 ボリュームを複数のディスクに分散することにより、 複数アクセス環境でのスループットを増すことが可能です。 この技術は、単一アクセス環境では、 ほとんど効果がないかまったく効果がありません。 .Nm は .Dq ストライピング または RAID-0 とも呼ばれる技術を使用し、アクセスの並行性を増します。 RAID-0 という名称は誤解を生じさせるものです: なぜなら、ストライピングは冗長性も更なる信頼性も提供しないからです。 実際、信頼性は低下します。 なぜなら、単一ディスクの故障はボリュームを使用不可とし、 多くのディスクを使うほどこれらのうち 1 個が故障する確率は増加するからです。 .Pp ストライピングの実装のためには、 .Cm striped (ストライプ化) プレックスを使用します: .Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e drive d4 device /dev/da5e volume raid plex org striped 512k sd length 512m drive d1 sd length 512m drive d2 sd length 512m drive d3 sd length 512m drive d4 .Ed .Pp ストライプ化プレックスの最低サブディスク数は 2 個です。 多くのディスクを使用するほど、性能が向上します。 .It 両方の最良点を得ることにより、回復力と性能の両方を得ることを考えます。 これは、RAID-10 (RAID-1 と RAID-0 の組み合わせ) と呼ばれることがあります。 この名称もまた誤解を生じさせるものです。 .Nm では、次のような設定ファイルを使用可能です: .Bd -literal -offset 4n drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e drive d4 device /dev/da5e volume raid setupstate plex org striped 512k sd length 512m drive d1 sd length 512m drive d2 sd length 512m drive d3 sd length 512m drive d4 plex org striped 512k sd length 512m drive d4 sd length 512m drive d3 sd length 512m drive d2 sd length 512m drive d1 .Ed .Pp ここでは、プレックスはストライプ化され、性能を向上しています。 そして、このようなプレックスが 2 個あり、回復力を向上しています。 この例で、2 番目のプレックスのサブディスクの順番が、 1 番目のプレックスの逆になっていることに注意してください。 これは性能のためであり、後で議論します。 更に、ボリューム指定にキーワード .Cm setupstate を含み、全プレックスが作成後に .Em up となることを保証しています。 .El .Ss ボリュームの作成 ひとたび設定ファイルを作成した後は、 .Nm を起動し、ボリュームを作成します。 この例では、設定ファイルは .Pa configfile です: .Bd -literal -offset 2n # vinum create -v configfile 1: drive d1 device /dev/da2e 2: drive d2 device /dev/da3e 3: volume mirror 4: plex org concat 5: sd length 2g drive d1 6: plex org concat 7: sd length 2g drive d2 Configuration summary Drives: 2 (4 configured) Volumes: 1 (4 configured) Plexes: 2 (8 configured) Subdisks: 2 (16 configured) Drive d1: Device /dev/da2e Created on vinum.lemis.com at Tue Mar 23 12:30:31 1999 Config last updated Tue Mar 23 14:30:32 1999 Size: 60105216000 bytes (57320 MB) Used: 2147619328 bytes (2048 MB) Available: 57957596672 bytes (55272 MB) State: up Last error: none Drive d2: Device /dev/da3e Created on vinum.lemis.com at Tue Mar 23 12:30:32 1999 Config last updated Tue Mar 23 14:30:33 1999 Size: 60105216000 bytes (57320 MB) Used: 2147619328 bytes (2048 MB) Available: 57957596672 bytes (55272 MB) State: up Last error: none Volume mirror: Size: 2147483648 bytes (2048 MB) State: up Flags: 2 plexes Read policy: round robin Plex mirror.p0: Size: 2147483648 bytes (2048 MB) Subdisks: 1 State: up Organization: concat Part of volume mirror Plex mirror.p1: Size: 2147483648 bytes (2048 MB) Subdisks: 1 State: up Organization: concat Part of volume mirror Subdisk mirror.p0.s0: Size: 2147483648 bytes (2048 MB) State: up Plex mirror.p0 at offset 0 Subdisk mirror.p1.s0: Size: 2147483648 bytes (2048 MB) State: up Plex mirror.p1 at offset 0 .Ed .Pp .Fl v フラグは、設定に従ってファイルをリストするよう、 .Nm に指示します。その後、 .Ic list Fl v コマンドと同じ書式で、現在の設定をリストします。 .Ss より多くのボリュームを作成する ひとたび .Nm ボリュームを作成した後は、 .Nm はこれらの情報を内部の設定ファイルにて管理します。 再度作成する必要はありません。 特に、 .Ic create コマンドを再実行すると、追加のオブジェクトを作ることになります: .Bd -literal # vinum create sampleconfig Configuration summary Drives: 2 (4 configured) Volumes: 1 (4 configured) Plexes: 4 (8 configured) Subdisks: 4 (16 configured) D d1 State: up Device /dev/da2e Avail: 53224/57320 MB (92%) D d2 State: up Device /dev/da3e Avail: 53224/57320 MB (92%) V mirror State: up Plexes: 4 Size: 2048 MB P mirror.p0 C State: up Subdisks: 1 Size: 2048 MB P mirror.p1 C State: up Subdisks: 1 Size: 2048 MB P mirror.p2 C State: up Subdisks: 1 Size: 2048 MB P mirror.p3 C State: up Subdisks: 1 Size: 2048 MB S mirror.p0.s0 State: up PO: 0 B Size: 2048 MB S mirror.p1.s0 State: up PO: 0 B Size: 2048 MB S mirror.p2.s0 State: up PO: 0 B Size: 2048 MB S mirror.p3.s0 State: up PO: 0 B Size: 2048 MB .Ed .Pp この例では (今回は .Fl f フラグを付けています)、 .Ic create の再実行により 4 個の新規プレックスを作成し、 それぞれが新規サブディスクを持ちます。 他のボリュームを追加したい場合、これらのための新規設定ファイルを作成します。 .Nm が既に知っているドライブを参照する必要はありません。 例えば、ボリューム .Pa raid を 4 個のディスク .Pa /dev/da1e , .Pa /dev/da2e , .Pa /dev/da3e , .Pa /dev/da4e 上に作成するには、他の 2 個についてのみ記述するだけで良いです: .Bd -literal -offset indent drive d3 device /dev/da1e drive d4 device /dev/da4e volume raid plex org raid5 512k sd size 2g drive d1 sd size 2g drive d2 sd size 2g drive d3 sd size 2g drive d4 .Ed .Pp この設定ファイルでは、次のようになります: .Bd -literal # vinum create newconfig Configuration summary Drives: 4 (4 configured) Volumes: 2 (4 configured) Plexes: 5 (8 configured) Subdisks: 8 (16 configured) D d1 State: up Device /dev/da2e Avail: 51176/57320 MB (89%) D d2 State: up Device /dev/da3e Avail: 53220/57320 MB (89%) D d3 State: up Device /dev/da1e Avail: 53224/57320 MB (92%) D d4 State: up Device /dev/da4e Avail: 53224/57320 MB (92%) V mirror State: down Plexes: 4 Size: 2048 MB V raid State: down Plexes: 1 Size: 6144 MB P mirror.p0 C State: init Subdisks: 1 Size: 2048 MB P mirror.p1 C State: init Subdisks: 1 Size: 2048 MB P mirror.p2 C State: init Subdisks: 1 Size: 2048 MB P mirror.p3 C State: init Subdisks: 1 Size: 2048 MB P raid.p0 R5 State: init Subdisks: 4 Size: 6144 MB S mirror.p0.s0 State: up PO: 0 B Size: 2048 MB S mirror.p1.s0 State: up PO: 0 B Size: 2048 MB S mirror.p2.s0 State: up PO: 0 B Size: 2048 MB S mirror.p3.s0 State: up PO: 0 B Size: 2048 MB S raid.p0.s0 State: empty PO: 0 B Size: 2048 MB S raid.p0.s1 State: empty PO: 512 kB Size: 2048 MB S raid.p0.s2 State: empty PO: 1024 kB Size: 2048 MB S raid.p0.s3 State: empty PO: 1536 kB Size: 2048 MB .Ed .Pp RAID-5 プレックスの大きさに注意してください: 6 GB しかありませんが、 これを構成するためにディスク空間を 8 GB 使用しています。 これは、サブディスク 1 個分相当をパリティデータ格納に使用しているからです。 .Ss Vinum の再起動 システムのリブート時に、 .Ic start コマンドで .Nm を起動します: .Pp .Dl "# vinum start" .Pp これにより、システム中の全 .Nm ドライブが起動します。 なんらかの理由で一部のドライブのみを起動したい場合、 .Ic read コマンドを使用してください。 .Ss 性能関連 最高性能の RAID アレイ設定に関する、多くの誤った考えが存在しています。 特に、ほとんどのシステムで使用しているストライプの大きさは、小さ過ぎます。 以降の議論は、 .Nm だけでなく、全 RAID システムにあてはまります。 .Pp .Fx のブロック I/O システムは、.5 kB から 128 kB までの要求を発行します; .\" mix = workload mix ? 典型的なミックスでは、ほぼ 8 kB です。 どんなストライピングシステムにおいても、 ある要求が 2 個の物理要求に分割されることを避けることはできませんし、 ストライプを十分細かくするならばより多くに分割されてしまいます。 これにより、甚大な性能劣化となります: ディスクあたりの転送時間の削減は、 より大きなオーダで増加するレイテンシによって相殺されてしまいます。 .Pp 最近のディスクの大きさと .Fx のブロック I/O システムでは、 ストライプの大きさを 256 kB から 512 kB にすると、 適度に少数な要求に分割されることを期待できます; 正しい RAID の実装では、 大きなディスクでのストライプの大きさを 2 または 4 MB に増さない 明確な理由はありません。 .Pp ストライプサイズを選択するときには、 最新の UFS ファイルシステムのシリンダグループの大きさは 32 MB であることを 認識していてください。 ストライプサイズとディスク数が共に 2 の累乗の場合、 すべてのスーパブロックと inode が同一のサブディスクに置かれる可能性があります。 これは、性能に重大な影響を与えます。 代りに奇数、例えば 479 kB を選択してください。 .Pp 複数アクセスシステムでの転送のインパクトを考えるためのもっとも容易な方法は、 潜在的なボトルネック、すなわちディスクサブシステムの観点から見ることです: つまり、転送に要するディスク時間の総計はいくらか?です。 ほとんどすべてがキャッシュされているので、 要求と完了との時間的な関係はそれほど重要ではありません: 重要なパラメータは、要求がディスクを活動状態にする総時間であり、 この間ディスクは他の転送ができなくなります。 この結果、転送が同時に発生しても違う時に発生しても、 実際には問題とはなりません。 実際的には、我々が見ている時間は、レイテンシの総和 (位置決定時間と回転遅延、 言い替えるとデータがディスクヘッド下に来るまでの時間) と総転送時間です。 同じ速度のディスクへの転送においては、 転送時間は転送の大きさの合計のみに依存します。 .Pp 24 kB の典型的なニュースの記事やウェブページを考えると、 これは 1 回の I/O で読み込めます。 ディスクが転送レート 6 MB/s で平均位置決定時間 8 ms であり、 ファイルシステムを 4 kB ブロックであるとします。 24 kB ですから、断片化を考慮する必要はなく、 ファイルは 4 kB 境界から開始します。 必要な転送回数はブロック開始位置に依存します: 式は (S + F - 1) / S となり、 S はファイルシステムブロック数でのストライプの大きさ、 F はファイルシステムブロック数でのファイルの大きさです。 .Bl -enum .It ストライプの大きさは 4 kB。転送回数は 6 回。 サブシステムの負荷: レイテンシ 48 ms、転送 2 ms、合計 50 ms。 .It ストライプの大きさは 8 kB。転送回数は 3.5 回。 サブシステムの負荷: レイテンシ 28 ms、転送 2 ms、合計 30 ms。 .It ストライプの大きさは 16 kB。転送回数は 2.25 回。 サブシステムの負荷: レイテンシ 18 ms、転送 2 ms、合計 20 ms。 .It ストライプの大きさは 256 kB。平均転送回数は 1.08 回。 サブシステムの負荷: レイテンシ 8.6 ms、転送 2 ms、合計 10.6 ms。 .It ストライプの大きさは 4 MB。平均転送回数は 1.0009 回。 サブシステムの負荷: レイテンシ 8.01 ms、転送 2 ms、合計 10.01 ms。 .El .Pp ハードウェア RAID システムによっては、 大きなストライプでは問題があるものがあるようです: このようなシステムでは完全なストライプを常にディスクとの間で転送するようで、 大きなストライプは性能に逆効果となります。 .Nm ではこの問題の被害を受けません: すべてのディスク転送を最適化し、不要なデータを転送しないからです。 .Pp 良く知られたベンチマークプログラムで真の複数アクセス状態 (100 を越える同時ユーザ) をテストするものはないので、 この主張の正しさを証明することは困難であることに注意してください。 .Pp これらのことを考えると、次の事項が .Nm ボリュームの性能に影響します: .Bl -bullet .It ストライピングは、複数アクセスのみの性能を向上します。 各要求が違うディスク上にある確率が増加するからです。 .It 複数ドライブにまたがるコンカチネート化 UFS ファイルシステムもまた、 複数ファイルアクセスの性能を向上します。 UFS は、ファイルシステムをシリンダグループに分割し、 ファイルを単一のシリンダグループに置こうとするからです。 一般的に、ストライピングほどは効果がありません。 .It ミラーリングは、読み込み複数アクセスの性能を向上可能です。 デフォルトでは .Nm は、連続する複数の読み込みを、 連続する複数のプレックスに対して発行するからです。 .It ミラーリングは、複数アクセスか単一アクセスかに関わらず、 すべての書き込みの性能を劣化させます。 両方のプレックスに対し、データを書き込む必要があるからです。 これが、前述のミラーリング設定におけるサブディスクのレイアウトの説明です: 各プレックス中の対応するサブディスクが別の物理ディスクにある場合、 書き込みコマンドは並列に発行可能です。 しかし、同じ物理ディスクにある場合、逐次的に実行されてしまいます。 .It RAID-5 の読み込みは、 ストライプ化の読み込みと本質的に同じ考慮すべき点があります。 ただし、ストライプ化プレックスがミラー化ボリュームの一部である場合を除きます。 この場合、ミラー化ボリュームの方が性能が良くなります。 .It RAID-5 の書き込みは、ストライプ化の書き込みの約 25% の速度です: 書き込みを行うには、 .Nm はまずデータブロックと対応するパリティブロックを読み込み、 いくばくかの計算を行い、 パリティブロックとデータブロックを書き戻す必要がありますので、 ストライプ化プレックスに対する書き込みの 4 倍の転送回数となります。 一方、これはミラーリングのコストにより相殺されますので、 単一 RAID-5 プレックスのボリュームへの書き込みは、 2 個のストライプ化プレックスからなる正しく設定されたボリュームへの 書き込み速度の半分となります。 .It .Nm の設定が変わると (例えば、オブジェクトの追加や削除、またはオブジェクトの状態変更)、 .Nm は 128 kB までの更新された設定を各ドライブに書き込みます。 ドライブ数が増加すると、この時間が長くなります。 .El .Ss Vinum ボリューム上にファイルシステムを作成する .Nm ボリューム上にファイルシステムを作成する前に .Xr disklabel 8 を実行する必要はありません。 .Xr newfs 8 だけを実行してください。 .Fl v オプションを使用して、 デバイスがパーティションに分割されないようにしてください。 例えば、ボリューム .Pa mirror 上にファイルシステムを作成するには、次のコマンドを入力します: .Pp .Dl "# newfs -v /dev/vinum/mirror" .Pp .Nm の設定に関係する数個のその他のことがらがあります: .Bl -bullet .It 複数のドライブを単一ディスク上に作成しても、利益はありません。 各ドライブは 131.5 kB のデータをラベルと設定情報に使用し、 設定変更時に性能が劣化します。 適切な大きさのサブディスクを使用してください。 .It コンカチネート化 .Nm プレックスの大きさを増すことはできますが、 現在のところストライプ化プレックスと RAID-5 プレックスでは増せません。 現在のところ既存の UFS ファイルシステムの大きさを増すこともできません。 プレックスおよびファイルシステムを拡張可能とする計画はあります。 .El .Sh 状態管理 (STATE MANAGEMENT) Vinum オブジェクトは .Em state の概念を持ちます。 詳細は .Xr vinum 4 を参照して下さい。もしそれらの状態が .Em up なら、それらは完全にアクセス可能なだけです。 オブジェクトの状態を .Em up に変更するには .Ic start コマンドを使います。オブジェクトの状態を .Em down に変更するには .Ic stop コマンドを使います。 通常、他の状態はオブジェクト間の関係によって自動的に作られます。 例えば、もしあなたがボリュームにプレックスを追加したら、プレックスの サブディスクは、ハードウェアがアクセス可能であるけれども、サブディスク上の データは不正であることを示す .Em empty 状態に設定されるでしょう。この状態の結果として、プレックスは .Em faulty 状態に設定されるでしょう。 .Ss `reviving' 状態 多くの場合、あなたがサブディスクを起動する時に、システムはサブディスクに データをコピーしなければなりません。 サブディスクの大きさによりますが、これは長い時間かかります。この間、 サブディスクは .Em reviving 状態に設定されます。コピー操作が正しく終了すれば、それは自動的に .Em up 状態に設定されます。 プロセスが、回復 (revive) を停止させ、そして再開させることがあります。 システムはサブディスクの回復の進み具合を保持し、そして .Ic start コマンドが再発行された時、その時点からコピーを再開します。 .Pp ボリュームのプレックスが一つ以上が回復している間はボリュームの整合性を 保つために、 .Nm は書き込む場所まで回復させたサブディスクに書きます。もし読みとる領域が すでに回復しているならば、プレックスから読み出すことができます。 .Sh 分かりにくい仕様 (GOTCHAS) 次の事柄はバグではありませんし、存在する理由があるのですが、 混乱を引き起こすものです。 各項目は適切な節において議論されています。 .Bl -enum .It .Nm ドライブは .Ux ディスクパーティションであり、パーティションタイプ .Em vinum であることが必要です。 これは、パーティションタイプが .Em 4.2BSD であることを期待する .Xr ccd 4 とは異なります。 この .Nm ccd の動作は、自分の足元をすくうことになります: .Nm ccd では、用意にファイルシステムを上書きできてしまいます。 .Nm ではそのようなことは許しません。 .Pp 同様の理由で、 .Nm Ic start コマンドは、パーティション .Dq Li c 上のドライブを受け付けません。 パーティション .Dq Li c は、ディスク全体を表現するためにシステムが使用し、タイプ .Em unused である必要があります。 ここには明確な矛盾があるので、 .Dq Li c パーティションを使用しないことにより .Nm は問題を解決しています。 .It 複数のプレックスからなるボリューム作成時に、 .Nm はプレックスを自動的には初期化しません。 これは、内容については分からなくても、 これらの間には確かに一貫性がないということを意味しています。 その結果デフォルトでは、 新規作成されたプレックスのうち最初のものを除いたすべての状態を、 .Nm は .Em faulty (誤り) 状態に設定します。 これらを最初のプレックスと同期させるには、 これらのサブディスクを .Ic start させる必要があります。 これにより、 .Em up 状態のプレックスから .Nm にデータをコピーさせます。 関係するサブディスクの大きさに依存して、必要な時間は長くなり得ます。 .Pp 実際上は、プレックス作成時にその内容に多大な興味を持つ人はいないので、 他のボリュームマネージャはどんなときでも .Ar up に設定して騙します。 .Nm は、新規作成されたプレックスが .Em up 状態であることを保証するために、2 つの方法を提供します: .Bl -bullet .It プレックスを作成し、それらを .Nm Ic start で同期します。 .It キーワード .Cm setupstate 付きでボリューム (プレックスではありません) を作成します。 このキーワードは、矛盾が存在しても無視してプレックスの状態を .Em up 状態にするように、 .Nm に指示します。 .El .It 現在 .Nm がサポートしているコマンドには、実際には不要なものがあります。 私には理解できない理由があるのでしょうが、 .Ic label および .Ic resetconfig のコマンドを使おうとするユーザをしばしば見掛けます。特に .Ic resetconfig は、あらゆる種類の恐しいメッセージを表示するにもかかわらずです。 正当な理由無しに、これらのコマンドを使わないでください。 .It 状態遷移には非常に分り難いものがあります。 事実、これがバグであるのか仕様であるのかは明かではありません。 .Em reborn サブディスクなどの、奇妙な状態になったオブジェクトを起動できない場合には、 .Ic stop または .Ic stop Fl f のコマンドを使用して、まず .Em stopped 状態に遷移させてください。 これが上手くいけば、オブジェクトを起動できるはずです。 簡単な方法では上手くいかなくて、これが唯一の回復手段である場合、 その状況を報告してください。 .It カーネルモジュールを .Fl D Ns Dv VINUMDEBUG オプション付きで構築した場合、 .Nm もまた .Fl D Ns Dv VINUMDEBUG オプション付きで構築する必要があります。 なぜなら、両方のコンポーネントで使用されるデータオブジェクトに、 大きさが本オプションに依存しているものがあるからです。 前記のようにしないと、 .Sy Invalid argument というメッセージを表示してコマンドは失敗し、 次のようなコンソールメッセージが記録されます: .Bl -diag .It "vinumioctl: invalid ioctl from process 247 (vinum): c0e44642" .El .Pp 古いバージョンの KLD やユーザランドプログラムを使うと、 このエラーが発生することがあります。 .It .Nm Ic read コマンドの文法は、吐き気を催すものです。 これが唯一の .Nm 起動のためのコマンドでしたが、今の好ましい方法は .Nm Ic start です。 .Nm Ic read は整備のみに使用すべきです。 文法が変更されたので、引き数が .Pa /dev/da0 のようなディスクスライスであり .Pa /dev/da0e のようなパーティションではないことに注意してください。 .El .\"XXX.Sh BUGS .Sh 関連ファイル .Bl -tag -width /dev/vinum/control -compact .It Pa /dev/vinum .Nm オブジェクトのデバイスノードがあるディレクトリ .It Pa /dev/vinum/control .Nm の制御デバイス .It Pa /dev/vinum/plex .Nm プレックスのデバイスノードがあるディレクトリ .It Pa /dev/vinum/sd .Nm サブディスクのデバイスノードがあるディレクトリ .El .Sh 環境変数 .Bl -hang .It VINUM_HISTORY ログファイルの名前です。デフォルトでは /var/log/vinum_history です。 .It VINUM_DATEFORMAT ログファイル中の日付の書式です。デフォルトは %e %b %Y %H:%M:%S です。 .It EDITOR 設定ファイルの編集に使用するエディタの名前です。デフォルトは .Nm vi です。 .El .Sh 関連項目 .Xr strftime 3 , .Xr vinum 4 , .Xr disklabel 8 , .Xr newfs 8 .Pp -.Pa http://www.vinumvm.org/vinum.html , -.Pa http://www.vinumvm.org/vinum-debugging.html +.Pa http://www.vinumvm.org/vinum/ , +.Pa http://www.vinumvm.org/vinum/how-to-debug.html . .Sh 作者 .An Greg Lehey Aq grog@lemis.com .Sh 歴史 .Nm コマンドは .Fx 3.0 から登場しました。 .Nm の RAID-5 コンポーネントは、 NetMAX 製品のために Cybernet Inc.\& .Pq Pa www.cybernet.com が開発しました。 diff --git a/ja_JP.eucJP/man/man9/cd.9 b/ja_JP.eucJP/man/man9/cd.9 index c2729161fe..2af97e72a8 100644 --- a/ja_JP.eucJP/man/man9/cd.9 +++ b/ja_JP.eucJP/man/man9/cd.9 @@ -1,108 +1,105 @@ .\" Copyright (c) 1997 .\" John-Mark Gurney. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. Neither the name of the author nor the names of any co-contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY John-Mark Gurney AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/share/man/man9/cd.9,v 1.11.2.2 2001/08/17 13:08:54 ru Exp % +.\" %FreeBSD: src/share/man/man9/cd.9,v 1.11.2.3 2002/04/15 06:06:40 trhodes Exp % .\" .\" $FreeBSD$ .Dd October 10, 1998 .Dt CD 9 .Os .Sh 名称 .Nm cd .Nd CAM SCSI サブシステムのための CD-ROM ドライバ .Sh 解説 .Nm デバイスドライバは CD-ROM ドライブ .Tn ( SCSI type 5) および CD-ROM タイプのコマンドをサポートしている WORM ドライブ .Tn ( SCSI type 4) のための読み込み専用インタフェースを提供します。 幾つかのドライブは、ドライバが期待したようには振舞いません。 使用可能なフラグの情報は、癖の章を参照してください。 .Sh 癖 それぞれの .Tn CD-ROM デバイスは、 .Tn SCSI 仕様を異なったように解釈し得ます。 これにより、ドライバ中でドライブを特別扱いする必要性が発生します。 下記はドライバが認識する癖のリストです。 -癖のエントリの増やし方についてのより多くの情報は、 -.Xr scsiconf 9 -を参照してください。 .Bl -tag -width CD_Q_BCD_TRACKS .It Dv CD_Q_NO_TOUCH このフラグは、 ディスクがドライブの中にあるかとサイズを調査するために、 アタッチ時にプローブしないようドライバに通知します。 現在このフラグは、CAM の .Nm ドライバでは実装されていません。 .It Dv CD_Q_BCD_TRACKS このフラグは、正しい 10 進数ではなくパックされた BCD でトラック番号を返す、 壊れたドライブ用です。 ドライブがトラックを飛ばしている (トラック 10-15 が飛ばされる) ような場合には、 あなたはこのフラグが必要なドライブを所有しています。 .It Dv CD_Q_NO_CHANGER このフラグは、当該ドライブがチェンジャではないことを、ドライバに通知します。 これはチェンジャの一部ではないが複数の LUN を持つ CD-ROM デバイス にだけ必要です。 .It Dv CD_Q_CHANGER このフラグは、与えられたデバイスが複数の LUN を持つチェンジャであることを、 ドライバに通知します。 一般的には、LUN が 0 よりも大きい時には、ドライバはこれを自動的に理解します。 このフラグを設定する唯一の効果は、チェンジャのスケジューリングコードを通して、 チェンジャの LUN 0 に対して初期の容量読み取りコマンドを実行することを、 ドライバに通知することです。 .El .Sh 関連ファイル .Bl -tag -width /sys/cam/scsi/scsi_cd.c -compact .It Pa /sys/cam/scsi/scsi_cd.c ドライバのソースファイルです。 .El .Sh 関連項目 .Xr cd 4 , .Xr scsi 4 .Sh 歴史 .Nm のマニュアルページは .Fx 2.2 で初めて登場しました。 .Sh 作者 .An -nosplit このマニュアルページは .An John-Mark Gurney Aq gurney_j@efn.org が書きました。 CAM と .Fx 3.0 のために .An Kenneth Merry Aq ken@FreeBSD.org が更新しました。 diff --git a/ja_JP.eucJP/man/man9/style.9 b/ja_JP.eucJP/man/man9/style.9 index 7290425d8a..8c14536e94 100644 --- a/ja_JP.eucJP/man/man9/style.9 +++ b/ja_JP.eucJP/man/man9/style.9 @@ -1,692 +1,704 @@ .\" Copyright (c) 1995-2001 FreeBSD Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL [your name] OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/share/man/man9/style.9,v 1.32.2.16 2001/12/17 11:30:19 ru Exp % +.\" %FreeBSD: src/share/man/man9/style.9,v 1.32.2.19 2002/04/14 19:28:03 asmodai Exp % .\" $FreeBSD$ .\" .Dd December 7, 2001 .Dt STYLE 9 .Os .Sh 名称 .Nm style .Nd カーネルソースファイルのスタイルガイド .Sh 解説 このファイルは .Fx ソースツリーのカーネルソースに好ましいスタイルを明記しています。 これはユーザランドのコードスタイルの手引きでもあります。 +例において、スタイル規則の多くを暗黙的に使用しています。 +.Nm +がこれらの事例について言及していないと決め付ける前に、 +注意して例を確認してください。 +.Nm +はそのような事柄については記述していません。 .\" $ と FreeBSD を続けるとキーワード置換されるので、\& を挿入 .\" 2001/05/23 horikawa@jp.FreeBSD.org .Bd -literal /* * FreeBSD のためのスタイルガイドです。 * CSRG の KNF (Kernel Normal Form, カーネル標準書式) に基づいています。 * * @(#)style 1.14 (Berkeley) 4/28/95 - * $\&FreeBSD: src/share/man/man9/style.9,v 1.32.2.16 2001/12/17 11:30:19 ru Exp $ + * $\&FreeBSD: src/share/man/man9/style.9,v 1.32.2.19 2002/04/14 19:28:03 asmodai Exp $ */ /* * とても重要な 1 行のコメントはこのようにします。 */ /* 殆どの 1 行のコメントはこのようにします。 */ /* * 複数行にわたるコメントはこのようにします。実際の文章を書きます。実際の * 段落に見えるように埋めていきます。 */ .Ed .Pp 著作権ヘッダの後には空行を 1 行入れ、ソースファイルには .Va rcsid を付けます。 バージョン管理システムの ID タグは、ファイル中に 1 個のみあるべきです (このファイルでは違いますが)。 C/C++ ソースファイル以外はこの例に従いますが、 C/C++ ソースファイルは以降の例に従います。 外部から入手したファイルの すべての VCS (バージョン管理システム) リビジョン識別子は、 存在すれば維持します。 これには、ファイルの来歴を示す複数の ID も含みます。 一般的に、 .So Li $ Sc も含めて、ID はそのままとします。 外部からの VCS ID の前に .Qq Li "From" を付ける理由はありません。 ほとんどの非 .Fx の VCS ID は、 コメント中ではタブでインデントされているでしょう。 .Bd -literal #include __RCSID("@(#)style 1.14 (Berkeley) 4/28/95"); -__FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.32.2.16 2001/12/17 11:30:19 ru Exp $"); +__FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.32.2.19 2002/04/14 19:28:03 asmodai Exp $"); .Ed .Pp ヘッダファイルの前に、空行を 1 行付けます。 .Pp カーネルのインクルードファイル (すなわち、 .Pa sys/*.h ) が初めに来ます。 通常、 .Aq Pa sys/types.h または .Aq Pa sys/param.h のどちらかが必要ですが、 両方は必要ないでしょう。 .Aq Pa sys/types.h は .Aq Pa sys/cdefs.h をインクルードしており、 依存関係は問題ありません。 .Bd -literal #include /* 山括弧による非ローカルインクルード */ .Ed .Pp ネットワークプログラムである場合は、 次にネットワークインクルードファイルを置きます。 .Bd -literal #include #include #include #include #include .Ed .Pp +カーネル用のファイルには、 +.Pa /usr/include +中のファイルを使用しないでください。 +.Pp それから空行を置き、 .Pa /usr インクルードファイルを続けます。 .Pa /usr インクルードファイルはアルファベット順にソートされているべきです。 .Bd -literal #include .Ed .Pp グローバルなパス名は .Pa /usr/include/paths.h で定義されています。 プログラムにローカルなパス名はローカルディレクトリの .Qq Pa pathnames.h に入れます。 .Bd -literal #include .Ed .Pp それから、空行があって、ユーザインクルードファイルが来ます。 .Bd -literal #include "pathnames.h" /* " " によるローカルインクルード */ .Ed .Pp アプリケーションインタフェースを実装している場合を除き、 実装の名前空間で .Ic #define したり名前を定義したりしてはいけません。 .Pp .Dq Li 安全でない マクロ (副作用を持っているもの) の名前と、 明らかな定数のマクロの名前はすべて大文字です。 式のように展開されるマクロは、単一のトークンにするか外側に括弧をつけます。 .Ic #define とマクロ名の間にタブ文字を 1 個入れます。 マクロがある関数のインライン展開である場合は、 関数名は全て小文字で、マクロはすべて大文字の同じ名前を持ちます。 .\" XXX 上記は名前が同じマクロを #undef すれば関数を使える .\" という ANSI のスタイルと衝突します。 .\" これは MALLOC() については言えないし、インライン関数を使う時の .\" 一般的なやりかたではありません。 マクロが 1 行以上必要な場合は、ブレース .Ql ( \&{ と .Ql \&} ) を使用します。 バックスラッシュは右揃えします。こうすると読みやすくなります。 マクロが複合文をカプセル化する場合には、それを .Ic do ループで囲みます。 これにより、 .Ic if 文で安全に使用できます。 最後の文の終端のセミコロンは、 マクロではなくマクロの実施時に付けられるべきです。 これにより、清書器やエディタで文法解析しやすくなります。 .Bd -literal #define MACRO(x, y) do { \e variable = (x) + (y); \e (y) += 2; \e } while(0) .Ed .Pp 列挙値は全て大文字を使用します。 .Bd -literal enum enumtype { ONE, TWO } et; .Ed .Pp 構造体の中で変数を宣言する時には、 使用順、サイズ順、アルファベット順にソートして宣言します。 最初の区分は通常適用しませんが、例外があります。 各宣言は、それぞれ独立した行にて行います。 構造体の名前の位置を、あなたの判断で読み易いように、 タブ 1 個または 2 個を使用して揃えてください。 ほとんどのメンバを揃えるのに十分であれば、単一のタブを使用すべきです。 非常に長い型の後の名前は、単一の空白で区切られるべきです。 .Pp 重要な構造体は、それが使用されるファイルの先頭で宣言されるか、 複数のソースファイルで使用される場合は別のヘッダファイルで宣言されるべきです。 構造体がヘッダファイルで宣言されている場合には、 それら構造体の使用は、宣言とは分けられるべきで、かつ .Ic "extern であるべきです。 .Bd -literal struct foo { struct foo *next; /* 使用中の foo のリスト */ struct mumble amumble; /* mumble のコメント */ int bar; /* コメントを揃えようとしています */ struct verylongtypename *baz; /* タブ 2 個には収まりません */ }; struct foo *foohead; /* グローバルな foo リストの先頭 */ .Ed .Pp 可能な時には必ず、あなた自身でリストを操作するのではなく、 .Xr queue 3 マクロを使用してください。 従って、前の例をより良く書くと次のようになります。 .Bd -literal #include struct foo { LIST_ENTRY(foo) link; /* foo リストにキューマクロを使用 */ struct mumble amumble; /* mumble のコメント */ int bar; /* コメントを揃えようとしています */ struct verylongtypename *baz; /* タブ 2 個には収まりません */ }; LIST_HEAD(, foo) foohead; /* グローバルな foo リストの先頭 */ .Ed .Pp 構造体の型に typedef を使用する事は避けてください。 使用してしまうと、 構造体へのポインタを不透明 (opaque) に使用することが、 アプリケーションにとって不可能となります。 通常の struct タグを使用すると、これが可能となり、かつ有益です。 規約が .Ic typedef を要求する場合には、その名前を構造体タグに一致させます。 標準 C または \*[Px] によって明示されたものを除いては、 .Dq Li _t で終る typedef を避けてください。 .Bd -literal /* 構造体名と typedef を一致させます */ typedef struct bar { int level; } BAR; +typedef int foo; /* これは foo です */ +typedef const long baz; /* これは baz です */ .Ed .Pp 全ての関数はどこかでプロトタイプされます。 .Pp 私的な関数 (すなわち、他のどこでも使用されない関数など) の関数プロトタイプは、 最初のソースモジュールの先頭に置かれます。 単一のソースモジュールにローカルな関数は、 .Ic static で宣言されるべきです。 .Pp カーネルの別の部分から使用される関数は、 関連のあるインクルードファイルの中でプロトタイプされます。 .Pp 複数のモジュールでローカルに使用される関数は、 .Qq Pa extern.h 等の分離したヘッダファイルの中に置かれます。 .Pp 一般にソースファイルが K&R 旧約聖書コンパイラで コンパイル可能である (べき) 時にのみ、 インクルードファイル .Aq Pa sys/cdefs.h の .Dv __P マクロを使用します。 新しいコードでの .Dv __P マクロの使用は反対されていますが、 既存のファイルに対する修正はそのファイルの規約と首尾一貫しているべきです。 .Pp ファイルの 50% かそれ以上を巻き込んだ修正の場合は、 一般にコードは .Dq 新しいコード とみなすことができます。 これは既存のコードの慣例を破り、 現在の .Nm ガイドラインを使用するのに十分です。 .Pp カーネルはパラメータの型に関連付けられた名前を持ちます。 例えば、カーネル内でこのように使用します。 .Bd -literal void function(int fd); .Ed .Pp ユーザランドのアプリケーションに対して見えるヘッダファイルの中では、 可視のプロトタイプは、 型を伴った .Dq 保護された (アンダスコアで開始する) 名前を使用するか、 型だけで名前を使用しないかのどちらかが必要です。 保護された名前の使用がより望ましいです。 例えば、このように使用します。 .Bd -literal void function(int); .Ed .Pp または .Bd -literal void function(int _fd); .Ed .Pp プロトタイプは関数名の行揃えを行なうために、タブの後に追加のスペース文字を 置いても構いません。 .Bd -literal static char *function(int _arg, const char *_arg2, struct foo *_arg3, struct bar *_arg4); static void usage(void); /* * 全ての主要なルーチンはそれが何をするのかを簡潔に記述した * コメントを持つべきです。"main" ルーチンの前のコメントは * そのプログラムが何をするのかを記述するべきです。 */ int main(int argc, char *argv[]) { long num; int ch; char *ep; .Ed .Pp 一貫性のために、オプションの解析には .Xr getopt 3 が使用されるべきです。 .Xr getopt 3 呼び出しと .Ic switch 文では、オプションをソートすべきですが、 .Ic switch 文のカスケードの一部の場合は例外です。 .Ic switch 文のカスケード要素は .Li FALLTHROUGH コメントを持つべきです。 数値の引数は精度をチェックされるべきです。 到達できないコードは .Li NOTREACHED コメントを持つべきです。 .Bd -literal while ((ch = getopt(argc, argv, "abn:")) != -1) switch (ch) { /* switch をインデント */ case 'a': /* case はインデントしない */ aflag = 1; /* FALLTHROUGH */ case 'b': bflag = 1; break; case 'n': num = strtol(optarg, &ep, 10); if (num <= 0 || *ep != '\e0') { warnx("illegal number, -n argument -- %s", optarg); usage(); } break; case '?': default: usage(); /* NOTREACHED */ } argc -= optind; argv += optind; .Ed .Pp 予約語 .Pq Ic if , while , for , return , switch の後にスペースを入れます。 何も伴わないかただ 1 つの文を伴う制御文は、ブレースを使用しません。 1 つの文が 複数行である文の場合には、これは許されます。 無限ループは .Ic while ではなく .Ic for で行ないます。 .Bd -literal for (p = buf; *p != '\e0'; ++p) ; /* 何もなし */ for (;;) stmt; for (;;) { z = a + really + long + statement + that + needs + two lines + gets + indented + four + spaces + on + the + second + and + subsequent + lines; } for (;;) { if (cond) stmt; } if (val != NULL) val = realloc(val, newsize); .Ed .Pp .Ic for ループの各部は空のまま残しても構いません。 異常に複雑なルーチンでない限りは、ブロックの中に宣言を置いてはなりません。 .Bd -literal for (; cnt < 15; cnt++) { stmt1; stmt2; } .Ed .Pp インデントは 8 文字のタブです。 第 2 レベルのインデントは 4 文字のスペースです。 長い分を折り返す必要がある場合、オペレータを行末に置きます。 .Bd -literal while (cnt < 20 && this_variable_name_is_too_long_for_its_own_good && ep != NULL) z = a + really + long + statement + that + needs + two lines + gets + indented + four + spaces + on + the + second + and + subsequent + lines; .Ed .Pp 空白文字を行末に追加してはいけません。 また、インデントを形成するためには、タブとその後にスペースのみを使用します。 タブが生み出す以上のスペースや、タブの前のスペースは使用しません。 .Pp ブレースの終了と開始は .Ic else と同じ行に置かれます。 必要でないブレースは省いても構いません。 .Bd -literal if (test) stmt; else if (bar) { stmt; stmt; } else stmt; .Ed .Pp 関数名の後はスペースを空けません。 コンマの後にはスペースを持ちます。 .Ql \&( または .Ql \&[ の後ろまたは .Ql \&] または .Ql \&) の前にはスペースを空けません。 .Bd -literal error = function(a1, a2); if (error != 0) exit(error); .Ed .Pp 単項演算子はスペースを要求しませんが、二項演算子は要求します。 優先順位が要求する場合または文が括弧なしでは混乱する場合以外は、 括弧は使用しません。 他人はあなたよりも混乱しやすいかもしれないということを覚えておいてください。 あなたは以下を理解できますか? .Bd -literal a = b->c[0] + ~d == (e || f) || g && h ? i : j >> 1; k = !(l & FLAGS); .Ed .Pp 成功時には 0 で、または .Xr sysexits 3 にあらかじめ定義してある値で exit するべきです。 .Bd -literal exit(EX_OK); /* * "Exit 0 on success." (成功時は 0 で終了) * の様に明白なコメントは避けてください */ } .Ed .Pp 関数の型は、関数自身に先行する行にあるべきです。 .Bd -literal static char * function(int a1, int a2, float fl, int a4) { .Ed .Pp 関数の中で変数を宣言する時には、サイズ順に、次にアルファベット順に ソートして宣言します。 1 行に複数の宣言は可能です。 行が溢れる場合は、型の予約語を再度使用します。 .Pp 宣言時に変数を初期化することによってコードを 不明瞭にしない様に注意してください。 この機能は良く考えて使用してください。 初期化に関数呼び出しを使用しないでください。 .Bd -literal struct foo one, *two; double three; int *four, five; char *six, seven, eight, nine, ten, eleven, twelve; four = myfunction(); .Ed .Pp 他の関数の内部で関数を宣言しないでください。 ANSI C によると、このような宣言は、宣言のネスティングによらず、 ファイルスコープになります。 ローカルスコープに見えるものの中にファイルの宣言を隠すことは好ましくなく、 良いコンパイラは苦情を言います。 .Pp キャストと .Ic sizeof 演算子の後にはスペースを続けません。 この規則は .Xr indent 1 が理解しないことに注意してください。 .Pp .Dv NULL は、好まれるヌルポインタ定数です。 コンパイラが型を知っている文脈、例えば代入では、 .Vt ( "type *" ) Ns 0 または .Vt ( "type *" ) Ns Dv NULL の代わりに、 .Dv NULL を使用します。 他の文脈では、特に全ての関数の引数では、 .Vt ( "type *" ) Ns Dv NULL を使用します。 (関数のプロトタイプがスコープ外かもしれない場合に、 キャストはいろいろな引数にとって必須で、その他の引数にとっても必要です。) ポインタは .Dv NULL と比較します。例えば、 .Bd -literal !(p = f()) .Ed .Pp ではなく、このように使います。 .Bd -literal (p = f()) == NULL .Ed .Pp 真理値ではない場合、テストには .Ic \&! を使用しないでください。 例えば、下記のように使います。 .Bd -literal if (*p == '\e0') .Ed .Pp 下記のようには使いません。 .Bd -literal if (!*p) .Ed .Pp .Vt "void *" を返すルーチンでは、 戻り値をどのポインタ型にもキャストしてはなりません。 .Pp .Xr err 3 または .Xr warn 3 を使用し、勝手に作らないでください。 .Bd -literal if ((four = malloc(sizeof(struct foo))) == NULL) err(1, (char *)NULL); if ((six = (int *)overflow()) == NULL) errx(1, "number overflowed"); return (eight); } .Ed .Pp 古いスタイルの関数宣言はこのようになっています。 .Bd -literal static char * function(a1, a2, fl, a4) int a1, a2; /* int 型も宣言します、デフォルトにしないこと */ float fl; /* double と float の違いに気を付けてください */ int a4; /* 出てきた順に宣言します */ { .Ed .Pp あなたが明確に K&R との互換性を必要とする場合以外は、 ANSI の関数宣言を使用してください。 長いパラメータリストの折り返しには、 4 個の空白による通常のインデントを付けます。 .Pp 可変個数の引数はこのようにします。 .Bd -literal #include void vaf(const char *fmt, ...) { va_list ap; va_start(ap, fmt); STUFF; va_end(ap); /* void 型の関数に return は不要です */ } static void usage() { /* 関数がローカル変数を持たない場合、空行をいれます */ .Ed .Pp .Xr fputs 3 , .Xr puts 3 , .Xr putchar 3 等ではなく、 .Xr printf 3 を使用してください。 これは速くて大抵はきれいで、言うまでもなくつまらないバグを避けます。 .Pp 使用法 (usage) の文はマニュアルページの .Sx SYNOPSIS (書式) の様であるべきです。 使用法の文は、次の構造であるべきです: .Bl -enum .It オペランドの無いオプションが、最初にアルファベット順に、 1 組の大括弧 .Ql ( \&[ と .Ql \&] ) でくくられます。 .It オプションとそのオペランドがこれもアルファベット順に続き、 それぞれのオプションとその引数を 1 組の大括弧でくくります。 .It 必須の引数 (もしあれば) が続き、 コマンドラインで指定されるべき順で一覧されます。 .It 最後に、 すべての任意の引数が指定されるべき順で、 すべて大括弧の中に一覧されます。 .El .Pp 縦棒 .Pq Ql \&| は、 .Dq 二者択一 のオプションまたは引数を分割し、 同時に使用するオプションと引数は、単一の大括弧でくくります。 .Bd -literal -offset 4n "usage: f [-aDde] [-b b_arg] [-m m_arg] req1 req2 [opt1 [opt2]]\en" "usage: f [-a | -b] [-c [-dEe] [-n number]]\en" .Ed .Bd -literal (void)fprintf(stderr, "usage: f [-ab]\en"); exit(EX_USAGE); } .Ed .Pp マニュアルページのオプション記述は、 純粋なアルファベット順であるべきであることに注意してください。 つまり、オプションが引数を取るか否かに関わらないということです。 アルファベット順は、前述の大文字小文字の順序を考慮に入れるべきです。 .Pp 新しい中心的なカーネルのコードは、適度に .Nm ガイドに従うべきです。 サードパーティが保守するモジュールやデバイスドライバのためのガイドラインは より緩やかですが、最低限内部的には彼らの一貫したスタイルであるべきです。 .Pp ソースリポジトリの文体の変更 (空白文字の変更を含む) は困難で、 正当な理由なしには避けるべきです。 リポジトリの中のおおよそ KNF .Nm に適合しているコードは、この適合から離れてはなりません。 .Pp 可能な時にはいつでも、 コードはコードチェッカ (例えば、 .Xr lint 1 または .Nm gcc Fl Wall ) を 通過し、発生する警告は最小限となるべきです。 .Sh 関連項目 .Xr indent 1 , .Xr lint 1 , .Xr err 3 , .Xr sysexits 3 , .Xr warn 3 .Sh 歴史 このページは .Bx 4.4 Lite2 リリースの .Pa src/admin/style/style ファイルに大きく基づいていて、 現在の実装と .Fx プロジェクトの要望を反映して、頻繁に更新しています。