diff --git a/ja_JP.eucJP/man/man1/cdcontrol.1 b/ja_JP.eucJP/man/man1/cdcontrol.1 index d4f9353834..904d885053 100644 --- a/ja_JP.eucJP/man/man1/cdcontrol.1 +++ b/ja_JP.eucJP/man/man1/cdcontrol.1 @@ -1,196 +1,209 @@ -.\" %FreeBSD: src/usr.sbin/cdcontrol/cdcontrol.1,v 1.37 2002/11/27 15:31:07 ru Exp % +.\" %FreeBSD: src/usr.sbin/cdcontrol/cdcontrol.1,v 1.39 2003/11/17 14:02:04 eivind Exp % .\" .\" $FreeBSD$ .\" .Dd May 8, 2002 .Dt CDCONTROL 1 .Os .Sh 名称 .Nm cdcontrol .Nd コンパクトディスク制御ユーティリティ .Sh 書式 .Nm cdcontrol .Op Fl sv .Op Fl f Ar device .Op Ar command ... .Sh 解説 .Nm ユーティリティはオーディオ CD プレイヤーを操作するためのプログラムです。 device には .Pa cd0 や -.Pa mcd0 +.Pa acd0 などを指定します。 .Pp .Ar command を指定しない場合、 .Nm は対話モードになり、標準入力からコマンドを読み込みます。 .Pp 以下のオプションを使用可能です。 .Bl -tag -width indent .It Fl s サイレントモード。 テーブルヘッダ及び人間が可読なコメントを表示しません。 .It Fl v 冗長モード。 表示できる情報は全て表示します。 .It Fl f Ar device -.Pa /dev/cd0c +.Pa /dev/cd0 や -.Pa mcd0 +.Pa acd0 といったデバイスを指定します。 絶対パス及び .Pa /dev からの相対パスの指定が可能です。 -必要ならば最後に -.Pa c -を追加します。 +.Fl f +オプションは +.Ev CDROM +に優先します。 +.Ev CDROM +も +.Fl f +オプションも指定されない場合、 +.Nm +は最初に +.Pa /dev/cdrom +を、次に +.Pa /dev/cd0 +を、最後に +.Pa /dev/acd0 +をオープンしようとします。 .El .Pp 現時点では以下のコマンドが利用できます。 コマンドをユニークに特定できるために必要な文字だけ指定する 必要があります。 語 .Ic play は省略可能であり、 .Ic next と .Ic prev の代りに文字 .Ic + と .Ic - を使用可能です。 .Bl -tag -width indent .It Ic play Ar first_track Op Ar last_track .Ar first_track で指定されたトラックから .Ar last_track で指定されたトラックまで演奏します。最初のトラックが1番になります。 .It Xo .Ic play .Ar start_m : Ns Ar start_s . Ns Ar start_f .Op Ar end_m : Ns Ar end_s . Ns Ar end_f .Xc 絶対アドレス (MSF) を元に演奏します。演奏開始する時間は .Ar start_m に演奏開始する分を、 .Ar start_s に秒を、 .Ar start_f にはフレーム番号を指定します。演奏終了の時間は .Ar end_m に演奏終了する分を、 .Ar end_s, に秒を、 .Ar end_f にフレーム番号を指定することで指定できます。分指定で指定できる数値は 0 から 99 の範囲の値です。秒には 0 から 59 までが指定できます。フレーム 番号は 0 から 74 までの範囲で指定できます。 .It Ic play Op # Ns Ar start_block Op Ar length 論理ブロック .Ar start_block から .Ar length 論理ブロック分だけ演奏します。 .It Ic next Op Ar tracks 指定した数のトラックを、前向きにスキップします (デフォルト 1)。 .It Ic prev Op Ar tracks 指定した数のトラックを、後向きにスキップします (デフォルト 1)。 .It Ic pause 演奏を停止します。ディスクは停止しません。 .It Ic resume 演奏を再開します。 .Ic pause で一時停止した後に使います。 .It Ic stop ディスクを停止します。 .It Ic eject ディスクを取り出します。 .It Ic close ディスクを挿入します。 .It Ic volume Ar left_channel right_channel 左チャネルのボリュームを .Ar left_channel にセットし、右チャネルを .Ar right_channel にセットします。指定できる値は 0 から 255 の範囲の値です。 .It Ic volume Cm mute 音を消します。 .It Ic volume Cm mono モノラルモードにします。 .It Ic volume Cm stereo ステレオモードにします。 .It Ic volume Cm left 左サブトラックを左と右の両チャネルで演奏します。 .It Ic volume Cm right 右サブトラックを左と右の両チャネルで演奏します。 .It Ic info 目次を表示します。 .It Ic status Op Cm audio | media | volume ディスクに関する以下のような情報を表示します: .Pp .Bl -tag -width ".Cm volume" -compact .It Cm audio 現在の演奏の状態と位置、 .It Cm media 現在のメディアカタログ状態、 .It Cm volume 現在の左チャネル及び右チャネルのボリューム値。 .El .It Ic cdid CD のシリアル番号を、 .Tn CDDB プロジェクト .Pq Pa http://www.cddb.org/ が使用する方法を使用して、 表示します。 .It Ic help 利用可能なコマンドの一覧を表示します。 .It Ic debug Cm on CD デバイスドライバのデバッグモードを有効にします。 .It Ic debug Cm off ドライバのデバッグモードを無効にします。 .It Ic reset デバイスに対するハードウェアリセットを実行します。 .It Ic set Cm msf minute-second-frame ioctl モードに設定します (デフォルト)。 .It Ic set Cm lba LBA ioctl モードに設定します。 .It Ic speed Ar s ドライブが読み込みに使用可能な最高速度を指定します。 単倍速 CDROM (150KB/s) の倍数の単位となります。 ドライブの最高速度を指定するには .Dq Li max を使用します。 .It Ic quit プログラムを終了します。 .El .Sh 環境変数 次の環境変数が .Nm の実行に影響します: .Bl -tag -width ".Ev CD_DRIVE" .It Ev CDROM .Fl f オプションで指定しなかった場合に使用される CD デバイス。 .It Ev CDPLAY , CD_DRIVE , DISC , MUSIC_CD .Ev CDROM が選ばれたため、これらの変数の価値は低下しています。 .El .Sh 関連ファイル .Bl -tag -width ".Pa /dev/mcd0" -compact .It Pa /dev/cd0 .It Pa /dev/mcd0 .It Pa /dev/acd0 .El .Sh 作者 .An Jean-Marc Zucconi .An Andrey A. Chernov .An Serge V. Vakulenko .Sh 歴史 .Nm コマンドは .Fx 2.1 から登場しました。 diff --git a/ja_JP.eucJP/man/man1/netstat.1 b/ja_JP.eucJP/man/man1/netstat.1 index a821841491..06560d3038 100644 --- a/ja_JP.eucJP/man/man1/netstat.1 +++ b/ja_JP.eucJP/man/man1/netstat.1 @@ -1,417 +1,419 @@ .\" Copyright (c) 1983, 1990, 1992, 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. .\" .\" @(#)netstat.1 8.8 (Berkeley) 4/18/94 -.\" %FreeBSD: src/usr.bin/netstat/netstat.1,v 1.45 2003/08/07 18:21:21 hsu Exp % +.\" %FreeBSD: src/usr.bin/netstat/netstat.1,v 1.46 2003/11/28 17:34:23 bms Exp % .\" .\" $FreeBSD$ .\" WORD: symbolically シンボル表記 .\" .Dd September 7, 2001 .Dt NETSTAT 1 .Os .Sh 名称 .Nm netstat .Nd ネットワークの状態を表示する .Sh 解説 .Nm コマンドは、ネットワークに関連したさまざまなデータ構造の情報を、 シンボル表記を交えて表示します。 出力の形式は様々あり、指定したオプションによって変わります。 .Bl -tag -width indent .It Xo .Bk -words .Nm .Op Fl AaLnSW .Op Fl f Ar protocol_family | Fl p Ar protocol .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc 各ネットワークプロトコル、または 特定の .Ar protocol_family あるいは単一の .Ar protocol についてアクティブなソケット (プロトコル制御ブロック) の一覧を表示します。 .Fl A も指定された場合、ソケットに結び付けられた プロトコル制御ブロック (PCB) のアドレスを表示します。 デバッグ用に使用します。 .Fl a も指定された場合、すべてのソケットを表示します。 通常はサーバプロセスに使用されているソケットは表示しません。 .Fl L も指定された場合、 様々な listen 待ち行列の大きさを表示します。 1 番目の数は、受け付けられなかった接続数です。 2 番目の数は、受け付けられなかった不完全な接続数の合計です。 3 番目の数は、待ち行列に繋がれた接続の最大数です。 .Fl S も指定された場合、 .Fl ( n と同じように) ネットワークアドレスを数字で表示しますが、 ポートはシンボル表記で表示します。 .It Xo .Bk -words .Nm .Fl i | I Ar interface .Op Fl abdnt .Op Fl f Ar address_family .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc 自動設定されているすべてのネットワークインタフェースまたは単一の .Ar interface の状態を表示します (システムに静的に組み込まれていても ブート時に存在していないインタフェースは表示されません)。 インタフェース名の後の .Pq Dq Li * は、そのインタフェースが .Dq down していることを意味します。 .Fl a も指定された場合、各イーサネットインタフェース および各 IP インタフェースアドレス について、現在使用されているマルチキャストアドレスが表示 されます。マルチキャストアドレスは、 各々対応するインタフェースアドレスに続いて別個の行に表示 されます。 .Fl b も指定された場合、入出力したバイト数を表示します。 .Fl d も指定された場合、取りこぼしたパケット数を表示します。 .Fl t も指定された場合、watchdog タイマの内容を表示します。 +.Fl W +も指定された場合、フィールド幅を広くしてインタフェース名を表示します。 .It Xo .Bk -words .Nm .Fl w Ar wait .Op Fl I Ar interface .Op Fl d .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc すべての設定済みネットワークインタフェースまたは単一の .Ar interface 上のパケットトラフィックに関する情報を .Ar wait 秒間隔で表示します。 .Fl d も指定された場合、取りこぼしたパケット数も表示します。 .It Xo .Bk -words .Nm .Fl s Op Fl s .Op Fl z .Op Fl f Ar protocol_family | Fl p Ar protocol .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc 各ネットワークプロトコル、または特定の .Ar protocol_family あるいは単一の .Ar protocol に対して、システム全体の統計情報を表示します。 .Fl s が繰り返された場合、値が 0 のカウンタは省略されます。 .Fl z も指定された場合、統計情報を表示した後リセットします。 .It Xo .Bk -words .Nm .Fl i | I Ar interface Fl s .Op Fl f Ar protocol_family | Fl p Ar protocol .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc 各ネットワークプロトコル、または特定の .Ar protocol_family あるいは単一の .Ar protocol に対して、インタフェースごとの統計情報を表示します。 .It Xo .Bk -words .Nm .Fl m .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc メモリ管理ルーチン .Pq Xr mbuf 9 によって記録されている統計情報を表示します。 ネットワークは、独自にメモリバッファを確保しています。 .It Xo .Bk -words .Nm .Fl r .Op Fl AanW .Op Fl f Ar address_family .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc 全て、または指定した .Ar address_family に関するルーティングテーブルを表示します。 .Fl A も指定されていた場合、 内部 Patricia 木構造の内容を表示します。 デバッグ用に使用します。 .Fl a も指定されていた場合、 プロトコル複製されたルート (親ルートを .Dv RTF_PRCLONING することによって生成されたルート) を表示します。 通常これらのルートは表示されません。 .Fl W も指定されていた際には、 -各ルートの path MTU を表示します。 +各ルートの path MTU と、広いフィールド幅のインタフェース名を表示します。 .It Xo .Bk -words .Nm .Fl rs .Op Fl s .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc ルーティングの統計情報を表示します。 .Fl s が繰り返された場合、値が 0 のカウンタは省略されます。 .It Xo .Bk -words .Nm .Fl g .Op Fl W .Op Fl W .Op Fl f Ar address_family .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc マルチキャスト (グループアドレス) ルーティングに関連した情報を 表示します。デフォルトでは、IP マルチキャスト仮想インタフェースおよび ルーティングテーブルを表示します。 .It Xo .Bk -words .Nm .Fl gs .Op Fl s .Op Fl f Ar address_family .Op Fl M Ar core .Op Fl N Ar system .Ek .Xc マルチキャストルーティングの統計情報を表示します。 .Fl s が繰り返された場合、値が 0 のカウンタは省略されます。 .El .Pp いくつかのオプションは共通の意味で使えます。 .Bl -tag -width flag .It Fl f Ar address_family , Fl p Ar protocol 指定された .Ar address_family または単一の .Ar protocol に関するレコードのみを表示します。 以下のアドレスファミリまたはプロトコルが指定できます。 .Pp .Bl -tag -width ".Cm netgraph , ng Pq Dv AF_NETGRAPH" -compact .It Em ファミリ .Em プロトコル .It Cm inet Pq Dv AF_INET .Cm bdg , divert , icmp , igmp , ip , ipsec , pim, tcp , udp .It Cm inet6 Pq Dv AF_INET6 .Cm bdg , icmp6 , ip6 , ipsec6 , rip6 , tcp , udp .It Cm pfkey Pq Dv PF_KEY .Cm pfkey .It Cm atalk Pq Dv AF_APPLETALK .Cm ddp .It Cm netgraph , ng Pq Dv AF_NETGRAPH .Cm ctrl , data .It Cm ipx Pq Dv AF_IPX .Cm ipx , spx .\".It Cm ns Pq Dv AF_NS .\".Cm idp , ns_err , spp .\".It Cm iso Pq Dv AF_ISO .\".Cm clnp , cltp , esis , tp .It Cm unix Pq Dv AF_UNIX .It Cm link Pq Dv AF_LINK .El .Pp このプログラムは .Ar protocol が不明であったり対応する統計ルーチンが存在しなかったりした場合には 文句を言います。 .It Fl M デフォルトで使用される .Pa /dev/kmem の代わりに指定した core から、ネームリストに関連する各値を 取り出します。 .It Fl N システムが起動されたカーネルイメージ のかわりに、指定したシステムからネームリストを取り出します。 .It Fl n ネットワークアドレスを数字で表示します。通常、 .Nm コマンドは、ネットワークアドレスとポートを可能な限り解決して シンボル表記で表示しようとします。 .It Fl W ある表示において、欄が溢れる場合でも、アドレスを縮めません。 .El .Pp デフォルトのアクティブソケット表示では、ローカルおよびリモートアドレス、 送受信キューのサイズ(バイト単位)、プロトコル、そしてプロトコルの内部状態が それぞれ表示されます。 アドレス形式については、 .Dq host.port もしくは、ソケットのアドレスが ネットワーク単位でしか特定できない場合には .Dq network.port という形式が採用されます。 ホストもしくはネットワークアドレスがデータベース .Xr hosts 5 や .Xr networks 5 の内容にしたがって変換可能である場合、各アドレスはシンボル表記で 表示されます。このような変換が不可能な場合、もしくは .Fl n オプションが指定された場合には、アドレスはアドレスファミリに従って 数値で表示されます。 インターネット IPv4 の .Dq ドット形式 についてさらに知りたい場合には、 .Xr inet 3 を参照して下さい。 特にアドレスが指定されてない場合や、アドレスが .Dq ワイルドカード 指定されている場合には、その部分のアドレスやポート番号のところには .Dq Li * が表示されます。 .Pp インタフェース表示では、パケット転送、エラー、コリジョンに関する 累積統計情報を見ることができます。また、インタフェースの ネットワークアドレスおよび最大転送可能ユニットサイズ .Pq Dq mtu も見ることができます。 .Pp ルーティングテーブル表示では、利用可能なルートとその状態が表示 されます。各ルートは、到達先ホストもしくはネットワークと、 パケットの転送 (forward) に使用されるゲートウェイから成ります。 フラグフィールドは、 ルートに関する情報の集合が表示されます。フラグフィールドの 個別のフラグに関する内容は、 .Xr route 8 および .Xr route 4 でより詳細に論ざれています。 表示される文字とフラグの間の対応は以下の通りです。 .Bl -column ".Li W" ".Dv RTF_WASCLONED" .It Li 1 Ta Dv RTF_PROTO1 Ta "プロトコル特有のルーティングフラグ #1" .It Li 2 Ta Dv RTF_PROTO2 Ta "プロトコル特有のルーティングフラグ #2" .It Li 3 Ta Dv RTF_PROTO3 Ta "プロトコル特有のルーティングフラグ #3" .It Li B Ta Dv RTF_BLACKHOLE Ta "パケットを破棄 (更新中)" .It Li b Ta Dv RTF_BROADCAST Ta "ブロードキャストアドレスを表現するルート" .It Li C Ta Dv RTF_CLONING Ta "使用時にルートを新たに生成する" .It Li c Ta Dv RTF_PRCLONING Ta "使用時にプロトコル特有のルートを新たに生成する" .It Li D Ta Dv RTF_DYNAMIC Ta "(リダイレクトによって) 動的に生成される" .It Li G Ta Dv RTF_GATEWAY Ta "ゲートウェイ等による中継を必要としている到達先" .It Li H Ta Dv RTF_HOST Ta "ホストエントリ (これ以外はネットワーク)" .It Li L Ta Dv RTF_LLINFO Ta "リンクアドレスへ変換できるプロトコル" .It Li M Ta Dv RTF_MODIFIED Ta "(リダイレクトによって) 動的に変更される" .It Li R Ta Dv RTF_REJECT Ta "到達不可能なホストもしくはネットワーク" .It Li S Ta Dv RTF_STATIC Ta "手動で追加された" .It Li U Ta Dv RTF_UP Ta "使用可能ルート" .It Li W Ta Dv RTF_WASCLONED Ta "クローンした結果として作成されたルート" .It Li X Ta Dv RTF_XRESOLVE Ta "外部の daemon がプロトコルからリンクアドレス変換を行なう" .El .Pp 直接到達可能なルートは、ローカルホストにアタッチされた各インタフェースごとに 生成されます。このようなエントリのゲートウェイフィールドは、 対外インタフェースのアドレスを表します。 refcnt フィールドは、使用されているルートの現在数を示します。 コネクション指向のプロトコルは、通常、コネクションの間中 単一のルートを保持します。 他方で、コネクションレス型のプロトコルは、同じ到達先に対して パケットを送る場合にも、新たにルートを確保します。 use フィールドは、そのルートを通って送られたパケット数を表示します。 インタフェースエントリは、そのルート用に用いられる ネットワークインタフェースを表示します。 .Pp .Nm が .Fl w オプションと .Ar wait インターバル引数を与えられて起動された場合、ネットワークインタフェースに 関連した統計情報を定期的に表示します。 ほとんど使われませんが、オプション指定なしで数字だけを netstat の引数と して指定することもでき、本オプションと同様の動作をさせることができます。 しかし、この使い方は以前との互換性のためにのみ存在します。 デフォルトでは、本表示は すべてのインタフェースについてのサマリ情報からなります。 .Fl I オプションを用いることで、特定の インタフェースの情報を表示させることが可能です。 .Sh 関連項目 .Xr fstat 1 , .Xr nfsstat 1 , .Xr ps 1 , .Xr sockstat 1 , .Xr inet 4 , .Xr route 4 , .Xr unix 4 , .Xr hosts 5 , .Xr networks 5 , .Xr protocols 5 , .Xr services 5 , .Xr iostat 8 , .Xr route 8 , .Xr trpt 8 , .Xr vmstat 8 , .Xr mbuf 9 .Sh 歴史 .Nm コマンドは、 .Bx 4.2 にはじめて登場しました。 .Pp IPv6 サポートは WIDE/KAME プロジェクトが追加しました。 .Sh バグ エラーの概念については、定義が間違っています。 diff --git a/ja_JP.eucJP/man/man2/getfsstat.2 b/ja_JP.eucJP/man/man2/getfsstat.2 index 9ed01bbd26..3165e1fbd5 100644 --- a/ja_JP.eucJP/man/man2/getfsstat.2 +++ b/ja_JP.eucJP/man/man2/getfsstat.2 @@ -1,179 +1,151 @@ .\" Copyright (c) 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. .\" .\" @(#)getfsstat.2 8.3 (Berkeley) 5/25/95 -.\" %FreeBSD: src/lib/libc/sys/getfsstat.2,v 1.15 2003/06/08 10:01:52 charnier Exp % +.\" %FreeBSD: src/lib/libc/sys/getfsstat.2,v 1.16 2003/11/21 01:30:28 tjr Exp % .\" .\" $FreeBSD$ -.Dd May 25, 1995 +.Dd November 20, 2003 .Dt GETFSSTAT 2 .Os .Sh 名称 .Nm getfsstat .Nd マウントされたすべてのファイルシステムのリストを得る .Sh ライブラリ .Lb libc .Sh 書式 .In sys/param.h .In sys/ucred.h .In sys/mount.h .Ft int .Fn getfsstat "struct statfs *buf" "long bufsize" "int flags" .Sh 解説 .Fn getfsstat システムコールは、マウントされたすべてのファイルシステムに関する情報を 返します。 .Fa buf 引数は -次のように定義される +.Xr statfs 2 +に記述された .Vt statfs 構造体へのポインタです。 -.Bd -literal -typedef struct fsid { int32_t val[2]; } fsid_t; /* ファイルシステム ID タイプ */ - -/* - * ファイルシステム統計 - */ - -#define MFSNAMELEN 16 /* ファイルシステムのタイプ名長、ヌルを含む */ -#define MNAMELEN 90 /* 返された名前についてのバッファの長さ */ - -struct statfs { - long f_spare2; /* プレースホルダ */ - long f_bsize; /* 基本的なファイルシステムのブロックサイズ */ - long f_iosize; /* 最適な転送ブロックサイズ */ - long f_blocks; /* ファイルシステム内の合計データブロック */ - long f_bfree; /* ファイルシステム内の未使用のブロック */ - long f_bavail; /* スーパユーザ以外のユーザが利用できる未使用のブロック */ - long f_files; /* ファイルシステム内の合計ファイルノード */ - long f_ffree; /* ファイルシステム内の未使用のファイルノード */ - fsid_t f_fsid; /* ファイルシステム ID */ - uid_t f_owner; /* ファイルシステムをマウントしたユーザ */ - int f_type; /* ファイルシステムのタイプ (下記を参照) */ - int f_flags; /* マウントフラグのコピー */ - long f_spare[2]; /* 後のための余白 */ - char f_fstypename[MFSNAMELEN];/* ファイルシステムのタイプ名 */ - char f_mntonname[MNAMELEN];/* マウントされたディレクトリ */ - char f_mntfromname[MNAMELEN];/* マウントされたファイルシステム */ -}; -.Ed .Pp 返される可能性のあるフラグには次のものが含まれます。 .Bl -tag -width MNT_ASYNCHRONOUS .It Dv MNT_RDONLY ファイルシステムは読取り専用としてマウントされています。 スーパユーザも書き込むことはできません。 .It Dv MNT_NOEXEC そのファイルシステム上のファイルを実行することはできません。 .It Dv MNT_NOSUID 実行されるときに、ファイルの setuid ビットと setgid ビットが 効果を持ちません。 .It Dv MNT_NODEV ファイルシステム内の特殊ファイルは開けません。 .It Dv MNT_SYNCHRONOUS ファイルシステムへのすべての入出力が同期的に実行されます。 .It Dv MNT_ASYNCHRONOUS ファイルシステム入出力が同期的に実行されません。 .It Dv MNT_LOCAL ローカルにあるファイルシステムです。 .It Dv MNT_QUOTA ファイルシステム上でクオータが有効になっています。 .It Dv MNT_ROOTFS ルートファイルシステムであることを示します。 .It Dv MNT_EXRDONLY ファイルシステムは読取り専用でエクスポートされています。 .It Dv MNT_EXPORTED ファイルシステムは読取りと書込みの両方についてエクスポートされています。 .It Dv MNT_DEFEXPORTED ファイルシステムはどのインターネットホストへも読取りと書込みの両方について エクスポートされています。 .It Dv MNT_EXPORTANON ファイルシステムはすべてのリモートアクセスを匿名ユーザへマップします。 .It Dv MNT_EXKERB ファイルシステムは Kerberos uid マッピングでエクスポートされています。 .El .Pp 特定のファイルシステムについて未定義となるフィールドは -1 に設定されます。 バッファは .Fa fsstat 構造体の配列で埋められます。 マウントされた各ファイルシステムについて 1 つずつ、最高 .Fa bufsize で指定されたサイズまでです。 .Pp .Fa buf として NULL が指定されている場合、 .Fn getfsstat はマウントされているファイルシステムの数のみを返します。 .Pp 通常、 .Fa flags には .Dv MNT_WAIT を指定するべきです。 .Fa flags として .Dv MNT_NOWAIT が指定されている場合、 .Fn getfsstat は各ファイルシステムからの更新を要求せずに利用できる情報を返します。 そのため、情報のうちには古くなっているものがあるでしょうが、 .Fn getfsstat は応答できないファイルシステムからの情報を 待機してブロックすることはありません。 .Sh 戻り値 正常に完了すると .Fa fsstat 構造体の数が返されます。 そうでない場合は -1 が返され、エラーを示すためにグローバル変数 .Va errno が設定されます。 .Sh エラー .Fn getfsstat システムコールは以下の 1 つでも真の場合、処理に失敗します: .Bl -tag -width Er .It Bq Er EFAULT .Fa buf 引数が無効なアドレスを指しています。 .It Bq Er EIO ファイルシステムを読み書きしている間に .Tn I/O (入出力) エラーが発生しました。 .El .Sh 関連項目 .Xr statfs 2 , .Xr fstab 5 , .Xr mount 8 .Sh 歴史 .Fn getfsstat システムコールは .Bx 4.4 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man2/setgroups.2 b/ja_JP.eucJP/man/man2/setgroups.2 index 782ece45c4..b162a5c4fc 100644 --- a/ja_JP.eucJP/man/man2/setgroups.2 +++ b/ja_JP.eucJP/man/man2/setgroups.2 @@ -1,82 +1,87 @@ .\" Copyright (c) 1983, 1991, 1993, 1994 .\" 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. .\" .\" @(#)setgroups.2 8.2 (Berkeley) 4/16/94 -.\" %FreeBSD: src/lib/libc/sys/setgroups.2,v 1.12 2003/09/10 19:24:33 ru Exp % +.\" %FreeBSD: src/lib/libc/sys/setgroups.2,v 1.13 2003/11/19 13:05:50 dds Exp % .\" .\" $FreeBSD$ .Dd April 16, 1994 .Dt SETGROUPS 2 .Os .Sh 名称 .Nm setgroups .Nd グループアクセスリストを設定する .Sh ライブラリ .Lb libc .Sh 書式 .In sys/param.h .In unistd.h .Ft int .Fn setgroups "int ngroups" "const gid_t *gidset" .Sh 解説 .Fn setgroups システムコールは、配列 .Fa gidset に従って、現在のユーザプロセスのグループアクセスリストを設定します。 .Fa ngroups 引数は、配列内のエントリの数を示し、 .In sys/param.h 内に定義されている値 .Dv NGROUPS を超えてはいけません。 .Pp スーパユーザだけが新しいグループを設定できます。 .Sh 戻り値 .Rv -std setgroups .Sh エラー .Fn setgroups システムコールは次の場合に処理に失敗します: .Bl -tag -width Er .It Bq Er EPERM スーパユーザ以外のユーザによって呼び出されました。 +.It Bq Er EINVAL +.Fa ngroups +引数で指定された数値が +.Dv NGROUPS +の制限を越えています。 .It Bq Er EFAULT .Fa gidset に指定されたアドレスは、 プロセスに割り当てられたアドレス空間の範囲外を指しています。 .El .Sh 関連項目 .Xr getgroups 2 , .Xr initgroups 3 .Sh 歴史 .Fn setgroups システムコールは .Bx 4.2 で登場しました。 diff --git a/ja_JP.eucJP/man/man2/statfs.2 b/ja_JP.eucJP/man/man2/statfs.2 index c41e76be03..f198cb3b6e 100644 --- a/ja_JP.eucJP/man/man2/statfs.2 +++ b/ja_JP.eucJP/man/man2/statfs.2 @@ -1,181 +1,217 @@ .\" Copyright (c) 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. .\" .\" @(#)statfs.2 8.5 (Berkeley) 5/24/95 -.\" %FreeBSD: src/lib/libc/sys/statfs.2,v 1.21 2002/12/19 09:40:25 ru Exp % +.\" %FreeBSD: src/lib/libc/sys/statfs.2,v 1.22 2003/11/16 04:08:16 tjr Exp % .\" .\" $FreeBSD$ -.Dd May 24, 1995 +.Dd November 16, 2003 .Dt STATFS 2 .Os .Sh 名称 .Nm statfs .Nd ファイルシステムの統計を入手 .Sh ライブラリ .Lb libc .Sh 書式 .In sys/param.h .In sys/mount.h .Ft int .Fn statfs "const char *path" "struct statfs *buf" .Ft int .Fn fstatfs "int fd" "struct statfs *buf" .Sh 解説 .Fn statfs システムコールは、マウントされているファイルシステムの情報を戻します。 .Fa path 引数は、マウントされているファイルシステム内の任意のファイルのパス名です。 .Fa buf 引数は、以下のように定義されている .Vt statfs の構造体のポインタです: .Bd -literal typedef struct fsid { int32_t val[2]; } fsid_t; /* ファイルシステム ID 型 */ /* * ファイルシステム統計 */ -#define MFSNAMELEN 16 /* ヌルを含むファイルシステム名の長さ */ -#define MNAMELEN 90 /* 戻り値の用のバッファの長さ */ +#define MFSNAMELEN 16 /* ヌルを含むファイルシステム名の長さ */ +#define MNAMELEN 90 /* 戻り値の用のバッファの長さ */ +#define STATFS_VERSION 0x20030518 /* 現在のバージョン番号 */ struct statfs { -long f_bsize; /* ファイルシステムのブロックサイズ */ -long f_iosize; /* 最適な転送ブロックサイズ */ -long f_blocks; /* ファイルシステム上の合計ブロックサイズ */ -long f_bfree; /* ファイルシステム上の利用可能なブロック */ -long f_bavail; /* スーパユーザ以外が利用可能なブロック */ -long f_files; /* ファイルシステム上の合計ノード数 */ -long f_ffree; /* ファイルシステム上の利用可能なノード数 */ -fsid_t f_fsid; /* ファイルシステム ID 番号 */ -uid_t f_owner; /* ファイルシステムをマウントしたユーザ */ -int f_type; /* ファイルシステムのタイプ */ -int f_flags; /* マウントフラグのコピー */ -long f_syncwrites; /* マウントしてからの同期書込み数 */ -long f_asyncwrites; /* マウントしてからの非同期書込み数 */ -char f_fstypename[MFSNAMELEN];/* ファイルシステムタイプ名 */ -char f_mntonname[MNAMELEN]; /* マウントポイント */ -long f_syncreads; /* マウント以降の同期読取り数 */ -long f_asyncreads; /* マウント以降の非同期読取り数 */ -char f_mntfromname[MNAMELEN]; /* マウントされたファイルシステム */ +uint32_t f_version; /* 構造体のバージョン番号 */ +uint32_t f_type; /* ファイルシステムのタイプ */ +uint64_t f_flags; /* マウントフラグのコピー */ +uint64_t f_bsize; /* ファイルシステムの断片サイズ */ +uint64_t f_iosize; /* 最適な転送ブロックサイズ */ +uint64_t f_blocks; /* ファイルシステム上の合計データブロックサイズ */ +uint64_t f_bfree; /* ファイルシステム上の利用可能なブロック */ +int64_t f_bavail; /* スーパユーザ以外が利用可能なブロック */ +uint64_t f_files; /* ファイルシステム上の合計ノード数 */ +int64_t f_ffree; /* スーパユーザ以外が利用可能なノード数 */ +uint64_t f_syncwrites; /* マウントしてからの同期書込み数 */ +uint64_t f_asyncwrites; /* マウントしてからの非同期書込み数 */ +uint64_t f_syncreads; /* マウントしてからの同期読取り数 */ +uint64_t f_asyncreads; /* マウントしてからの非同期読取り数 */ +uint64_t f_spare[10]; /* 未使用領域 */ +uint32_t f_namemax; /* ファイル名の長さの最大 */ +uid_t f_owner; /* ファイルシステムをマウントしたユーザ */ +fsid_t f_fsid; /* ファイルシステム ID */ +char f_charspare[80]; /* 後のための余白 */ +char f_fstypename[MFSNAMELEN]; /* ファイルシステムのタイプ名 */ +char f_mntfromname[MNAMELEN]; /* マウントされたファイルシステム */ +char f_mntonname[MNAMELEN]; /* このディレクトリにマウント */ }; .Ed +.Pp 戻される可能性があるフラグは以下のとおりです: .Bl -tag -width MNT_SYNCHRONOUS .It Dv MNT_RDONLY ファイルシステムが読取り専用でマウントされています。 スーパユーザでも書込めません。 .It Dv MNT_NOEXEC そのファイルシステムからファイルを実行できません。 .It Dv MNT_NOSUID ファイルの setuid ビットと setgid ビットが、 ファイルの実行時に受け入れられません。 .It Dv MNT_NODEV ファイルシステムの特殊ファイルを開けません。 .It Dv MNT_SYNCHRONOUS ファイルシステムへのすべての入出力が、同期を取って実行されます。 .It Dv MNT_ASYNC ファイルシステムの入出力が、同期を取って実行されません。 +.It Dv MNT_SOFTDEP +ソフトアップデートが動作します +.Xr ( ffs 7 +を参照してください)。 +.It Dv MNT_SUIDDIR +ディレクトリの SUID ビットを特別に取り扱います。 +.It Dv MNT_UNION +下層のファイルシステムとのユニオン。 +.It Dv MNT_NOSYMFOLLOW +シンボリックリンクを辿りません。 +.It Dv MNT_NOCLUSTERR +読み取りクラスタリングが無効になっています。 +.It Dv MNT_NOCLUSTERW +書き込みクラスタリングが無効になっています。 +.\".It Dv MNT_JAILDEVFS +.\"XXX +.It Dv MNT_MULTILABEL +各オブジェクトに対する Mandatory Access Control (MAC) サポート +.Xr ( mac 4 +を参照してください)。 +.It Dv MNT_ACLS +Access Control List (ACL) サポートが有効になっています。 .It Dv MNT_LOCAL ファイルシステムがローカルに常駐しています。 .It Dv MNT_QUOTA ファイルシステムでクォータが有効になっています。 .It Dv MNT_ROOTFS ルートファイルシステムを確認します。 .It Dv MNT_EXRDONLY ファイルシステムが、読取り専用でエクスポートされます。 +.It Dv MNT_NOATIME +ファイルアクセス時刻の更新が無効になっています。 +.It Dv MNT_USER +ファイルシステムがユーザによってマウントされています。 +.\".It Dv MNT_IGNORE +.\"XXX .It Dv MNT_EXPORTED ファイルシステムが、読み書きの両方でエクスポートされます。 .It Dv MNT_DEFEXPORTED ファイルシステムが、読み書きの両方で 任意のインターネットホストにエクスポートされます。 .It Dv MNT_EXPORTANON ファイルシステムが、すべてのリモートアクセスを匿名ユーザにマップします。 .It Dv MNT_EXKERB ファイルシステムが、Kerberos uid マッピングでエクスポートされます。 +.It Dv MNT_EXPUBLIC +ファイルシステムが、一般公開されています (WebNFS)。 .El .Pp 特定のファイルシステムで定義されていないフィールドは、-1 に設定されます。 .Fn fstatfs システムコールは、記述子 .Fa fd で参照されるオープンファイルに対して同じ情報を戻します。 .Sh 戻り値 .Rv -std .Sh エラー .Fn statfs システムコールは、以下のうちの 1 つ以上が真である場合にエラーとなります: .Bl -tag -width Er .It Bq Er ENOTDIR .Fa path のパスの構成要素中にディレクトリ以外のものが含まれています。 .It Bq Er ENAMETOOLONG .Fa path の構成要素が 255 文字を越えているか、または .Fa path 全体が 1023 文字を越えています。 .It Bq Er ENOENT .Fa path の参照するファイルが存在しません。 .It Bq Er EACCES .Fa path には、検索が許可されていないディレクトリが含まれています。 .It Bq Er ELOOP .Fa path を変換するときに検出されたシンボリックリンクが多すぎます。 .It Bq Er EFAULT .Fa buf 引数または .Fa path 引数が、不正なアドレスを指しています。 .It Bq Er EIO ファイルシステムに読み書きしている間に入出力エラーが発生しました。 .El .Pp .Fn fstatfs システムコールは、以下のうち 1 つ以上が真である場合にエラーとなります: .Bl -tag -width Er .It Bq Er EBADF .Fa fd 引数が有効オープンファイル記述子ではありません。 .It Bq Er EFAULT .Fa buf 引数が不正なアドレスを指しています。 .It Bq Er EIO ファイルシステムに読み書きしている間に .Tn I/O (入出力) エラーが発生しました。 .El .Sh 歴史 .Fn statfs システムコールは、 .Bx 4.4 ではじめて登場しました。 diff --git a/ja_JP.eucJP/man/man5/make.conf.5 b/ja_JP.eucJP/man/man5/make.conf.5 index c8511b2b2b..73c3064d3d 100644 --- a/ja_JP.eucJP/man/man5/make.conf.5 +++ b/ja_JP.eucJP/man/man5/make.conf.5 @@ -1,753 +1,759 @@ .\" 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.80 2003/09/24 04:19:26 gshapiro Exp % +.\" %FreeBSD: src/share/man/man5/make.conf.5,v 1.81 2003/11/16 22:15:09 simon 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 ALWAYS_CHECK_MAKE .Pq Vt bool ソースツリー (通常は .Pa /usr/src ) のトップレベル makefile に対し、 .Xr make 1 が最新であるか常に確認するよう指示します。 通常これは、古いバージョンの .Fx からのアップグレードを扱えるようにするために、 world および buildworld ターゲットに対してのみ実行されます。 .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 CFLAGS+=${BDECFLAGS} .Ed .It Va CPUTYPE .Pq Vt str 生成コードが対象とするプロセッサを制御します。 特別なコード (現在のところ OpenSSL のみ) に対する プロセッサ固有の最適化を制御し、 .Va CFLAGS および .Va COPTFLAGS の値を変更して .Xr gcc 1 への適切な最適化ディレクティブを含むようにします。 .Va CFLAGS および .Va COPTFLAGS の自動設定は、それぞれ .Va NO_CPU_CFLAGS および .Va NO_CPU_COPTFLAGS で上書きできます。 認識される .Va CPUTYPE オプションについては、 .Pa /usr/share/examples/etc/make.conf を参照してください。 .It Va NO_CPU_CFLAGS .Pq Vt str この変数を設定すると、コンパイル時に自動的に CPU 固有コンパイラフラグが .Va CFLAGS へ追加されることを妨げます。 .It Va NO_CPU_COPTFLAGS .Pq Vt str この変数を設定すると、コンパイル時に自動的に CPU 固有コンパイラフラグが .Va COPTFLAGS へ追加されることを妨げます。 .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 .Pa ( /usr/share/mk にあるものを含めて) makefile によっては、 与えられたインストールコマンドに対して 固定のオプションを与えてしまうものがあることに注意してください。 .It Va LOCAL_DIRS .Pq Vt str この変数には .Pa /usr/src で make を行うときに入るべきディレクトリをすべてリストします。 .It Va MAKE_SHELL .Pq Vt str .Xr make 1 が makefile 中のコマンドスクリプトを処理するために 内部的に使用するシェルを制御します。 .Xr sh 1 , .Xr ksh 1 , .Xr csh 1 すべてがサポートされています。 .Pp .Dl "MAKE_SHELL?=sh" .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 です。 .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 LOADER_TFTP_SUPPORT .Pq Vt bool buildkernel が影響するオプションではありませんが、他に良い場所がありません。 デフォルトでは .Xr pxeboot 8 ローダがカーネルを NFS 経由で取得します。 これを定義して .Pa /usr/src/sys/boot を再コンパイルすると、カーネルを TFTP 経由で取得するようになります。 これにより、 .Xr pxeboot 8 がカスタム BOOTP ディスクレスカーネルをロードし、サーバの .Pa / をマウントしますが、サーバのカーネルはロードしません。 .It Va MODULES_OVERRIDE .Pq Vt str モジュールすべてではなく一部をビルドしたい場合、 モジュールリストをここに設定します。 .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 FETCH_CMD .Pq Vt str ファイルの取得に用いるコマンドです。 通常は .Xr fetch 1 です。 .It Va KRB5_HOME .Pq Vt str MIT Kerberos5 を .Pa /usr/local 以外にインストールしたい場合、これを定義します。 ssh1 に対しても Kerberos 要であることを伝えます。 .It Va MAKE_IDEA .Pq Vt bool IDEA 暗号化コードをビルドする場合に設定します。 このコードは米国やヨーロッパの多くの国々で特許が取得されています。 合法的に IDEA を使えるかどうか決めるのは .Em あなたの責任 です。 +.It Va NO_DYNAMICROOT +.Pq Vt bool +.Pa /bin +と +.Pa /sbin +を動的にリンクしたくない場合に設定します。 .It Va NO_KERBEROS .Pq Vt bool Kerberos 5 (KTH Heimdal) をビルドしたくない場合に設定します。 .It Va ENABLE_SUID_K5SU .Pq Vt bool ksu ユーティリティを使用したい場合に設定します。 設定しないと、本ユーティリティはユーザ ID 設定ビットが 設定されずにインストールされます。 .It Va ENABLE_SUID_NEWGRP .Pq Vt bool ユーザ ID 設定ビットを設定して .Xr newgrp 1 をインストールする場合に、これを設定します。 設定しないと、 .Xr newgrp 1 はユーザのグループを変更できません。 .It Va ENABLE_SUID_SSH .Pq Vt bool .Xr ssh 1 をセットユーザ ID ビットをオンにしてインストールする場合に、これを設定します。 .It Va MODULES_WITH_WORLD .Pq Vt bool カーネルと同時にではなく、 システムと同時にモジュールをビルドする場合に設定します。 .It Va NO_CVS .Pq Vt bool CVS をビルドしない場合に設定します。 .It Va NO_CXX .Pq Vt bool .Xr g++ 1 および関連ライブラリをビルドしない場合に設定します。 .It Va NO_BIND .Pq Vt bool BIND をビルドしない場合に設定します。 .It Va NO_FORTRAN .Pq Vt bool .Xr g77 1 と関連ライブラリをビルドしない場合に設定します。 .It Va NO_GDB .Pq Vt bool .Xr gdb 1 をビルドしない場合に設定します。 .It Va NO_I4B .Pq Vt bool isdn4bsd パッケージをビルドしない場合に設定します。 .It Va NO_IPFILTER .Pq Vt bool IP Filter パッケージをビルドしない場合に設定します。 .It Va NO_TOOLCHAIN .Pq Vt bool プログラム開発に使用するプログラム、 すなわちコンパイラやデバッガ等をビルドしない場合に設定します。 .It Va NOINET6 .Pq Vt bool IPv6 ネットワークに関連するプログラムやライブラリを ビルドしない場合に設定します。 .It Va NOATM .Pq Vt bool ATM ネットワークに関連するプログラムやライブラリを ビルドしない場合に設定します。 .It Va NO_USB .Pq Vt bool .Xr usbd 8 および関連プログラムをビルドしない場合に設定します。 .It Va NO_LPR .Pq Vt bool .Xr lpr 1 と関連プログラムをビルドしない場合に設定します。 .It Va NO_ACPI .Pq Vt bool .Xr acpiconf 8 , .Xr acpidump 8 および関連プログラムをビルドしない場合に設定します。 .It Va NO_VINUM .Pq Vt bool .Xr vinum 8 と関連プログラムをビルドしない場合に設定します。 .It Va NO_MAILWRAPPER .Pq Vt bool MTA セレクタである .Xr mailwrapper 8 をビルドしない場合に設定します。 .It Va NOMAN マニュアルページをビルドしない場合に設定します。 .Pq Vt bool .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_KERBEROS と .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 NOLIBPTHREAD .Pq Vt bool .Nm libpthread (M:N スレッド) ライブラリをビルドしない場合に設定します。 .It Va NOLIBTHR .Pq Vt bool .Nm libthr (1:1 スレッド) ライブラリをビルドしない場合に設定します。 .It Va NOMANCOMPRESS .Pq Vt bool man ページのインストールの際に圧縮を行わない場合に設定します。 .It Va NOPROFILE .Pq Vt bool profile 版ライブラリをコンパイルしない場合に設定します。 .It Va NOSHARE .Pq Vt bool .Pa share サブディレクトリをビルドしない場合に設定します。 .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 です。 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_CF_DIR .Pq Vt str .Pa .mc ファイルから .Pa .cf ファイルをビルドするために使用する m4 設定ファイルのデフォルトの場所を オーバライドします。 .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 に書かれている代りの方法を採用すべきです。 .It Va SENDMAIL_MAP_PERMS .Pq Vt str このモードのエイリアスおよびマップのデータベースファイルが、 .Pa /etc/mail/Makefile を使用して作成されます。 デフォルト値は 0640 です。 .It Va TOP_TABLE_SIZE .Pq Vt int .Xr top 1 は、ユーザ名用にハッシュ表を使用します。 ハッシュの大きさはローカルユーザ数に合うように調整可能です。 テーブルの大きさは、 .Pa /etc/passwd の行数の約 2 倍の素数であるべきです。 デフォルト数は 20011 です。 .It Va WANT_EXT2FS_MODULE .Pq Vt bool モジュールビルド時に Linux ext2fs カーネルモジュールを 常にビルドしたい場合に設定します。 .It Va WANT_FORCE_OPTIMIZATION_DOWNGRADE .Pq Vt int 高い最適化レベルを強制的に低くするように、システムのコンパイラをビルドします。 .Xr gcc 1 .Fl O2 以上の高い最適化レベルは、しばしば既知の最適化バグを引き起こすことが 知られています \(em Alpha プラットフォームでは、さらにひどいです。 ここで割り当てられた値が、最も高い最適化レベルの値として使用されます。 .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 .Sh 関連ファイル .Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact .It Pa /etc/make.conf .It Pa /usr/doc/Makefile .It Pa /usr/share/examples/etc/make.conf .It Pa /usr/src/Makefile .It Pa /usr/src/Makefile.inc1 .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 /usr/share/examples/etc/make.conf ファイルを調べてください。 diff --git a/ja_JP.eucJP/man/man7/build.7 b/ja_JP.eucJP/man/man7/build.7 index 082bd5c6c8..d520af5789 100644 --- a/ja_JP.eucJP/man/man7/build.7 +++ b/ja_JP.eucJP/man/man7/build.7 @@ -1,206 +1,206 @@ .\" 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/man7/build.7,v 1.23 2003/11/14 16:55:00 imp Exp % +.\" %FreeBSD: src/share/man/man7/build.7,v 1.24 2003/11/16 15:16:19 simon Exp % .\" .\" $FreeBSD$ .Dd March 15, 2002 .Dt BUILD 7 .Os .Sh 名称 .Nm build .Nd システムの構築方法についての情報 .Sh 解説 .Fx システムおよびアプリケーションのソースコードは、異なる 3 つの ディレクトリに格納されています。通常は、 .Pa /usr/src , .Pa /usr/doc , .Pa /usr/ports です。 .Pa /usr/src には .Dq "ベースシステム" のソースが含まれています。ベースシステムとは、システムを使える 状態に構築し直すのに必要なものとして大雑把に定義されています。 .Pa /usr/doc にはシステムドキュメントのソースが含まれています。ただし、マニュアル ページは除きます。 .Pa /usr/ports は、サードパーティのアプリケーションを構築し、インストールするための 一貫したインタフェースを提供しているツリーです。 .Pp これら 3 つのディレクトリそれぞれに格納されているものを構築し インストールするには、 .Xr make 1 コマンドを使用します。これら 3 つのディレクトリ、もしくは サブディレクトリ内のどこででも .Xr make 1 コマンドを実行すれば、 そのディレクトリ配下のサブディレクトリ内すべてで同一のコマンドを 発行したのと同じ効果があります。 ターゲットを指定しなければ、make コマンドを実行した ディレクトリ内にあるものを単純に構築します。 次のリストはその他のターゲットの名称およびアクションを示した ものです: .Bl -tag -width indent-two .It Cm clean 構築プロセス中で生成されたファイルをすべて消去します。 .It Cm install このディレクトリに対する構築結果をインストールします。 .It Cm update 更新されたソースを .Pa /etc/make.conf で設定されている通りに取得します。 .El .Pp その他の .Pa /usr/src での make ターゲットは次のものがあります: .Bl -tag -width indent-two .It Cm buildworld カーネル以外のすべてのものを再構築し、 .Pa /etc ディレクトリ内のファイルを設定してリリースします。 .It Cm installworld .Cm buildworld で構築したものすべてをインストールします。 .It Cm world .Cm buildworld と .Cm installworld を足したものです。 .It Cm buildkernel カーネルとカーネルモジュールを再構築します。 .It Cm installkernel カーネルとカーネルモジュールをインストールします。 .It Cm reinstallkernel カーネルとカーネルモジュールを再インストールします。 .El .Pp ports の構築プロセスに関する情報については、 .Xr ports 7 を参照してください。 .Sh 環境変数 .Bl -tag -width ".Va TARGET_ARCH" .It Va TARGET_ARCH ターゲットとなるマシンプロセッサアーキテクチャ。 この環境変数は .Dq Nm uname Fl p の出力と同じものです。 異なるアーキテクチャ用にクロスビルドするにはこの 環境変数を設定してください。 .It Va TARGET ターゲットとなるハードウェアプラットフォーム。 この環境変数は .Dq Nm uname Fl m の出力と同じものです。 ターゲットアーキテクチャをクロスビルドするのに必要な 変数です。 例えば、PC98 マシン用にクロスビルドを行うには .Va TARGET_ARCH Ns = Ns Li i386 と .Va TARGET Ns = Ns Li pc98 が必要です。 .It Va NO_WERROR 定義されている場合、警告が出ても構築が停止することはありません。 makefile が別のことを言ってきても停止しません。 .It Va DESTDIR 生成したバイナリをインストールするディレクトリ階層を指します。 .El .Sh 関連ファイル .Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact .It Pa /etc/make.conf .It Pa /usr/doc/Makefile .It Pa /usr/doc/share/mk/doc.project.mk .It Pa /usr/ports/Mk/bsd.port.mk .It Pa /usr/ports/Mk/bsd.sites.mk .It Pa /usr/share/examples/etc/make.conf .It Pa /usr/src/Makefile .It Pa /usr/src/Makefile.inc1 .El .Sh 使用例 最新のソースからシステムを更新するのには 次のようにするのが .Dq よい とされています: .Bd -literal -offset indent make buildworld make buildkernel KERNCONF=FOO make installkernel KERNCONF=FOO -<新規カーネルをシングルユーザモードでリブート> +.Aq 新規カーネルをシングルユーザモードでリブート make installworld mergemaster .Ed .Pp .Dq Li FOO のところは、カーネルを構築する際に必要となるカーネル設定ファイル名で 置き換える必要があります。 この代わりに、 .Pa /etc/make.conf ファイル中にある .Va KERNCONF 変数を構築するカーネル名に設定することができます。 この場合、 .Cm buildkernel および .Cm installkernel コマンドの .Va KERNCONF Ns = Ns Li FOO の部分は省略可能です。 .Pp これらのコマンドの実行後は、システムをリブートする必要があります。 リブートしないと、再構築されたプログラムの多く ( .Xr ps 1 や .Xr top 1 等) は、まだ動作している古いカーネルでは動かない可能性が あります。 極最近のソースからアップグレードするほとんどの場合には 厳密には必要とはならないのですが、 古いカーネルからのアップグレード時や、そのカーネルで .Dq 奇妙な現象 が発生することが分かっている時には、 シングルユーザモードでのリブートは非常に重要です。 .Pp i386 のホストで Alpha アーキテクチャ用のシステムをクロスビルド するには、次のコマンドシーケンスを使用できます: .Bd -literal -offset indent cd /usr/src make TARGET_ARCH=alpha buildworld make TARGET_ARCH=alpha DESTDIR=/clients/axp installworld .Ed .Sh 関連項目 .Xr cc 1 , .Xr install 1 , .Xr make 1 , .Xr make.conf 5 , .Xr ports 7 , .Xr release 7 , .Xr mergemaster 8 , .Xr reboot 8 , .Xr shutdown 8 .Sh 作者 .An Mike W. Meyer Aq mwm@mired.org です。 diff --git a/ja_JP.eucJP/man/man7/hier.7 b/ja_JP.eucJP/man/man7/hier.7 index 2f41471b43..f3b52c3913 100644 --- a/ja_JP.eucJP/man/man7/hier.7 +++ b/ja_JP.eucJP/man/man7/hier.7 @@ -1,811 +1,823 @@ .\" Copyright (c) 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. .\" .\" @(#)hier.7 8.1 (Berkeley) 6/5/93 -.\" %FreeBSD: src/share/man/man7/hier.7,v 1.89 2003/11/08 18:01:44 rwatson Exp % +.\" %FreeBSD: src/share/man/man7/hier.7,v 1.91 2003/11/22 06:08:59 scottl Exp % .\" .\" $FreeBSD$ .Dd June 5, 1993 .Dt HIER 7 .Os .Sh 名称 .Nm hier .Nd ファイルシステムのレイアウト .Sh 解説 ファイルシステムの階層構成についての概略です。 .Bl -tag -width "/stand/" .It Pa / ファイルシステムのルートディレクトリ。 .It Pa /bin/ ユーザ用ユーティリティの基本的なもの。 シングルユーザ環境、マルチユーザ環境どちらでも使用する。 .It Pa /boot/ オペレーティングシステムのブートストラップ中に使用される プログラムと設定ファイル。 .Pp .Bl -tag -width defaults/ -compact .It Pa defaults/ デフォルトのブートストラップ用設定ファイル。 .Xr loader.conf 5 参照。 .It Pa kernel/ カーネルの pure な実行可能ファイル (ブート時にメモリに読み込まれる オペレーティングシステム)。 .It Pa modules/ サードパーティのロード可能なカーネルモジュール。 .Xr kldstat 8 参照。 .El .It Pa /cdrom/ CD-ROM ドライブのデフォルトマウントポイント .Xr ( sysinstall 8 が作成します)。 .It Pa /compat/ 通常は、 .Pa /usr/compat へのリンクです。 そうでない場合、 .Pa /usr/compat コメントがあてはまります。 .Xr ( sysinstall 8 が作成します)。 .It Pa /dev/ ブロックデバイスおよびキャラクタデバイスファイル。 .Pp .Bl -tag -width ".Pa fd/" -compact .It Pa fd/ ファイル記述子ファイル。 .Xr \&fd 4 参照。 .El .It Pa /dist/ .Xr sysinstall 8 が使用するマウントポイント。 .It Pa /etc/ システムの設定ファイル、およびスクリプト。 .Pp .Bl -tag -width "disklabels/" -compact .It Pa defaults/ デフォルトのシステム設定ファイル。 .Xr rc 8 参照。 .It Pa gnats/ gnats 設定ファイル。 .Xr send-pr 1 参照。 .It Pa isdn/ isdn4bsd の設定ファイル。 .Xr isdnd 8 参照。 .It Pa localtime ローカルタイムゾーン情報。 .Xr ctime 3 参照。 .It Pa mail/ sendmail の制御情報。 .It Pa mtree/ mtree 設定ファイル。 .Xr mtree 8 参照。 .It Pa namedb/ named 設定ファイル。 .Xr named 8 参照。 .It Pa pam.d/ プラグ可能認証モジュール (Pluggable Authentication Modules; PAM) ライブラリの設定ファイル。 .Xr pam 8 参照。 .It Pa periodic/ .Xr cron 8 により、毎日/毎週/毎月実行されるスクリプト。 .Xr periodic 8 参照。 .It Pa ppp/ .Xr ppp 8 ppp 設定ファイル。 .Xr ppp 8 参照。 .It Pa ssl/ OpenSSL 設定ファイル。 .El .It Pa /kernel カーネルの pure な実行可能ファイル (ブート時にメモリに読み込まれる オペレーティングシステム)。 .It Pa /modules/ ロード可能なカーネルモジュール。 .Xr kldstat 8 参照。 +.It Pa /lib/ +.Pa /bin +と +.Pa /sbin +のバイナリに必要な、重要なシステムライブラリ。 +.It Pa /libexec/ +.Pa /bin +と +.Pa /sbin +のバイナリに必要な、重要なシステムユーティリティ。 .It Pa /mnt/ 通常、システム管理者が一時的なマウントポイントとして使用する 空のディレクトリ。 .It Pa /proc/ プロセスファイルシステム。 .Xr procfs 5 , .Xr mount_procfs 8 参照。 .It Pa /rescue/ 緊急回復時に使用される、静的にリンクされたプログラム群です。 .Xr rescue 8 を参照してください。 .It Pa /root/ root のホームディレクトリ。 .It Pa /sbin/ システムプログラム、および基本的な管理者用ユーティリティ。 シングルユーザ環境、マルチユーザ環境どちらでも使用する。 .It Pa /stand/ スタンドアロン環境で使用されるプログラム。 .It Pa /tmp/ システムリブートをまたがった永続性が保証されない、一時ファイル。 .It Pa /usr/ ユーザ用ユーティリティ、およびアプリケーションの大部分を含む。 .Pp .Bl -tag -width "libdata/" -compact .It Pa bin/ 一般的なユーティリティ、プログラミングツール、アプリケーション。 .It Pa compat/ Linux 等の他のオペレーティングシステムとのバイナリ互換性をサポートするために 必要なファイル .Xr ( sysinstall 8 が作成します)。 .It Pa games/ 有用でちょっとふざけたプログラム。 .It Pa include/ 標準 C 言語インクルードファイル。 .Pp .Bl -tag -width "kerberos5/" -compact .It Pa arpa/ インターネットサービスプロトコルのための C 言語インクルードファイル。 .It Pa cam/ Common Access Methods Layer 用 C インクルードファイル。 .Bl -tag -width "kerberos5/" -compact .It Pa scsi/ CAM 上の SCSI デバイス。 .El .It Pa dev/ 様々な .Fx デバイスのプログラミング用の C インクルードファイル。 .Bl -tag -width "kerberos5/" -compact .It Pa ic/ ドライバ/バス独立なハードウェア回路を記述する、様々なヘッダファイル。 .It Pa ofw/ OpenFirmware サポート。 .It Pa ppbus/ パラレルポートバス。 .Xr ppbus 4 参照。 .It usb/ USB サブシステム。 .It Pa utopia/ ATM インタフェース用の物理チップドライバ。 .Xr utopia 4 参照。 .It Pa wi/ .Xr wi 4 WaveLAN ドライバ。 .El .It Pa fs/ .Bl -tag -width "kerberos5/" -compact .It Pa fdescfs/ プロセス毎のファイル記述子ファイルシステム。 .It Pa fifofs/ .St -p1003.1 FIFO ファイルシステム。 .It Pa msdosfs/ MS-DOS ファイルシステム。 .It Pa ntfs/ NTFS ファイルシステム。 .It Pa nullfs/ ループバックファイルシステム。 .It Pa nwfs/ NetWare ファイルシステム。 .It Pa portalfs/ ポータルファイルシステム。 .It Pa procfs/ プロセスファイルシステム。 .It Pa smbfs/ SMB/CIFS ファイルシステム。 +.It Pa udf/ +UDF ファイルシステム。 .It Pa umapfs/ uid/gid マッピングを変えるファイルシステム .It Pa unionfs ユニオンファイルシステム。 .El .It Pa g++/ GNU C++ 言語インクルードファイル。 .Bl -tag -width "kerberos5/" -compact .It Pa std/ GNU C++ 言語 libstdc++ インクルードファイル。 .El .It Pa isc/ ISC ユーティリティライブラリ libisc インクルードファイル。 .It Pa isofs/ .Bl -tag -width "kerberos5/" -compact .It Pa cd9660/ iso9660 形式ファイルシステム。 .El .It Pa libmilter/ libmilter 用の C インクルードファイルであり、 .Xr sendmail 8 メールフィルタ の API です。 .It Pa machine/ マシン固有機能の C 言語インクルードファイル。 .It Pa net/ その他のネットワーク機能用 C 言語インクルードファイル。 .It Pa netatalk/ Appletalk プロトコル。 .It Pa netatm/ ATM のインクルードファイル。 .Xr atm 8 参照。 .It Pa netinet/ インターネット標準プロトコル用 C 言語インクルードファイル。 .Xr inet 4 参照。 .It Pa netinet6/ インターネットプロトコルバージョン 6 用の C インクルードファイル。 .Xr inet6 4 参照。 .It Pa netipx/ IPX/SPX プロトコルスタック。 .It Pa netkey/ カーネルの鍵管理サービス。 .It Pa netnatm/ NATM インクルードファイル。 .Xr natm 4 参照。 .It Pa netsmb/ SMB/CIFS リクエスタ。 .It Pa nfs/ NFS (Network File System) 用 C 言語インクルードファイル。 .It Pa objc/ Objective C のインクルードファイル。 .It Pa posix4/ POSIX リアルタイム拡張のインクルードファイル。 .Xr p1003_1b 9 参照。 .It Pa openssl/ OpenSSL (Cryptography/SSL ツールキットの) ヘッダ。 .It Pa pccard/ PC-CARD コントローラ。 .It Pa protocols/ Berkeley サービスプロトコル用 C 言語インクルードファイル。 .It Pa readline/ ユーザからの一行入力機能 (編集機能付き)。 .Xr readline 3 参照。 .It Pa rpc/ リモート手続き呼び出し。 .Xr rpc 3 参照。 .It Pa rpcsvc/ RPC サービス構造の定義。 .Xr rpc 3 参照。 .It Pa security/ PAM。 .Xr pam 8 参照。 .It Pa sys/ システム用 C 言語インクルードファイル (カーネルデータ構造)。 .\" .It Pa tcl/ .\" Tcl 言語。 .\" .Xr Tcl n .\" 参照。 .\" .Bl -tag -width "kerberos5/" -compact .\" .It Pa generic/ .\" ??? .\" .It Pa unix/ .\" ??? .\" .El .It Pa ufs/ UFS (U-word File System) 用 C 言語インクルードファイル。 .Bl -tag -width "kerberos5/" -compact .It Pa ffs/ Fast filesystem。 .It Pa ufs/ UFS ファイルシステム。 .El .It Pa vm/ 仮想記憶。 .Xr vmstat 8 参照。 .El .Pp .It Pa lib/ アーカイブライブラリ。 .Bl -tag -width Fl -compact .It Pa aout/ a.out アーカイブライブラリ。 .It Pa compat/ 互換性維持用の共有ライブラリ。 .Bl -tag -width Fl -compact .It Pa aout/ a.out 後方互換ライブラリ。 .El .El .Pp .It Pa libdata/ その他のユーティリティデータファイル。 .Bl -tag -width Fl -compact .It Pa doscmd/ doscmd が使用するファイル (ドライバ、フォント等)。 .Xr doscmd 1 参照。 .Bl -tag -width 6n -compact .It Pa fonts/ doscmd が使用するフォント。 .El .It Pa gcc/ ??? .It Pa ldscripts/ リンカスクリプト。 .Xr ld 1 参照。 .It Pa lint/ さまざまな lint 用ライブラリ (事前に構築されている)。 .Xr lint 1 参照。 .It Pa stallion/ Stallion シリアルコントローラ用ファームウェアイメージ。 .Xr stl 4 参照。 .El .Pp .It Pa libexec/ システムデーモンおよびシステムユーティリティ。 (他のプログラムから実行されるもの)。 .Bl -tag -width Fl -compact .It Pa aout/ a.out 実行形式を操作するユーティリティ。 .It Pa elf/ ELF 実行形式を操作するユーティリティ。 .It Pa lpr/ LP プリントシステムのユーティリティとフィルタ。 .Xr lpr 1 参照。 .It Pa sendmail/ .Xr sendmail 8 バイナリ。 .Xr mailwrapper 8 参照。 .It Pa sm.bin/ .Xr sendmail 8 用制限付きシェル。 .Xr smrsh 8 参照。 .El .Pp .It Pa local/ ローカルの実行可能ファイル、ライブラリなど。 .Fx ports フレームワークのデフォルトのインストール先としても使用されます。 local/以下では、 .Nm で /usr に関して 記述された一般的な配置が使用されます。 例外は、man ディレクトリ (local/share/ の下ではなく local/ の直下に存在)、 ports のドキュメント (share/doc// に置かれます)、 /usr/local/etc (/etc の模倣) です。 .It Pa obj/ アーキテクチャ依存のターゲットツリー。 /usr/src ツリーを構築することで作成される。 .It Pa ports/ .Fx ports コレクション (オプション扱い)。 .It Pa sbin/ (ユーザによって実行される) システムデーモン、およびシステムユーティリティ。 .It Pa share/ アーキテクチャに依存しないファイル。 .Pp .Bl -tag -width "calendar/" -compact .It Pa calendar/ 事前に組み立てられた calendar ファイルいろいろ。 .Xr calendar 1 参照。 .It Pa dict/ 単語リスト。 .Xr look 1 参照。 .Pp .Bl -tag -width Fl -compact .It Pa freebsd .Fx 固有の術語、固有の名前、隠語。 .It Pa words 一般の単語 .It Pa web2 Webster's 2nd International からの単語 .It Pa papers/ リファレンスデータベース。 .Xr refer 1 参照。 .El .Pp .It Pa doc/ その他の文書。 ( .Tn USENIX association から入手できる) .Bx マニュアルのほとんどのソース。 .Bl -tag -width Fl -compact .It Pa FAQ/ しばしば行なわれる質問とその答え (Frequently Asked Questions)。 .It Pa IPv6/ IPv6 の実装に関する注。 .It Pa bind/ BIND (Berkeley Internet Name Domain) に属する文書。 .It Pa es/ /usr/share/doc 中の文書のスペイン語への翻訳。 .It Pa handbook/ .Fx ハンドブック .It Pa ja/ /usr/share/doc 中の文書の日本語への翻訳。 .It Pa ncurses/ ncurses に属する HTML 文書。 .Xr ncurses 3X 参照 .It Pa ntp/ Network Time Protocol に属する HTML 文書。 .It Pa papers/ UNIX 関連の論文 .It Pa psd/ UNIX プログラマ用補助文書 .It Pa ru/ /usr/share/doc 中の文書のロシア語への翻訳。 .It Pa smm/ UNIX システム管理者用マニュアル .It Pa tutorials/ .Fx チュートリアル。 .It Pa usd/ UNIX ユーザ用補助文書 .It Pa zh/ /usr/share/doc 中の文書の中国語への翻訳。 .El .Pp .It Pa examples/ 一般ユーザやプログラマ向けのさまざまな用例。 .It Pa games/ 各種のゲームで使用される ASCII テキストファイル。 .It Pa groff_font/ デバイス名ごとに用意されたデバイス記述ファイル。 .It Pa info/ GNU Info ハイパーテキストシステム。 .It Pa isdn/ ISDN。 .It Pa locale/ ローカル化関係のファイル。 .Xr setlocale 3 参照。 .It Pa man/ マニュアルページ。 .It Pa me/ me マクロパッケージで使用するマクロ。 .Xr me 7 参照。 .It Pa misc/ その他システム全体の ASCII テキストファイル。 .Bl -tag -width Fl -compact .It Pa fonts/ ??? .It Pa pcvtfonts/ pcvt フォント。 .Xr pcvt 4 参照。 .It Pa termcap 端末の特性を記述するデータベース。 .Xr termcap 5 参照。 .El .It Pa mk/ make 用テンプレート。 .Xr make 1 参照。 .It Pa nls/ 各国語サポート (National Lanuguage Support) ファイル。 .Xr mklocale 1 参照。 .It Pa pcvt/ pcvt の文書とその他の例。 .Xr pcvt 4 参照。 .It Pa security/ .Xr mac_lomac 4 等のセキュリティポリシ用のデータファイル。 .It Pa sendmail/ .Xr sendmail 8 の設定ファイル。 .It Pa skel/ 新しいアカウントのための . (ドット) ファイルの例。 .It Pa syscons/ syscons が使用するファイル。 .Xr syscons 4 参照。 .Bl -tag -width "scrnmaps/xx" -compact .It Pa fonts/ コンソールフォント。 .Xr vidcontrol 1 と .Xr vidfont 1 参照。 .It Pa keymaps/ コンソールキーボードマップ。 .Xr kbdcontrol 1 と .Xr kbdmap 1 参照。 .It Pa scrnmaps/ コンソールスクリーンマップ。 .El .It Pa tabset/ 各種端末用タブ記述ファイル。termcap ファイルの中で使用される。 .Xr termcap 5 参照。 .It Pa tmac/ テキスト処理マクロ。 .Xr nroff 1 および .Xr troff 1 参照。 .It Pa vi/ .Xr vi 1 のローカライズサポートとユーティリティ。 .It Pa zoneinfo/ タイムゾーン設定情報。 .Xr tzfile 5 参照。 .El .It Pa src/ .Bx とサードバーティとローカルのソースファイル。 .Pp .Bl -tag -width "kerberos5/" -compact .It Pa bin/ /bin 内のファイルのソース。 .It Pa contrib/ 寄贈されたソフトウェアのソース。 .It Pa crypto/ 寄贈された暗号化ソフトウェアのソース。 .It Pa etc/ /etc 内のファイルのソース。 .It Pa games/ /usr/games 内のファイルのソース。 .It Pa gnu/ GNU Public Licence で保護されたユーティリティ。 .It Pa include/ /usr/include 内のファイルのソース。 .It Pa kerberos5/ Kerberos version 5 のビルドインフラストラクチャ。 .It Pa lib/ /usr/lib 内のファイルのソース。 .It Pa libexec/ /usr/libexec 内のファイルのソース。 .It Pa release/ .Fx のリリースを生成するために必要なファイル。 .It Pa sbin/ /sbin 内のファイルのソース。 .It Pa secure/ /usr/src/crypto 中のファイル用のビルドディレクトリ。 .It Pa share/ /usr/share 内のファイルのソース。 .It Pa sys/ カーネルのソースファイル。 .It Pa tools/ .Fx のメンテナンスとテストに使用するツール。 .It Pa usr.bin/ /usr/bin 内のファイルのソース。 .It Pa usr.sbin/ /usr/sbin 内のファイルのソース。 .El .Pp .It Pa X11R6/ X11R6 配布パッケージの実行可能形式ファイル、ライブラリなど (オプション扱い)。 .Bl -tag -width "include/" -compact .It Pa bin/ X11R6 のバイナリ (サーバ、ユーティリティ、ローカルな packages/ports)。 .It Pa etc/ X11R6 の設定ファイルとスクリプト。 .It Pa include/ X11R6 のインクルードファイル。 .It Pa lib/ X11R6 のライブラリ。 .It Pa man/ X11R6 のマニュアルファイル。 .It Pa share/ アーキテクチャ独立なファイル。 .El .El .It Pa /var/ さまざまな用途のログファイル、一時ファイル、遷移的ファイル、 スプールファイル。 .Pp .Bl -tag -width "preserve/" -compact .It Pa account/ システムアカウンティングファイル。 .Pp .Bl -tag -width Fl -compact .It Pa acct 実行アカウントファイル。 .Xr acct 5 参照。 .El .Pp .It Pa at/ 指定した時間に動くコマンドのスケジュールファイル。 .Xr \&at 1 参照。 .Bl -tag -width "preserve/" -compact .It Pa jobs/ ジョブファイルを含むディレクトリ。 .It Pa spool/ 出力スプールファイルを含むディレクトリ。 .El .Pp .It Pa backups/ さまざまなバックアップファイル。 .It Pa crash/ カーネルクラッシュダンプを保存するデフォルトのディレクトリ。 .Xr crash 8 と .Xr savecore 8 参照。 .It Pa cron/ cron が使用するファイル。 .Xr cron 8 参照。 .Bl -tag -width "preserve/" -compact .It Pa tabs/ crontab ファイル。 .Xr crontab 5 参照。 .El .Pp .It Pa db/ システム固有のさまざまなデータベースファイル。自動生成される。 .It Pa empty/ 特別に空のディレクトリが必要なプログラムによって使用される、空のディレクトリ。 例えば、特権分離のために .Xr sshd 8 が使用します。 .Xr sshd 8 参照 .It Pa games/ さまざまなゲームのステータスおよびスコアファイル。 .It Pa heimdal/ Kerberos サーバデータベース。 .Xr kdc 8 参照。 .It Pa log/ さまざまなシステムログファイル。 .Pp .Bl -tag -width Fl -compact .It Pa wtmp login/logout ログ。 .Xr wtmp 5 参照。 .El .Pp .It Pa mail/ ユーザのメールボックスファイル。 .It Pa msgs/ システムメッセージのデータベース。 .Xr msgs 1 参照。 .It Pa preserve/ エディタの不慮の死の際に保存されるファイルを一時的に安置するディレクトリ。 .Xr \&ex 1 参照。 .It Pa quotas/ ファイルシステムのクォータ情報のファイル。 .It Pa run/ ブートされてからのシステムについての各種情報を記述した システム情報ファイル。 .Pp .Bl -tag -width Fl -compact .It Pa named/ .Dq bind ユーザが書き込み可能です。 .Xr named 8 参照。 .It Pa ppp/ コマンドの接続ソケット用に、 .Dq network グループが書き込み可能です。 .Xr ppp 8 参照。 .It Pa utmp 現在のユーザについてのデータベース。 .Xr utmp 5 参照。 .El .Pp .It Pa rwho/ rwho データファイル。 .Xr rwhod 8 , .Xr rwho 1 , .Xr ruptime 1 参照。 .It Pa spool/ さまざまなプリンタ、メールシステムのスプールディレクトリ。 .Pp .Bl -tag -width Fl -compact .It Pa ftp/ 一般に ~ftp となる部分。anonymous ftp のルートディレクトリ。 .It Pa mqueue/ 配送されていないメールのキュー。 .Xr sendmail 8 参照。 .It Pa output/ ラインプリンタ用スプールディレクトリ。 .El .Pp .It Pa tmp/ システムリブートをまたがって保持される、一時ファイル。 .Bl -tag -width Fl -compact .It Pa vi.recover/ vi のリカバリファイルを格納しておくディレクトリ。 .El .It Pa yp NIS マップ。 .El .El .Sh 注 このマニュアルページはデフォルトの .Fx ファイルシステムレイアウトを 記述しており、 各システムの実際の階層構造はシステム管理者の裁量に委ねられています。 よく維持管理されたインストールにおいては、 カスタマイズされた本ドキュメントが付属するでしょう。 .Sh 関連項目 .Xr apropos 1 , .Xr find 1 , .Xr finger 1 , .Xr grep 1 , .Xr ls 1 , .Xr whatis 1 , .Xr whereis 1 , .Xr which 1 , .Xr fsck 8 .Sh 歴史 .Nm マニュアルページは .At v7 で登場しました。 .\"ZZZ: 3.0-RELEASE compliant by N. Kumagai 98-12-26 diff --git a/ja_JP.eucJP/man/man8/IPXrouted.8 b/ja_JP.eucJP/man/man8/IPXrouted.8 index 9795bf28c8..905341f2dc 100644 --- a/ja_JP.eucJP/man/man8/IPXrouted.8 +++ b/ja_JP.eucJP/man/man8/IPXrouted.8 @@ -1,183 +1,201 @@ .\" Copyright (c) 1986, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Copyright (c) 1995 John Hay. 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. .\" -.\" %FreeBSD: src/usr.sbin/IPXrouted/IPXrouted.8,v 1.15 2003/06/08 13:59:21 charnier Exp % +.\" %FreeBSD: src/usr.sbin/IPXrouted/IPXrouted.8,v 1.16 2003/11/15 17:10:56 trhodes Exp % .\" .\" $FreeBSD$ .\" .Dd October 11, 1995 .Dt IPXROUTED 8 .Os .Sh 名称 .Nm IPXrouted .Nd IPX Routing Information Protocol デーモン .Sh 書式 .Nm .Op Fl N .Op Fl q .Op Fl s .Op Fl S .Op Fl t .Op Ar logfile .Sh 解説 .Nm -ユーティリティは IPX 経路テーブルを扱うために、ブート時に起動されます。 -IPX 経路デーモンは、カーネルの経路テーブルエントリを最新に -保つために Novell の IPX Routing Information Protocol を用います。 +ユーティリティは +.Tn IPX +経路テーブルを扱うために、ブート時に起動されます。 +.Tn IPX +経路デーモンは、カーネルの経路テーブルエントリを最新に +保つために Novell の +.Tn IPX +Routing Information Protocol を用います。 .Pp 使用可能なオプション: .Bl -tag -width logfile .It Fl N -GetNearestServer SAP 要求に対して応答しません。 +GetNearestServer +.Tn SAP +要求に対して応答しません。 .It Fl q (下記の .Fl s オプションとは反対に) 経路情報を提供しません。 .It Fl s ネットワークをつなぐルータであるないにかかわらず、 .Nm が強制的に経路情報を提供するようにします。 .It Fl S Service Advertizing Protocol -(SAP) -情報を提供しません。デフォルトでは -SAP +.Tn SAP +情報を提供しません。 +デフォルトでは +.Tn SAP 情報を提供します。 .It Fl t 送信・受信されたすべてのパケットを標準出力に表示します。 加えて、 .Nm は制御端末から切り離されないので、キーボードからの 割り込みはプロセスを kill することになります。 .It Ar logfile .Nm の 行動が記録されるファイル名を指定します。 このログには、経路テーブルのすべての変更についての情報や、 経路の変更に関わる最近の送受信メッセージの履歴が記録されます。 .El .Pp 通常、 .Nm は経路情報パケットを listen します。 -ホストが複数の IPX ネットワークに接続されている場合には、 +ホストが複数の +.Tn IPX +ネットワークに接続されている場合には、 直接接続されているホストやネットワークすべてに経路テーブルの コピーを定期的に提供します。 .Pp .Nm が起動されると、 .Dv SIOCGIFCONF .Xr ioctl 2 を用いて、システムに組み込まれ、 .Dq up となっているインタフェースを探します (ソフトウェアループバックインタフェースは無視されます)。 インタフェースが複数ある場合には、そのホストがネットワーク間で パケットを転送するとみなします。 そして .Nm ユーティリティは各インタフェースに .Em リクエスト パケットを送信し(インタフェースがサポートしていれば ブロードキャストパケットを用います)、他のホストから .Em リクエスト と .Em レスポンス のパケットが来るのを listen し続けます。 .Pp .Em リクエスト パケットを受け取ると、内部のテーブルに基づく情報から返答パケットを 作成します。 作成された .Em レスポンス パケットは既知の経路の一覧を含み、各々は .Dq hop count metric を持っています(16 以上の count は .Dq 無限大 (到達不可能) を示します)。 返答された各々の経路に関する metric は、送信元からの .Em "相対的な" metric を提供します。 .Pp 以下の条件を一つでも満たす場合、 .Nm が受け取った .Em レスポンス パケットは経路テーブルの更新に使われます: .Bl -bullet .It 宛先となるネットワークやホストへの経路テーブルエントリが -存在せず、 metric が宛先が到達可能であるとしている +存在せず、 metric が宛先が +.Dq 到達可能である +としている (hop count が無限大でない)とき。 .It パケットの送信元ホストが、保持している経路テーブルエントリ内の ルータと同じであるとき。 すなわち更新された情報が、 宛先へのパケットが経由するネットワーク間ルータからもたらされたとき。 .It 経路テーブル内に存在するエントリがしばらくの間(定義では 90 秒) 更新されず、その経路が現在の経路と少なくとも同じ程度効率的であるとき。 .It 現在経路テーブル内に保持しているものよりも、新しい経路のほうが短いとき。 この判断にはテーブル内の経路の metric と新しい経路の metric が 比較されます。 .El .Pp 更新が受け入れられた場合、 .Nm は変更を内部テーブルに記録し、 .Em レスポンス パケットをすべての直接つながったホストとネットワークに流します。 .Xr routed 8 ユーティリティは、カーネルの経路テーブルを更新する前に、不安定な状態から 抜け出せるようにするために、しばらくの間 (30 秒以内) 待ちます。 .Pp .Nm は入ってくるパケットを処理するだけではなく、経路テーブル エントリを定期的にチェックします。 エントリが 3 分間更新されなかった場合、エントリの metric は 無限大に設定され、削除予定の印がつけられます。 実際の削除は、エントリの無効化が他のルータに伝わるのを確実に するために、さらに 60 秒後に行われます。 .Pp ネットワークをつなぐルータとなっているホストは、 30 秒ごとに 直接つながったすべてのホストとネットワークに自分の 経路テーブルを提供します。 .Pp .Nm -が SIGINFO シグナルを受け取った場合、RIP と SAP テーブルの -現在の内容がファイル /var/log/ipxrouted.dmp に追加されます。 +が SIGINFO シグナルを受け取った場合、 +.Tn RIP +と +.Tn SAP +テーブルの +現在の内容がファイル +.Pa /var/log/ipxrouted.dmp +に追加されます。 .Sh 関連項目 .Xr ipx 3 .Sh 歴史 diff --git a/ja_JP.eucJP/man/man8/burncd.8 b/ja_JP.eucJP/man/man8/burncd.8 index e41b668b8a..27f4e9cd55 100644 --- a/ja_JP.eucJP/man/man8/burncd.8 +++ b/ja_JP.eucJP/man/man8/burncd.8 @@ -1,216 +1,216 @@ .\" .\" Copyright (c) 2000,2001,2002 S�ren Schmidt .\" 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, .\" without modification, immediately at the beginning of the file. .\" 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. The name of the author may not be used to endorse or promote products .\" derived from this software without specific prior written permission. .\" .\" 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/usr.sbin/burncd/burncd.8,v 1.30 2003/05/22 11:52:23 ru Exp % +.\" %FreeBSD: src/usr.sbin/burncd/burncd.8,v 1.31 2003/11/18 02:33:27 obrien Exp % .\" $FreeBSD$ .\". .Dd October 18, 2002 .Os .Dt BURNCD 8 .Sh 名称 .Nm burncd .Nd ATAPI CD-R/RW ドライバの制御 .Sh 書式 .Nm .Op Fl delmnpqtv .Op Fl f Ar device .Op Fl s Ar speed .Op Ar command .Op Ar command Ar .Sh 解説 .Nm ユーティリティは ATAPI cd ドライバを用いて CD-R/RW メディアを 焼きつけるために使用されます。 .Pp 利用可能なオプションとオペランド: .Pp .Bl -tag -width XXXXXXXXXXXX .It Fl d DAO (ディスクアットワンス) モードで CD-R/RW を焼きます。 .It Fl e 終了時にメディアを排出します。 .It Fl f Ar device 焼きつけ過程において使用するデバイスを設定します。 .It Fl F 警告にかかわらず操作を強行します。 .It Fl l 指定したファイルから、イメージファイルの一覧を読み取ります。 .It Fl m マルチセッションモードのディスクを閉じます (指定しない場合には、シングルセッションとしてディスクを閉じます)。 .It Fl n DAO モードにおいて、データトラック間にギャップを書き込みません。 .It Fl p オーディオトラックに対して高域補正を行います。 .It Fl q 静かにします。進捗状況を出力しません。 .It Fl s Ar speed 焼きつけデバイスの速さを設定します。 デフォルトは 4 に設定されます。 ドライブの最高速度を指定するために .Dq Li max を指定してください。 .It Fl t 書き込みテストを行います。メディアに対して 実際に書き込みは行いません。 .It Fl v 冗長になり、追加の進捗メッセージを表示します。 .El .Pp .Ar command は以下のどれか一つになります。 .Pp .Bl -tag -width XXXXXXXXXXXX .It Cm msinfo メディア上の最後のトラックの最初の LBA と、 メディア上の次に書き込み可能なアドレスを表示します。 これは、 追加セッション付の ISO ファイルシステムに追加データを追記するときに、 .Xr mkisofs 8 の .Fl C スイッチで使用します。 .It Cm blank CD-RW メディアを消去します。 高速な消去方法を使用するため、データは物理的には上書きされず、 後で使う際にメディアが空である事を示す領域のみ上書きします。 .It Cm erase CD-RW メディアを消去します。 メディア全体を消去します。 完了までに 1 時間かかることもあります。 .It Cm format Brq Cm dvd+rw | dvd-rw DVD+RW もしくは DVD-RW メディアを、 デフォルトの最大サイズで 2048 バイトブロックで、 フォーマットします。 この操作は長時間を要し得ます。 処理中に進捗報告がなされます。 .It Cm fixate TOC が作成されメディアが普通の CD ドライブで使用できるように メディアを固定します。 ドライバはデフォルトではシングルセッションメディアを作成します ( .Fl m を参照してください)。 このコマンドが終了した時にプログラムが終了するように .Nm に渡される最後のコマンドとしてください。 DAO モードでは無視されます ( .Fl d オプションを参照してください)。 .It Cm raw | audio コマンドラインで続いて指定されるイメージファイルを オーディオ (raw mode) トラックとして処理するように 書き込みモードを設定します。 .It Cm data | mode1 コマンドラインで続いて指定されるイメージファイルを データ (mode1) トラックとして処理するように 書き込みモードを設定します。 .It Cm mode2 コマンドラインで後続するイメージファイルに対し、 書き込みモードがデータ (mode2) トラックを生成するようにします。 .It Cm XAmode1 コマンドラインで後続するイメージファイルに対し、 書き込みモードがデータ (XAmode1) トラックを生成するようにします。 .It Cm XAmode2 コマンドラインで後続するイメージファイルに対し、 書き込みモードがデータ (XAmode2) トラックを生成するようにします。 .It Cm vcd コマンドラインで後続するイメージファイルに対し、 書き込みモードが VCD/SVCD トラックを生成するようにします。 これは、自動的に DAO .Pq Fl d と .Dq ギャップ無し .Pq Fl n モードを設定します。 .It Cm dvdrw 後続するイメージから DVD+RW を書き込むモードに設定します。 DVD は単一トラックのみを持ちます。 .It Ar file 他の全ての引数はメディアに書き込むためのイメージファイルとして 扱われます。 .Fl l オプション指定時には、 イメージの一覧を含むファイルとして扱われます。 .El .Pp ファイルの長さが現在のメディアのブロックサイズの倍数でない場合 ブロックサイズの要求に合わせるために 0 が詰められます。 慣習的なファイル名 .Fl は標準入力を指し、1 度だけ使用可能です。 .Sh 使用例 データ CD-R を焼きつけるための典型的な使い方: .Pp -.Dl "burncd -f /dev/acd0c data file1 fixate" +.Dl "burncd -f /dev/acd0 data file1 fixate" .Pp オーディオ CD-R を焼きつけるための典型的な使い方: .Pp -.Dl "burncd -f /dev/acd0c audio file1 file2 file3 fixate" +.Dl "burncd -f /dev/acd0 audio file1 file2 file3 fixate" .Pp オーディオ CD-R を DAO モードで焼きつけるための典型的な使い方: .Pp -.Dl "burncd -f /dev/acd0c -d audio file1 file2 file3" +.Dl "burncd -f /dev/acd0 -d audio file1 file2 file3" .Pp ミックスモード CD-R を焼きつけるための典型的な使い方: .Pp -.Dl "burncd -f /dev/acd0c data file1 audio file2 file3 fixate" +.Dl "burncd -f /dev/acd0 data file1 audio file2 file3 fixate" .Pp 圧縮イメージファイルを標準入力から読んで焼きつけるための典型的な使い方: .Pp -.Dl "gunzip -c file.iso.gz | burncd -f /dev/acd0c data - fixate" +.Dl "gunzip -c file.iso.gz | burncd -f /dev/acd0 data - fixate" .Pp 前述の例では、データ CD-R に焼きつけられるファイルは ISO9660 ファイルシステムであることが仮定されています。 .Fx Ports Collection にて入手可能な .Xr mkisofs 8 は、指定されたディレクトリツリーから ISO9660 ファイルシステムイメージ を作成するために広く使用されています。 .Sh 環境変数 次の環境変数が .Nm の実行に影響します: .Pp .Bl -tag -width ".Ev CDROM" .It Ev CDROM .Fl f フラグで CD デバイスが指定されない場合に使用するもの。 .El .Sh バグ 多分あります。みつけたら報告してください。 .Sh 歴史 .Nm ユーティリティは .Fx 4.0 で登場しました。 .Sh 作者 .Nm ユーティリティとこのマニュアルページは .An S\(/oren Schmidt , Denmark .Aq sos@FreeBSD.org により提供されました。 diff --git a/ja_JP.eucJP/man/man8/dump.8 b/ja_JP.eucJP/man/man8/dump.8 index 53ca99bfb4..03660adb2f 100644 --- a/ja_JP.eucJP/man/man8/dump.8 +++ b/ja_JP.eucJP/man/man8/dump.8 @@ -1,457 +1,469 @@ .\" 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.60 2003/11/05 22:17:37 kensmith Exp % +.\" %FreeBSD: src/sbin/dump/dump.8,v 1.61 2003/11/18 00:36:40 mckusick Exp % .\" .\" $FreeBSD$ .Dd March 1, 2002 .Dt DUMP 8 .Os .Sh 名称 .Nm dump , .Nm rdump .Nd ファイルシステムのバックアップ .Sh 書式 .Nm .Op Fl 0123456789acLnSu .Op Fl B Ar records .Op Fl b Ar blocksize .Op Fl C Ar cachesize .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 .Fl W | Fl w .Pp .Nm rdump は .\" .Nm を \fBdump\fR で置き換えた。.Nm による改行を回避するため。 \fBdump\fR の別名です。 .Pp .in \" XXX ( .Bx 4.3 形式のオプションは後方互換性のために実装されていますが、 ここでは説明していません。) .Sh 解説 .Nm ユーティリティは、ファイルシステムを調べて バックアップする必要のあるファイルを決定します。 これらのファイルは、指定されたディスク、テープや、 その他の記憶メディアへ保存のためコピーされます (リモートバックアップについては、 .Fl f オプションを参照)。 ダンプの大きさが記録メディアの容量より大きい場合は、 複数ボリュームに分割します。 たいていのメディアの容量は、メディアの終りを通知されるまで 書き込んでみることで決定します。 この方法は、 .Fl a オプションにより強制的に使用することもできます。 .Pp メディアの終りを正しく通知できないメディア (一部の カートリッジ・テープドライブ等) の容量は、 テープ長と記録密度や .Fl B オプションから求め、 各ボリュームはすべて同じ容量を持つものとします。 デフォルトでは、 オペレータにメディア交換を要求した後の各ボリュームにも 同じ出力ファイル名を使用します。 .Pp ダンプ対象のファイルシステムは、引数 .Ar filesystem にて、デバイススペシャルファイルか . Pa ( /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 ボリュームあたりのキロバイト数です。 この値が出力ブロックサイズの整数倍でない場合、 コマンドはこの値より小さい整数倍値を使用します。 このオプションは、テープ長と記録密度を基にしたテープ容量より 優先されます。 .It Fl b Ar blocksize 出力ブロックあたりのキロバイト数です。 .It Fl C Ar cachesize キャッシュサイズをメガバイト単位で指定します。 性能が劇的に向上しますが、 パス間のファイルシステムへの変更に .Nm が気付かない可能性があります。 スナップショットダンプ時には本オプションを常に使用することをお勧めします。 .Nm はフォークしますので、 実際に使用されるメモリ量はキャッシュサイズより大きいかもしれないことに 注意してください。 推奨キャッシュサイズは 8 から 32 (メガバイト) の間です。 .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 (フロッピディスクドライブ)のようなデバイスファイル、 通常ファイル、 .Sq 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 L ライブファイルシステムをダンプ中であることを .Nm に通知します。 一貫性のあるダンプイメージを得るために、 +ダンプ対象のファイルシステムのルートの +.Pa .snap +ディレクトリに、 .Nm -はファイルシステムのスナップショットを取り、スナップショットをダンプします。 +はファイルシステムのスナップショットを取り、 +それからスナップショットをダンプします。 ダンプ完了時に、スナップショットは削除されます。 +ダンプ対象のファイルシステムのルートに +.Pa .snap +ディレクトリが存在しない場合、ダンプは失敗します。 +この問題は、ダンプ対象のファイルシステムのルートに +.Pa .snap +ディレクトリを作成することで、解決可能です。 +このディレクトリの所有者は root で、グループは operator で、 +モードは 0770 であるべきです。 .It Fl n .Nm がオペレータに注意を促す時に、 .Xr wall 1 に似た方法で .Dq operator グループに属するすべてのユーザにメッセージを送ります。 .It Fl S バックアップの大きさと必要なテープ数の見積もりを表示し、 実際のダンプを実行せずに終了します。 .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 ダンプの必要があるファイルシステムをオペレータに表示します。 この情報は .Pa dumpdates ファイル と .Pa /etc/fstab ファイルから集められます。 .Nm は、 .Pa dumpdates ファイル の中の各ファイルシステム毎に最新のダンプ日付とレベルを示し、 ダンプするべきファイルシステムを明らかにします。 .Fl W オプションが指定された場合、その他のすべてのオプションは無視され、 .Nm は直ちに終了します。 .It Fl w .Fl 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 分毎または .Dv 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 環境変数 環境変数 .Bl -tag -width ".Ev TAPE" .It Ev TAPE バックアップを読み取るデバイス。 .It Ev RMT リモートの .Xr rmt 8 プログラムのパス名。 .El .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 個未満のファイルシステムからの読み取りエラーは無視されますが、 すべてのエラーは警告メッセージを生成します。 これはちょっとした妥協です。 現実には、マウント中のパーティションをダンプするとき、 ダンプ実行中にファイルシステムが更新されると、 読み取りエラーが生じ得ます。 ダンプはしばしば .Xr cron 8 を使って人が居ない状況で行われますので、 オペレータの介入を要する仕事はダンプを駄目にしてしまいます。 この種の読み取りエラー発生時には 書き込まれたダンプテープには何も悪いところはありませんので、 ダンプを止める理由はなにもありません。 .Pp 各リール (ボリューム) ごとに新たなプロセスが作られ、 リールを書き終った親プロセスは テープ全体の書き込みが終るまで待っています。 .Pp .Nm ユーティリティの .Fl W や .Fl w オプションは、 .Pa /etc/fstab にリストされていても、 .Pa dumpdates ファイル に記録のないファイルシステムについては報告しません。 .Pp .Nm コマンドが、 ダンプシーケンスについて知っていて、 使い散らかしたテープの使用履歴を管理でき、 どのテープをマウントすれば良いかオペレータに教えてくれ、 .Xr restore 8 を実行するオペレータをもっと助けてくれたら、 もっと使いやすいでしょうね。 .Pp セキュリティ的な歴史により、 .Nm ユーティリティは、 root 以外のユーザでリモートバックアップを行うことはできません。 これは、 .Fx の今後のバージョンでは修正されるでしょう。 現状では、(従来通り) setuid されていれば正常に動作しますが、 セキュリティ的なリスクを伴います。 .Sh 歴史 .Nm ユーティリティは、 .At v6 から登場しました。 diff --git a/ja_JP.eucJP/man/man8/jail.8 b/ja_JP.eucJP/man/man8/jail.8 index 85e558f730..ade4d6ee70 100644 --- a/ja_JP.eucJP/man/man8/jail.8 +++ b/ja_JP.eucJP/man/man8/jail.8 @@ -1,466 +1,505 @@ .\" -.\" Copyright (c) 2000 Robert N. M. Watson +.\" Copyright (c) 2000, 2003 Robert N. M. Watson .\" 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. .\" .\" .\" ---------------------------------------------------------------------------- .\" "THE BEER-WARE LICENSE" (Revision 42): .\" wrote this file. As long as you retain this notice you .\" can do whatever you want with this stuff. If we meet some day, and you think .\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp .\" ---------------------------------------------------------------------------- .\" -.\" %FreeBSD: src/usr.sbin/jail/jail.8,v 1.45 2003/11/11 18:34:29 kensmith Exp % +.\" %FreeBSD: src/usr.sbin/jail/jail.8,v 1.47 2003/11/20 03:47:50 rwatson Exp % .\" .\" $FreeBSD$ .Dd December 12, 2001 .Dt JAIL 8 .Os .Sh 名称 .Nm jail .Nd プロセスとその子孫を閉じ込める .Sh 書式 .Nm .Op Fl i .Op Fl u Ar username .Ar path hostname ip-number command ... .Sh 解説 .Nm ユーティリティはプロセスとその将来の子孫を閉じ込めます。 .Pp オプションは次の通りです: .Bl -tag -width ".Fl u Ar username" .It Fl i 新規に作成された jail (牢屋) に対し、jail の識別子を出力します。 .It Fl u Ar username .Ar command を実行するユーザ名。 .It Ar path jail の根となるディレクトリ。 .It Ar hostname jail のホスト名。 .It Ar ip-number jail に割り当てられた IP 番号。 .It Ar command 実行されるべきプログラムのパス名。 .El .Pp +典型的には、jail は、2 個の哲学のうちの 1 個を使用して設定されます。 +それぞれ、特定の単一アプリケーションを束縛すること、 +様々なデーモンやサービスが動作する「仮想システムイメージ」を作成することです。 +どちらの場合であっても、 +必要なコマンドラインツール、デーモン、ライブラリ、 +アプリケーション設定ファイル等が利用可能となるために、 +十分完全にインストールされた FreeBSD のファイルシステムが必要です。 +しかしながら、仮想サーバ設定では、 +「ブート」処理の設定のために、もっと多くの作業が必要です。 +このマニュアルページは +両者をサポートするための設定ステップを記述していますが、 +個別の要件に応じて設定ステップを最適化できるかもしれません。 +.Pp 詳細は .Xr jail 2 のマニュアルページを参照してください。 .Sh 使用例 .Ss jail 用ディレクトリツリー設定 この例は、 .Fx 配布物全体を含む jail 用ディレクトリツリーをどのように構築するかを示しています: .Bd -literal D=/here/is/the/jail cd /usr/src mkdir -p $D make world DESTDIR=$D cd etc make distribution DESTDIR=$D mount_devfs devfs $D/dev cd $D ln -sf dev/null kernel .Ed .Pp 注: jail に対し、devfs 中の適切なデバイスのみが見えるようになっている ことが重要です。 jail 中でのディスクデバイスへのアクセスを許すと、 jail 中のプロセスが jail 外のファイルを修正することで、 jail の砂箱を通り抜けてしまうかもしれません。 devfs ルールを使用することで、 jail 毎の devfs 中のエントリへのアクセスを制限する方法については、 .Xr devfs 8 を参照してください。 .Pp 多くの場合、この例の方法では、 必要をはるかに越えた数のものを jail に入れてしまうでしょう。 もう一方の極端な例では、jail はただ 1 個のファイルのみを保持します: すなわち jail の中で実行する実行形式 1 個だけです。 .Pp .Dq 太い jail から開始して動かなくなるまで徐々にものを削除していく方が、 .Dq 細い jail から開始して動くようになるまで徐々にものを追加していくよりも かなり簡単ですので、試すにはお勧めですが、また用心することもお勧めします。 .Ss jail の設定 jail 用ディレクトリツリーの構築のためには、 .Sx jail 用ディレクトリツリー設定 に記述されている手順を実行してください。 この例では、jail された IP アドレス用に .Pa /data/jail/192.168.11.100 に構築するものと仮定します。 以降、 あなたが必要とするディレクトリ、IP アドレス、ホスト名で置き換えてください。 -.Pp +.Ss ホスト環境の設定 まず、実システムの環境を .Dq jail に適した環境 にします。 一貫性のために、親となる実マシンを .Dq ホスト環境 と呼び、jail される仮想マシンを .Dq jail 環境 と呼びます。 jail は IP エイリアスを使用して実装されていますので、 最初にすべきことのひとつは、 ホストシステムの IP サービスで、 全ローカル IP アドレスに対してサービスを listen しているものを、 無効化することです。 +特定の IP アドレスではなくすべての利用可能な IP アドレスに bind する +ネットワークサービスがホスト環境上に存在する場合、 +そのサービスは jail IP アドレスに送られた要求にサービス可能です。 これは、 .Xr inetd 8 を修正して、適切な IP アドレスのみ listen させるといった ことを意味します。 次の設定を、ホスト環境の .Pa /etc/rc.conf に追加します: .Bd -literal -offset indent sendmail_enable="NO" inetd_flags="-wW -a 192.168.11.23" rpcbind_enable="NO" .Ed .Pp この例では、 .Li 192.168.11.23 はホストシステムの元々の IP アドレスです。 .Xr inetd 8 から実行されるデーモンは、指定されたホスト IP アドレスを使用するよう、 簡単に設定可能です。 他のデーモンは手動での設定が必要です \(em いくつかに対しては、 .Xr rc.conf 5 フラグエントリにて可能ですが、他のものに対してはアプリケーション毎の 設定ファイルをいじるか、再コンパイルが必要です。 -実行に使用する IP アドレスを指定不可能なアプリケーションに対しては、 -可能であればこれらを無効にする方が良いです。 +次のよく使われるサービスは、個別の設定ファイルを修正して、 +アプリケーションが特定の IP アドレスだけを listen するようにすべきです: +.Pp +.Xr sshd 8 +の設定には +.Pa /etc/ssh/sshd_config +の修正が必要です。 .Pp -ベースシステムに付属する多くのデーモンは、 -jail 中枢環境内で jail から実行されると、問題を持ち得ます。 -これには -.Xr sendmail 8 , -.Xr named 8 , -.Xr rpcbind 8 -が含まれます。 .Xr sendmail 8 -と +の設定には +.Pa /etc/mail/sendmail.cf +の修正が必要です。 +.Pp .Xr named 8 -は、自身の設定ファイルを使用して、 -特定の IP のみ listen するよう設定可能ですが、 -ほとんどの場合、 -デーモンを単に jail 内でのみ実行して、ホスト環境では実行しない方が簡単です。 +の設定には +.Pa /etc/namedb/named.conf +の修正が必要です。 +.Pp +さらに、多くのサービスは、ホスト環境で動作させるために、 +再コンパイルが必要です。 +これには、 +.Xr rpcbind 8, +.Xr nfsd 8 , +.Xr mountd 8 +といった、 +.Xr rpc 3 , +を使用してサービスを提供するほとんどのアプリケーションが含まれます。 +一般に、bind する IP アドレスを指定不可能なアプリケーションは、 +jail IP アドレスに対して送られた要求にもそれらがサービスするのでない限り、 +ホスト環境で実行すべきではありません。 ホスト環境からの NFS にサービスしようとすると、 混乱が生じるかもしれませんし、 特定の IP だけを使用するようには簡単には再設定できません。 これは、NFS のサービスには、直接カーネルが実行するものがあるからです。 ホスト環境内で動作している すべてのサードパーティネットワークソフトウェアもまた確認および設定して、 すべての IP アドレスに bind しないようにすべきです。 結果として、これらのサービスもまた、 jail 環境から提供されているように見えるでしょう。 .Pp ひとたびこれらのデーモンが無効化またはホスト環境内に固定化されたなら、 後の混乱 (jail へメールを送るときに、jail の sendmail がダウンしていて、 メールがホストへ配送されてしまうなど) の可能性を減らすために、 リブートして全デーモンが既知の状態となるようにするのが最良です。 +.Ss jail の設定 .Pp 最初に jail を起動するときには、 ネットワークインタフェースを設定しないでください。 これは、ネットワークインタフェースを少し整理したり、 アカウントを設定するためです。 どんなマシンでも (仮想であってもそうでなくても)、 root のパスワードやタイムゾーンといった情報を設定する必要があるでしょう。 -始める前に、 -.Xr sysinstall 8 -を jail のツリーにコピーすることにより、簡単に設定できます。 -次のように行います: -.Bd -literal -offset indent -mkdir /data/jail/192.168.11.100/stand -cp /stand/sysinstall /data/jail/192.168.11.100/stand -.Ed +これらのステップのいくつかは、 +完全な仮想サーバを jail 内に作成したい場合にのみあてはまります。 +残りは、単一アプリケーションの束縛にも、 +仮想サーバの構築にも、あてはまります。 .Pp -それから、jail を開始します: +jail 内でシェルを起動します: .Pp .Dl "jail /data/jail/192.168.11.100 testhostname 192.168.11.100 /bin/sh" .Pp 最後に、エラー無しで、jail 内の、シェルプロンプトで終るでしょう。 ここで、 -.Pa /stand/sysinstall +.Pa /usr/sbin/sysinstall を実行し、インストール後の設定で様々な設定オプションを設定できます。 また、同様のことを実現するために、 .Pa /etc/rc.conf 等を手動で編集できます。 .Pp .Bl -bullet -offset indent -compact .It 空の .Pa /etc/fstab -を作成し、fstab が存在しないという起動警告を解消します。 +を作成し、fstab が存在しないという起動警告を解消します (仮想サーバのみ)。 .It ポートマッパを無効化します .Pa ( /etc/rc.conf : .Li rpcbind_enable="NO" ) -。 +(仮想サーバのみ)。 .It .Xr newaliases 1 を実行し、 .Xr sendmail 8 の警告を解消します。 .It インタフェース設定を無効化し、ifconfig 関連の起動警告を解消します .Pq Li network_interfaces="" -。 +(仮想サーバのみ)。 .It .Pa /etc/resolv.conf を設定し、jail 内の名前解決が正しく動作するようにします。 .It root のパスワードを設定します。 実ホストシステムとは異なっても良いです。 .It タイムゾーンを設定します。 .It jail 環境内のユーザにユーザアカウントを追加します。 .It jail 環境に必要なパッケージを追加します。 .El .Pp パッケージ固有の設定 (ウェブサーバや SSH サーバ等) や、 好みのログを取るための .Pa /etc/syslog.conf の修正等を行ってください。 +仮想サーバを使っていない場合、ホスト環境の +.Xr syslogd 8 +が jail 環境の syslog ソケットを listen するように変更したいかもしれません。 +この例では、syslog ソケットは +.Pa /data/jail/192.168.11.100/var/run/log +に格納されます。 .Pp シェルから抜ければ、jail はシャットダウンします。 .Ss jail の開始 jail を再開し、 全デーモンと他のプログラムと共に環境を立ち上げる準備ができました。 +jail 内で単一アプリケーションを実行する場合、 +下記の例の +.Pa /etc/rc +を、アプリケーション起動のコマンドで置き換えてください。 +仮想サーバ環境の立ち上げるために、 +.Pa /etc/rc +が実行され、様々なデーモンやサービスを起動します。 これを実行するには、まず仮想ホストのインタフェースを立ち上げ、 それから jail の .Pa /etc/rc スクリプトを jail 内から実行します。 .Pp 注: 信頼できないユーザに jail 内で root アクセスを許す予定なら、 .Va security.jail.set_hostname_allowed -を 0 に設定することを検討すると良いでしょう。 -管理上の理由を参照して、何故これが良い考えなのかを見てください。 +sysctl 変数を 0 に設定することを検討すると良いでしょう。 +管理に関する後述の議論を参照して、何故これが良い考えなのかを理解してください。 この変数を設定することにしたならば、 すべての jail の起動前にこれを設定することが必要であり、 またブートの度に 1 度必要です。 .Bd -literal -offset indent ifconfig ed0 inet alias 192.168.11.100/32 mount -t procfs proc /data/jail/192.168.11.100/proc jail /data/jail/192.168.11.100 testhostname 192.168.11.100 \\ /bin/sh /etc/rc .Ed .Pp ほとんどの .Xr sysctl 8 設定変数は jail 内から設定不可であるため、若干の警告が表示されます。 なぜなら、 これらの設定変数は、すべての jail 環境とホスト環境に渡って大域的だからです。 しかしながら、すべて正しく動作することでしょう。 .Xr inetd 8 , .Xr syslogd 8 および他のプロセスが jail 内で動作していることは、 .Xr ps 1 を使用することにより、jail されたプロセスの横に .Ql J フラグが付いていることにより確認可能です。 jail のアクティブリストを見るには .Xr jls 8 ユーティリティを使用します。 jail された環境へは、ホスト名または IP アドレスで .Xr telnet 1 可能であり、 前述の手順で作成したアカウントを使用してログイン可能です。 .Ss jail の管理 通常のマシンのシャットダウンコマンド、例えば .Xr halt 8 , .Xr reboot 8 , .Xr shutdown 8 は jail 内ではうまく使えません。 jail 内の全プロセスを殺すためには、jail に root でログインし、 やりたいことに依存して次のいずれかのコマンドを使用します: .Pp .Bd -literal -offset indent kill -TERM -1 kill -KILL -1 .Ed .Pp これにより、 .Dv SIGTERM または .Dv SIGKILL のシグナルを、jail 内から jail 内の全プロセスに通知します。 jail の用途に依存して、jail 内で .Pa /etc/rc.shutdown を実行したいかもしれません。 jail 外からプロセスを殺すには、 .Xr jexec 8 ユーティリティを上述の .Xr kill 1 コマンドと組み合わせて使用するか、 .Xr killall 1 ユーティリティを .Fl j オプション付きで使用します。 .Pp .Pa /proc/ Ns Ar pid Ns Pa /status ファイルの最後のフィールドには、 プロセスが動作している jail のホスト名か、 このプロセスが jail 内で動作していないことを示すために .Dq Li - を含みます。 .Xr ps 1 コマンドもまた、jail 内のプロセスに対して .Ql J フラグを示します。 しかし、jail 用のホスト名はデフォルトでは jail 内から書き換え可能であるため、 デフォルトでは .Pa /proc の status エントリは信頼できません。 jail 内からのホスト名設定を禁ずるには、ホスト環境の sysctl 変数 .Va security.jail.set_hostname_allowed を 0 に設定します。 これはすべての jail に影響します。 .Xr sysctl.conf 5 を使うことにより、ブートのたびにこの sysctl 設定を行えます。 次の行を .Pa /etc/sysctl.conf に追加するだけです: .Pp .Dl security.jail.set_hostname_allowed=0 .Ss Sysctl MIB エントリ jail 封鎖環境の特定の側面は、ホスト環境から、 .Xr sysctl 8 MIB 変数を使用して変更可能です。 現在のところ、これらの変数はシステム上のすべての jail 環境に影響しますが、 将来的にこの機能はより細粒度となる予定です。 .Bl -tag -width XXX .It Va security.jail.set_hostname_allowed 本 MIB エントリは、jail 内のプロセスが .Xr hostname 1 または .Xr sethostname 3 を使用して、ホスト名を変更可能か否かを指定します。 現在の jail 実装では、 jail 内からホスト名を設定できてしまうと、 .Pa /proc 内の jail 情報が正確であることに依存している管理ツールへ影響します。 このため、 信頼できない団体に jail への特権アクセスを許している環境においては、 本機能は無効化するべきです。 .It Va security.jail.socket_unixiproute_only jail 機能は、単一の IPv4 アドレスを各 jail へ bind し、 IPv4 空間における他のネットワークアドレスへのアクセスを制限します。 これらは、ホスト環境ではアクセス可能であるかもしれません。 しかしながら jail は現在のところ、 jail 機能を持たない他のネットワークプロトコルスタックへの アクセスを制限できません。 このためデフォルトでは、jail 内のプロセスは .Dv PF_LOCAL , .Dv PF_INET , .Dv PF_ROUTE ドメインのプロトコルにのみアクセス可能ですので、 .Ux ドメインソケット、IPv4 アドレス、ルーティングソケットにアクセス可能です。 他のドメインへアクセスを有効にするには、 本 MIB エントリを 0 に設定します。 .It Va security.jail.sysvipc_allowed 本 MIB エントリは、jail 内のプロセスが System V IPC プリミティブへの アクセスを持つか否かを指定します。 現在の jail 実装では、System V プリミティブは、 ホスト環境と jail 環境に跨がる単一の名前空間を共有します。 これは、jail 内のプロセスが jail 外のプロセスや他の jail 内のプロセスと 通信可能である (また潜在的に妨害も可能である) ことを意味します。 このため、この機能はデフォルトで無効ですが、 本 MIB エントリを 1 に設定することで有効にできます。 .El .Pp 現在、jail 毎の設定を保持する 2 個の MIB 関係変数があります。 jail 内のプロセスによるこれらの変数の変更は、ホスト環境には影響せず、 jail 環境に対してのみ影響します。 変数名は .Va kern.securelevel と .Va kern.hostname です。 .Sh 関連項目 .Xr killall 1 , .Xr chroot 2 , .Xr jail 2 , .Xr jail_attach 2 , .Xr procfs 5 , .Xr rc.conf 5 , .Xr sysctl.conf 5 , .Xr devfs 8 , .Xr halt 8 , .Xr inetd 8 , .Xr jexec 8 , .Xr jls 8 , .Xr mount_devfs 8 , .Xr named 8 , .Xr reboot 8 , .Xr rpcbind 8 , .Xr sendmail 8 , .Xr shutdown 8 , .Xr sysctl 8 , .Xr syslogd 8 .Sh 歴史 .Nm ユーティリティは .Fx 4.0 ではじめて登場しました。 .Sh 作者 .An -nosplit jail の機能は .An Poul-Henning Kamp によって R&D Associates .Pa http://www.rndassociates.com/ のために書かれ、 .Fx に寄贈されました。 .Pp .An Robert Watson が追加の文書を書き、少々バグを見つけ、 新規機能を少々追加し、ユーザランドの jail 環境を綺麗にしました。 .Sh バグ jail は現在のところ、 .Xr procfs 5 に対して特定の jail 情報を .Xr ps 1 経由でアクセスできるようにするという能力がありません。 また、アドレスエイリアスフラグを追加して、 全 IP .Pq Dv INADDR_ANY 上で listen するようなデーモンが このフラグを持つアドレスには bind しないようにすると良いかもしれません。 これにより、jail 内から提供されるサービスに対して ホストデーモンが負担をかけない、安全なホスト環境を構築可能とします。 現在のところ、 最も単純な答えはホスト上で提供するサービスを最小化することであり、 おそらく簡単に設定可能な .Xr inetd 8 から提供されるものに限定することでしょう。 diff --git a/ja_JP.eucJP/man/man8/nologin.8 b/ja_JP.eucJP/man/man8/nologin.8 index 9fa4745219..0ca7308f79 100644 --- a/ja_JP.eucJP/man/man8/nologin.8 +++ b/ja_JP.eucJP/man/man8/nologin.8 @@ -1,62 +1,62 @@ .\" Copyright (c) 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. .\" .\" @(#)nologin.8 8.1 (Berkeley) 6/19/93 -.\" %FreeBSD: src/sbin/nologin/nologin.8,v 1.10 2002/07/06 19:34:10 charnier Exp % +.\" %FreeBSD: src/sbin/nologin/nologin.8,v 1.12 2003/11/17 06:39:54 das Exp % .\" .\" $FreeBSD$ .Dd June 19, 1993 .Dt NOLOGIN 8 .Os .Sh 名称 .Nm nologin .Nd 丁寧に login を断る .Sh 書式 .Nm .Sh 解説 .Nm ユーティリティは、 そのアカウントが利用出来ない旨のメッセージを表示して、 0 でない値を返して終了します。 このコマンドは、利用不可能とするアカウントの shell フィールドを 置き換えるという用途を想定しています。 .Pp すべてのログインを無効にするには、 .Xr nologin 5 を調べてください。 .Sh 関連項目 .Xr login 1 , .Xr nologin 5 .Sh 歴史 .Nm ユーティリティは .Bx 4.4 から登場しています。 diff --git a/ja_JP.eucJP/man/man8/vinum.8 b/ja_JP.eucJP/man/man8/vinum.8 index bf3ba04c10..3a4faf7bf4 100644 --- a/ja_JP.eucJP/man/man8/vinum.8 +++ b/ja_JP.eucJP/man/man8/vinum.8 @@ -1,2802 +1,2809 @@ .\" 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.34 2003-10-13 02:42:27 horikawa Exp $ -.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.64 2003/09/08 19:57:18 ru Exp % +.\" $Id: vinum.8,v 1.35 2003-12-01 05:26:38 horikawa Exp $ +.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.65 2003/11/17 16:04:52 rwatson Exp % .\" .\" $FreeBSD$ .\" WORD: attach 結合 (する) .Dd May 5, 2003 .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 ユーティリティは、 Vinum 論理ボリュームマネージャのカーネルコンポーネントと通信します。 対話形式と、単独のコマンドを実行する形式のいずれも実行可能になっています。 コマンドライン引数を伴わずに .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 はそのプレックスを再統合します。 .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 内部デバッグフラグのビットマスクを設定します。 本製品が改良されるにつれ、このビットマスクは警告無しに変更されるでしょう。 確認のために、ヘッダファイル .In 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 はストライプの大きさが 279 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 は各オブジェクトについて多数の統計カウンタを保持しています。詳細は ヘッダファイル .In 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 コマンドの、単純な代替手段です。 サブディスクの大きさは、 全ドライブで利用可能な最大の連続空間の大きさです。 ストライプの大きさは 279 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 D: vinumdrive0 Size: 414 MB S vinum0.p0.s1 State: up D: vinumdrive1 Size: 573 MB S vinum0.p0.s2 State: up D: vinumdrive2 Size: 573 MB S vinum0.p0.s3 State: up D: vinumdrive3 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 279k 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 D: vinumdrive0 Size: 414 MB S vinum0.p0.s1 State: up D: vinumdrive1 Size: 414 MB S vinum0.p0.s2 State: up D: vinumdrive2 Size: 414 MB S vinum0.p0.s3 State: up D: vinumdrive3 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 vinum0.p0.s0 State: up D: vinumdrive0 Size: 414 MB S vinum0.p0.s2 State: up D: vinumdrive2 Size: 414 MB S vinum0.p0.s1 State: up D: vinumdrive1 Size: 414 MB S vinum0.p0.s3 State: up D: vinumdrive3 Size: 414 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 279k sd name raid10.p0.s0 drive vinumdrive0 size 849825b sd name raid10.p0.s1 drive vinumdrive2 size 849825b plex name raid10.p1 org striped 279k 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: 279 kB Size: 414 MB S raid10.p1.s0 State: up PO: 0 B Size: 573 MB S raid10.p1.s1 State: up PO: 279 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 ブロック という語を別の意味で使用していますので、 この短縮形は混乱させるものです。 この短縮形の価値は低下しています。 代りにキーワード 's' を使用してください。 .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 指定したプレックスをボリュームに追加します。 .Ar plexname が .Cm * として指定されると、 .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 の羃乗を使用すると、すべてのスーパブロックを 最初のサブディスクに置く傾向があるからです。 単純なコマンドでは、ストライプの大きさに 279 kB を使用するため、 スーパブロックが適度に分散されます。 .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 サブディスクが乗るドライブを指定します。デフォルトでは最後に記述された ドライブ上に位置します。 .It Cm retryerrors 回復不能エラーが発生しても、サブディスクがダウンとみなさないように指定します。 通常、 .Nm は、回復不能エラーが発生すると、サブディスク全体をアクセス不能とします。 .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 279k sd length 64m drive drive2 sd length 64m drive drive4 volume stripe plex org striped 279k 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 279k 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 491k sd length 1000m drive drive2 sd length 1000m drive drive4 plex org raid5 273k 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/log/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 433k 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 433k 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 433k 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 433k sd length 512m drive d1 sd length 512m drive d2 sd length 512m drive d3 sd length 512m drive d4 plex org striped 433k 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 433k 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: 433 kB Size: 2048 MB S raid.p0.s2 State: empty PO: 866 kB Size: 2048 MB S raid.p0.s3 State: empty PO: 1299 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 であることを期待する ccd とは異なります。 この .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 実際上は、プレックス作成時にその内容に多大な興味を持つ人はいないので、 他のボリュームマネージャはどんなときでも .Em 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 オプション付きで構築する必要があります。 なぜなら、両方のコンポーネントで使用されるデータオブジェクトに、 大きさが本オプションに依存しているものがあるからです。 前記のようにしないと、対応するエラーメッセージを表示してコマンドが失敗します。 .It .Nm Ic read コマンドの文法は、吐き気を催すものです。 これが唯一の .Nm 起動のためのコマンドでしたが、今の好ましい方法は .Nm Ic start です。 .Nm Ic read は整備のみに使用すべきです。 文法が変更されたので、引数が .Pa /dev/da0 のようなディスクスライスであり .Pa /dev/da0e のようなパーティションではないことに注意してください。 .El .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 -tag -width VINUM_DATEFORMAT .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/ , .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 が開発しました。 .Sh バグ .Xr vinum 4 は .Xr geom 4 サブシステムを使用しませんので、 .Xr vinum 4 ボリュームは GOEM ベースの機能、 例えば .Xr gbde 8 では使用できません。 +.Pp +.Xr vinum 4 +は、ブロックサイズが +.Dv DEV_BSIZE +(512) ではないデバイス上では動作しないので、スワップが背後にある +.Xr md 4 +デバイスでは使用できません。