diff --git a/ja_JP.eucJP/man/man1/builtin.1 b/ja_JP.eucJP/man/man1/builtin.1 index 9b68790c23..2402bdf752 100644 --- a/ja_JP.eucJP/man/man1/builtin.1 +++ b/ja_JP.eucJP/man/man1/builtin.1 @@ -24,9 +24,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/share/man/man1/builtin.1,v 1.5.2.7 2001/04/19 11:19:14 sheldonh Exp % +.\" %FreeBSD: src/share/man/man1/builtin.1,v 1.5.2.8 2001/05/02 02:18:15 dd Exp % .\" -.\" jpman %Id: builtin.1,v 0.0 1999/12/11 15:12:46 horikawa Stab % +.\" $FreeBSD:$ .Dd September 1, 1999 .Dt BUILTIN 1 .Os @@ -172,15 +172,15 @@ .It Ic alloc Ta \&No Ta Yes Ta \&No .It Ic bg Ta \&No Ta Yes Ta Yes .It Ic bindkey Ta \&No Ta Yes Ta \&No -.It Ic break Ta \&No Ta Yes Ta \&No +.It Ic break Ta \&No Ta Yes Ta \&Yes .It Ic breaksw Ta \&No Ta Yes Ta \&No .It Ic builtins Ta \&No Ta Yes Ta \&No .It Ic case Ta \&No Ta Yes Ta Yes .It Ic cd Ta \&No Ta Yes Ta Yes -.It Ic chdir Ta \&No Ta Yes Ta \&No +.It Ic chdir Ta \&No Ta Yes Ta \&Yes .It Ic command Ta \&No Ta \&No Ta Yes .It Ic complete Ta \&No Ta Yes Ta \&No -.It Ic continue Ta \&No Ta Yes Ta \&No +.It Ic continue Ta \&No Ta Yes Ta \&Yes .It Ic default Ta \&No Ta Yes Ta \&No .It Ic dirs Ta \&No Ta Yes Ta \&No .It Ic do Ta \&No Ta \&No Ta Yes @@ -188,7 +188,7 @@ .It Ic echo Ta Yes Ta Yes Ta Yes .It Ic echotc Ta \&No Ta Yes Ta \&No .It Ic elif Ta \&No Ta \&No Ta Yes -.It Ic else Ta \&No Ta Yes Ta \&No +.It Ic else Ta \&No Ta Yes Ta \&Yes .It Ic end Ta \&No Ta Yes Ta \&No .It Ic endif Ta \&No Ta Yes Ta \&No .It Ic endsw Ta \&No Ta Yes Ta \&No @@ -260,7 +260,7 @@ .It Ic wait Ta \&No Ta Yes Ta Yes .It Ic where Ta \&No Ta Yes Ta \&No .It Ic which Ta Yes Ta Yes Ta \&No -.It Ic while Ta \&No Ta Yes Ta \&No +.It Ic while Ta \&No Ta Yes Ta \&Yes .El .Sh 関連項目 .Xr csh 1 , diff --git a/ja_JP.eucJP/man/man2/statfs.2 b/ja_JP.eucJP/man/man2/statfs.2 index a494eb8c74..b0c3a67e2c 100644 --- a/ja_JP.eucJP/man/man2/statfs.2 +++ b/ja_JP.eucJP/man/man2/statfs.2 @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)statfs.2 8.5 (Berkeley) 5/24/95 -.\" %FreeBSD: src/lib/libc/sys/statfs.2,v 1.9.2.4 2000/12/29 14:44:54 ru Exp % +.\" %FreeBSD: src/lib/libc/sys/statfs.2,v 1.9.2.5 2001/05/01 13:07:25 dwmalone Exp % .\" .Dd May 24, 1995 .Dt STATFS 2 @@ -68,7 +68,6 @@ typedef struct fsid { int32_t val[2]; } fsid_t; /* #define MNAMELEN 90 /* 戻り値の用のバッファの長さ */ struct statfs { -long f_spare2; /* プレイスホルダー */ long f_bsize; /* ファイルシステムのブロックサイズ */ long f_iosize; /* 最適なトランスファーブロックサイズ */ long f_blocks; /* ファイルシステム上の合計ブロックサイズ */ @@ -78,17 +77,19 @@ long f_files; /* long f_ffree; /* ファイルシステム上の利用可能なノード数 */ fsid_t f_fsid; /* ファイルシステム ID 番号 */ uid_t f_owner; /* ファイルシステムをマウントしたユーザ */ -int f_type; /* ファイルシステムのタイプ (下記参照) */ +int f_type; /* ファイルシステムのタイプ */ int f_flags; /* マウントフラッグのコピー */ long f_syncwrites; /* マウントしてからの同期書き込み数 */ long f_asyncwrites; /* マウントしてからの非同期書き込み数 */ char f_fstypename[MFSNAMELEN];/* ファイルシステムタイプ名 */ -char f_mntonname[MNAMELEN]; /* マウントポイント */ -char f_mntfromname[MNAMELEN]; /* マウントされたファイルシステム */ +char f_mntonname[MNAMELEN]; /* マウントポイント */ +long f_syncreads; /* マウント以降の同期読み取り数 */ +long f_asyncreads; /* マウント以降の非同期読み取り数 */ +char f_mntfromname[MNAMELEN]; /* マウントされたファイルシステム */ }; .Ed 戻される可能性があるフラグは以下のとおりです。 -.Bl -tag -width MNT_ASYNCHRONOUS +.Bl -tag -width MNT_SYNCHRONOUS .It Dv MNT_RDONLY ファイルシステムが読取り専用でマウント されています。スーパユーザでも書込めません。 @@ -102,7 +103,7 @@ char f_mntfromname[MNAMELEN]; /* .It Dv MNT_SYNCHRONOUS ファイルシステムへのすべての入出力が、 同期を取って実行されます。 -.It Dv MNT_ASYNCHRONOUS +.It Dv MNT_ASYNC ファイルシステムの入出力が、同期を取って実行されません。 .It Dv MNT_LOCAL ファイルシステムがローカルに常駐しています。 diff --git a/ja_JP.eucJP/man/man7/ports.7 b/ja_JP.eucJP/man/man7/ports.7 index 54109d2e40..c656f7982c 100644 --- a/ja_JP.eucJP/man/man7/ports.7 +++ b/ja_JP.eucJP/man/man7/ports.7 @@ -23,7 +23,7 @@ .\" (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/ports.7,v 1.17.2.3 2000/12/29 10:18:05 ru Exp % +.\" %FreeBSD: src/share/man/man7/ports.7,v 1.17.2.4 2001/05/02 02:05:24 dd Exp % .\" .\" jpman %Id: ports.7,v 1.3 1999/01/24 06:53:11 horikawa Stab % .Dd January 25, 1998 @@ -115,8 +115,8 @@ MASTER_SITES .Ev MASTER_SITE_OVERRIDE とを参照して下さい。 .It Ar checksum -取得した distfile が port で動作確認されたものと一致するかどうかを検証 -します。 +取得した distfile のチェックサムが port で動作確認されたものと +一致するかどうかを検証します。 .Ev NO_CHECKSUM を定義することで、このステップを飛ばすことができます。 .It Ar depends @@ -171,7 +171,7 @@ package .It Ar distclean その port の distfile を削除し、 .Ar clean -を実行します。 +ターゲットを実行します。 .Ev NOCLEANDEPENDS を定義しておかない限り、 .Sq clean @@ -208,6 +208,35 @@ package これは、あなたのシステム上の全 port をウェブでブラウズできるようにするために、 .Pa /usr/ports から使用可能です。 +.It Ar search +.Pa INDEX +ファイルを、 +.Ar key +(port の名前、コメント、依存を調べます) または +.Ar name +(port の名前のみを調べます) ターゲットのいずれかで指定されたパターンで +検索します。 +例えば、次のように入力します: +.Pp +.Dl cd /usr/ports && make search name=query +.Pp +すると、全 ports のうち名前が +.Ql query +に適合するものが探されます。 +結果には、適合する ports のパス、コメント、メンテナ、構築依存、実行依存が +含まれます。 +.It Ar index +.Pa /usr/ports/INDEX +を作成します。 +これは、 +.Ar pretty-print-* +および +.Ar search +のターゲットで使用されます。 +CVS リポジトリのマスタ INDEX ファイルは定期的に更新されますが、 +.Ar index +ターゲットを実行することで、 +INDEX ファイルが ports ツリに対して最新であることを保証します。 .El .Sh 環境変数 これら環境変数のすべてを変更することができます。 diff --git a/ja_JP.eucJP/man/man8/diskless.8 b/ja_JP.eucJP/man/man8/diskless.8 index 10c05c3cb8..94cce22e71 100644 --- a/ja_JP.eucJP/man/man8/diskless.8 +++ b/ja_JP.eucJP/man/man8/diskless.8 @@ -1,5 +1,6 @@ .\" %NetBSD: diskless.8,v 1.11 1997/06/16 07:50:35 mrg Exp % -.\" %FreeBSD: src/share/man/man8/diskless.8,v 1.6.2.3 2001/04/20 23:15:25 luigi Exp % +.\" %FreeBSD: src/share/man/man8/diskless.8,v 1.6.2.4 2001/04/30 06:35:30 luigi Exp % +.\" $FreeBSD:$ .\" .\" Copyright (c) 1994 Gordon W. Ross, Theo de Raadt .\" Updated by Luigi Rizzo @@ -27,6 +28,7 @@ .\" (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/man8/diskless.8,v 1.6.2.4 2001/04/30 06:35:30 luigi Exp % .\" .Dd April 18, 2001 .Dt DISKLESS 8 @@ -89,17 +91,19 @@ pxeboot と .Pa /etc/rc.diskless2 とに列挙されています。 - .Sh 設定 ディスクレスクライアントを実行させるためには、次に示すものが必要です。 -.Pp -.Bl -bullet -compact +.Bl -bullet .It NFS サーバ。これは、適切なパーミッションを付けて ルートパーティションと /usr パーティションをエクスポートします。 いくつかのシステムファイルにアクセスできるようにするために、 -ルートパーティションが -maproot=0 でエクスポートされている限り、 -スクリプト rc.diskless{1,2} は読み込み専用パーミッションで動作します。 +ルートパーティションが +.Fl maproot Ns =0 +でエクスポートされている限り、 +スクリプト +.Pa rc.diskless{1,2} +は読み込み専用パーミッションで動作します。 例として .Pa /etc/exports は次に示す行を含みます。 @@ -108,47 +112,68 @@ NFS /usr -alldirs .Ed .Pp -ここで は、ルートパーティションのサーバ上でのマウントポイントです。 +ここで +.Aq ROOT +は、ルートパーティションのサーバ上でのマウントポイントです。 スクリプト .Pa /usr/share/examples/diskless/clone_root を使い、共用可能な読み込み専用ルートパーティションを 生成することができます。 しかし、同様に、サーバ自身が使用するルートディレクトリを (読み込み専用で) エクスポートさせると決めることもできます。 -.Pp .It -bootp または dhcp サーバ。bootpd は +.Tn BOOTP +または +.Tn DHCP +サーバ。 +.Xr bootpd 8 +は .Pa /etc/inetd.conf の -.Pa bootps +.Em bootps 行のコメントを外すことで使用可能にすることができます。 .Pa /etc/bootptab の例は次のようになります。 .Bd -literal -offset indent - .default:\ - hn:ht=1:vm=rfc1048:\ - :sm=255.255.255.0:\ - :sa=:\ - :gw=:\ + .default:\\ + hn:ht=1:vm=rfc1048:\\ + :sm=255.255.255.0:\\ + :sa=:\\ + :gw=:\\ :rp=":": :ha=0123456789ab:tc=.default .Ed .Pp -SERVER, GATEWAY, CLIENT の意味は明らかでしょう。 +.Aq SERVER , +.Aq GATEWAY , +.Aq CLIENT +の意味は明らかでしょう。 .Pp .It ルートパーティション上に、ディスクレスクライアント用の設定ファイルを 生成します。これらは、 .Pa /cont/${i}/etc -に置きます。ここで、${i} は、"default"、またはクライアントの +に置きます。ここで、 +.Va i +は、 +.Qq Li default +、またはクライアントの サブネットブロードキャストアドレス、またはクライアントの IP アドレスです。 .Pp -/etc/rc の主要な部分の実行 (これには、rc.conf の読み込みも含まれます) -の前に、/etc/rc.diskless.1 によって、ファイルが -上に記したディレクトリから /etc にコピーされ -(/etc にあったそれ以前の内容は上書きされます)、 +.Pa /etc/rc +の主要な部分の実行 (これには、 +.Pa rc.conf +の読み込みも含まれます) +の前に、 +.Pa /etc/rc.diskless.1 +によって、ファイルが +上に記したディレクトリから +.Pa /etc +にコピーされ ( +.Pa /etc +にあったそれ以前の内容は上書きされます)、 最も汎用のものから開始されます。 .Pp 最低でも、 @@ -166,17 +191,25 @@ proc /proc procfs rw 0 0 含むようにしたバージョンを用意する必要もあります。 .Pp スタートアップコードで既に設定されているため、 -hostname や ifconfig_* を指定する必要はまずないでしょう。 +.Va hostname +や +.Va ifconfig_* +を指定する必要はまずないでしょう。 一方、サーバのローカルスタートアップファイルを使用しないようにするため、 -local_startup="" を設定する必要があるでしょう。 +.Va local_startup Ns = Ns Qq +を設定する必要があるでしょう。 最後になりますが、 複数のディスクレスクライアントで同じ設定ファイルを共有する場合、 -`hostname` の値をスイッチ変数に使う case 文を用いて、 -マシン固有の設定を行なうようにするといいかもしれません。 +.Li `hostname` +の値をスイッチ変数に使う +.Ic case +文を用いて、 +マシン固有の設定を行なうようにすると良いかもしれません。 .Pp .It -カーネルを構築します。その際、設定ファイル -(/sys/i386/conf/DISKLESS など) には、少なくとも +カーネルを構築します。その際、設定ファイル ( +.Pa /sys/i386/conf/DISKLESS +など) には、少なくとも 次のオプションを含めておきます。 .Bd -literal -offset indent options MFS @@ -193,13 +226,17 @@ options BOOTP_COMPAT 暗号化されない NFS を使用してルートパーティションと ユーザパーティションをマウントすると、暗号化キーなどの 情報が洩れるかもしれないことに注意して下さい。 -.Pp .Sh バグ このマニュアルページはおそらく不完全です。 .Pp -FreeBSD はときどきルートパーティションに書き込みを要求します。 +.Fx +はときどきルートパーティションに書き込みを要求します。 ですから、スタートアップスクリプトでは、元の内容を保存する間、 -MFS ファイルシステムをいくつかの位置 (/etc や /var など) に +MFS ファイルシステムをいくつかの位置 ( +.Pa /etc +や +.Pa /var +など) に マウントします。この処理はすべての場合を扱えないかもしれません。 .Sh 関連項目 .Xr ethers 5 , diff --git a/ja_JP.eucJP/man/man8/picobsd.8 b/ja_JP.eucJP/man/man8/picobsd.8 index 766aeda0a1..ad3c9dc785 100644 --- a/ja_JP.eucJP/man/man8/picobsd.8 +++ b/ja_JP.eucJP/man/man8/picobsd.8 @@ -1,9 +1,9 @@ .\" -*- nroff-fill -*- -.\" %FreeBSD: src/share/man/man8/picobsd.8,v 1.1.2.5 2001/04/21 00:04:29 luigi Exp % -.Dd December 23, 1999 -.\" jpman %Id: picobsd.8,v 1.3 2000/08/10 13:49:12 horikawa Stab % -.Os FreeBSD -.Dt PicoBSD 8 +.\" %FreeBSD: src/share/man/man8/picobsd.8,v 1.1.2.6 2001/04/30 06:35:30 luigi Exp % +.\" $FreeBSD:$ +.Dd April 21, 2001 +.Os +.Dt PICOBSD 8 .Sh 名称 .Nm picobsd .Nd フロッピディスクベースの FreeBSD システム @@ -11,7 +11,6 @@ .Nm .Op Fl n .Op Ar floppy-type Op Ar site-name -.Pp .Sh 解説 .Nm は、1 枚ないし数枚のフロッピディスク上に実装した最小限の @@ -60,11 +59,11 @@ プログラムによっては最小限のバージョンが提供されています。 .Nm ns は -.Nm netstat +.Xr netstat 1 の機能限定版であり、 .Nm vm は -.Nm vmstat +.Xr vmstat 8 の機能限定版です。 .El .Sh picobsd の構築 @@ -77,13 +76,14 @@ の構築過程は、時とともに少し変化しました。 コード量の不可避な増加に対応するために、 なるべく多くをフロッピに詰め込むための沢山のからくりが必要となったからです。 -FreeBSD 4.3 では、サポートされている構築スクリプトは +.Fx 4.3 +では、サポートされている構築スクリプトは .Pa /usr/src/release/picobsd/build/picobsd であり、どこからでも実行可能です。 この対話的なスクリプトは、いくつかパラメータを尋ねた後、 適切な単一フロッピ版を構築します。 次の種類のフロッピが想定されています: -.Bl -hang +.Bl -hang -width "install " .It bridge はブリッジ、ルータ、ファイアウォールに適したコンフィギュレーションです。 .It dial @@ -110,25 +110,27 @@ FreeBSD 4.3 このためには次のものを含む好み (例 FOO) のディレクトリを作成します。 .Pp .Bl -tag -width "floppy.tree.exclude" -compact -.It PICOBSD +.It Pa PICOBSD カーネルコンフィギュレーションファイル (必須)。 -.It crunch.conf +.It Pa crunch.conf crunchgen コンフィギュレーションファイル (必須)。 -.It config -"picobsd" スクリプトが読み取るシェル変数 (省略可能)。 -.It floppy.tree.exclude +.It Pa config +.Pa picobsd +スクリプトが読み取るシェル変数 (省略可能)。 +.It Pa floppy.tree.exclude 標準フロッピツリーから得る、必須ではないファイル (省略可能)。 -.It floppy.tree/ +.It Pa floppy.tree/ 標準フロッピツリーへの、ローカルな追加 (省略可能)。 -.It floppy.tree.${site} +.It Pa floppy.tree.${site} 上と同じですが、サイト固有です (省略可能)。 .El - -構築過程に関する更なる情報は、"picobsd" スクリプトに記述されています。 +.Pp +構築過程に関する更なる情報は、 +.Pa picobsd +スクリプトに記述されています。 サンプルのコンフィギュレーションは -.Pa /usr/src/release/picobsd/${type}/ +.Pa /usr/src/release/picobsd/ Ns ${type} Ns / にあります。 - .Sh PicoBSD のブート .Nm をブートするには、フロッピを挿入してマシンをリセットします。 @@ -142,7 +144,9 @@ POST (BIOS ブートを高速化するには、 .Xr etherboot を使用して、ロード済みで圧縮を伸長したカーネルイメージをロードしてください。 -このイメージは、picobsd 構築過程で生成されます。 +このイメージは、 +.Nm +構築過程で生成されます。 この場合、10Mbit/s イーサネットでさえ、ロード時間は数秒になります、 .Ss スワップ空間 ブート後は、 @@ -170,8 +174,6 @@ POST (BIOS .Xr crunchgen 1 , .Xr swapon 8 , .Xr vnconfig 8 -.\" .Sh STANDARDS -.\" .Sh HISTORY .Sh 作者 .An -nosplit .An Andrzej Bialecki Aq abial@FreeBSD.org @@ -179,20 +181,25 @@ POST (BIOS スクリプト関連の仕事を .An Luigi Rizzo Aq luigi@iet.unipi.it 等が引き継ぎました。 -マニュアルページと Makefile の作成は +マニュアルページと +.Pa Makefile +の作成は .An Greg Lehey Aq grog@lemis.com が行いました。 .Sh バグ .Nm を構築する際、 構築作業を行うシステムのカーネルには -.Nm vn +.Xr vn 4 ドライバがインストールされていなければなりません。 .Pp 構築の過程は -.Nm root +.Dq root で実行しなければなりません。 -vnconfig と mount を実行する必要があるためです。 +.Xr vnconfig 8 +と +.Xr mount 8 +を実行する必要があるためです。 .Pp .Nm の構築には、依然、中身の見えにくいところがあります。 diff --git a/ja_JP.eucJP/man/man8/sysinstall.8 b/ja_JP.eucJP/man/man8/sysinstall.8 index aa69a74956..24414c9d86 100644 --- a/ja_JP.eucJP/man/man8/sysinstall.8 +++ b/ja_JP.eucJP/man/man8/sysinstall.8 @@ -1,4 +1,3 @@ - .\" Copyright (c) 1997 .\" Jordan Hubbard . All rights reserved. .\" @@ -23,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" %FreeBSD: src/release/sysinstall/sysinstall.8,v 1.31.2.9 2001/03/22 01:43:47 ps Exp % +.\" %FreeBSD: src/release/sysinstall/sysinstall.8,v 1.31.2.10 2001/04/29 19:08:21 olgeni Exp % .\" .\" jpman %Id: sysinstall.8,v 1.3 2001/04/05 02:42:23 kuma Stab % .Dd August 9, 1997 @@ -154,6 +153,16 @@ package 関数は、既知の変数名を調べることで、その引数を得ます。 したがって、ある変数を必要とする関数を呼び出す前には、 関連する変数を予め設定しておく必要があります。 +.Pp +各ディレクティブの前に +.Ar noError +変数を設定しておくことが可能です。 +これにより、ディレクティブ自身は無視されるような場合においても、 +エラーを検知可能とします。 +値 +.Ar noError +は、ディレクティブが処理されるたびに、デフォルトの "未設定" に戻します。 +.Pp いつどの関数が、どの変数に依存するかを、 下の表に示します。 .Pp diff --git a/ja_JP.eucJP/man/man8/vinum.8 b/ja_JP.eucJP/man/man8/vinum.8 index 1de18d679e..9f50b4de00 100644 --- a/ja_JP.eucJP/man/man8/vinum.8 +++ b/ja_JP.eucJP/man/man8/vinum.8 @@ -21,7 +21,7 @@ .\" 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. @@ -34,291 +34,244 @@ .\" 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.13 2000/01/03 03:12:56 grog Exp grog % -.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.33.2.7 2001/03/13 03:04:06 grog Exp % +.\" %Id: vinum.8,v 1.48 2001/01/15 22:15:05 grog Exp % +.\" %FreeBSD: src/sbin/vinum/vinum.8,v 1.33.2.8 2001/04/27 10:35:19 ru Exp % .\" -.\" jpman %Id: vinum.8,v 1.3 1999/01/05 15:15:53 horikawa Stab % +.\" $FreeBSD:$ .\" WORD: attach 結合 (する) .Dd December 20, 2000 -.Dt vinum 8 +.Dt VINUM 8 .Sh 名称 .Nm vinum .Nd 論理ボリュームマネージャの制御プログラム .Sh 書式 .Nm -.Op command +.Op Ar command .Op Fl options .Sh コマンド -.Cd attach Ar plex Ar volume -.Op Nm rename -.Cd attach Ar subdisk Ar plex Ar [offset] -.Op Nm rename -.in +1i +.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 プレックスをボリュームに、またはサブディスクをプレックスに結合します。 -.in -.Cd checkparity Ar plex Op Fl f -.Op Fl v -.in +1i +.It Xo +.Ic checkparity Ar plex +.Op Fl f RAID-4 または RAID-5 のプレックスのパリティブロックを検査します。 -.in -.Nm concat +.Xc +.It Xo +.Ic concat .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives -.in +1i +.Xc 指定したドライブからコンカチネート化ボリュームを作成します。 -.in -.Cd create Op Fl f Ar description-file +.It Xo +.Ic create .Op Fl f .Ar description-file -.in +1i +.Xc .Ar description-file の記述に従ってボリュームを作成します。 -.in -.Cd debug -.in +1i +.It Ic debug ボリュームマネージャをカーネルデバッガに移行させます。 -.in -.Cd debug -.Ar flags -.in +1i +.It Ic debug Ar flags デバッグフラグを設定します。 -.in -.Cd detach +.It Xo +.Ic detach .Op Fl f .Op Ar plex | subdisk -.in +1i +.Xc 結合されていたボリュームやプレックスから、プレックスやサブディスクを分離します。 -.in -.Cd dumpconfig -.Op Ar drive ... -.in +1i +.It Ic dumpconfig Op Ar drive ... 指定されたドライブに格納されている設定情報を表示します。 ドライブ名を指定しないと、システムの全ドライブの情報を表示します。 -.in -.Cd info +.It Xo +.Ic info .Op Fl v .Op Fl V -.in +1i +.Xc ボリュームマネージャの状態を表示します。 -.in -.Cd init +.It Xo +.Ic init .Op Fl S Ar size .Op Fl w .Ar plex | subdisk -.in +1i +.Xc .\" XXX サブディスクまたはプレックスの全サブディスクの内容をすべて 0 に初期化します。 -.in -.Cd label -.Ar volume -.in +1i +.It Ic label Ar volume ボリュームラベルを作成します。 -.in -.Cd list +.It Xo +.Ic l | list .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op volume | plex | subdisk -.in +1i +.Op Ar volume | plex | subdisk +.Xc 指定したオブジェクトの情報を表示します。 -.in -.Cd l +.It Xo +.Ic ld .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op volume | plex | subdisk -.in +1i -指定したオブジェクトの情報を表示します ( -.Cd list -コマンドの別形式)。 -.in -.Cd ld -.Op Fl r -.Op Fl s -.Op Fl v -.Op Fl V -.Op volume -.in +1i +.Op Ar volume +.Xc ドライブの情報を表示します。 -.in -.Cd ls +.It Xo +.Ic ls .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op subdisk -.in +1i +.Op Ar subdisk +.Xc サブディスクの情報を表示します。 -.in -.Cd lp +.It Xo +.Ic lp .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op plex -.in +1i +.Op Ar plex +.Xc プレックスの情報を表示します。 -.in -.Cd lv +.It Xo +.Ic lv .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op volume -.in +1i +.Op Ar volume +.Xc ボリュームの情報を表示します。 -.in -.Cd makedev -.in +1i +.It Ic makedev .Ar /dev/vinum にデバイスノードを再作成します。 -.in -.Nm mirror +.It Xo +.Ic mirror .Op Fl f .Op Fl n Ar name .Op Fl s .Op Fl v .Ar drives -.in +1i +.Xc 指定したドライブからミラー化ボリュームを作成します。 -.in -.Cd mv Fl f Ar drive Ar object ... -.br -.Cd move Fl f Ar drive Ar object ... -.in +1i +.It Xo +.Ic move | mv +.Fl f +.Ar drive object ... +.Xc 指定したドライブにオブジェクトを移動します。 -.in -.Cd printconfig -.Op Pa file -.in +1i +.It Ic printconfig Op Ar file 現在の設定のコピーを -.Pa file +.Ar file へ書き込みます。 -.in -.Cd quit -.in +1i +.It Ic quit 対話モード時に、 .Nm プログラムを終了します。通常 -.Ar EOF +.Dv EOF 文字を入力することにより実現できます。 -.in -.Cd read -.Ar disk Op disk... -.in +1i +.It Ic read Ar disk ... 指定したディスクから .Nm の設定を読み出します。 -.in -.Cd rename Op Fl r -.Ar [ drive | subdisk | plex | volume ] -.Ar newname -.in +1i +.It Xo +.Ic rename Op Fl r +.Op Ar drive | subdisk | plex | volume +.Xc 指定したオブジェクトの名前を変更します。 -.in -.ig -XXX -.Cd replace -.Ar drive -.Ar newdrive -.in +1i -指定したドライブから新しいドライブ上へすべてのサブディスクを移動します。 -.in -.. -.Cd rebuildparity Ar plex Op Fl f -.Op Fl v +.\" XXX +.\".It Ic replace Ar drive newdrive +.\"指定したドライブから新しいドライブ上へすべてのサブディスクを移動します。 +.It Xo +.Ic rebuildparity Ar plex Op Fl f +.Op Fl v .Op Fl V -.in +1i +.Xc RAID-4 または RAID-5 のプレックスのパリティブロックを再構築します。 -.in -.Cd resetconfig -.in +1i +.It Ic resetconfig すべての .Nm の設定をリセットします。 -.in -.Cd resetstats +.It Xo +.Ic resetstats .Op Fl r .Op volume | plex | subdisk -.in +1i +.Xc 指定したオブジェクトの統計情報をリセットします。指定がない場合はすべての オブジェクトが対象です。 -.in -.Cd rm +.It Xo +.Ic rm .Op Fl f .Op Fl r .Ar volume | plex | subdisk -.in +1i +.Xc オブジェクトを削除します。 -.in -.Cd saveconfig -.in +1i +.It Ic saveconfig 設定失敗後に、 .Nm の設定をディスクへ保存します。 -.in -.ig -XXX -.Cd set -.Op Fl f -.Ar state -.Ar volume | plex | subdisk | disk -.in +1i -オブジェクトの状態を \fIstate\fP\| に設定します。 -.in -.. -.Cd setdaemon -.Op value -.in +1i +.\" XXX +.\".It Xo +.\".Ic set +.\".Op Fl f +.\".Ar state +.\".Ar volume | plex | subdisk | disk +.\".Xc +.\"オブジェクトの状態をに設定します。 +.\".Ar state +.\"に設定します。 +.It Ic setdaemon Op Ar value デーモンの設定を与えます。 -.in -.Cd setstate +.It Xo +.Ic setstate .Ar state .Op Ar volume | plex | subdisk | drive -.in +1i +.Xc 他のオブジェクトに影響を与えずに状態を設定します。 診断のためだけに使用します。 -.in -.Cd start -.in +1i +.It Ic start 全 vinum ドライブから設定を読み込みます。 -.in -.Cd start +.It Xo +.Ic start .Op Fl i Ar interval .Op Fl S Ar size .Op Fl w -volume | plex | subdisk -.in +1i +.Ar volume | plex | subdisk +.Xc システムがオブジェクトへアクセスできるようにします。 -.in -.Cd stop +.It Xo +.Ic stop .Op Fl f -.Op volume | plex | subdisk -.in +1i +.Op Ar volume | plex | subdisk +.Xc オブジェクトへのアクセスを終了させます。 パラメータを指定しないと、 .Nm を停止させます。 -.in -.Nm stripe +.It Xo +.Ic stripe .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives -.in +1i +.Xc 指定したドライブからストライプ化ボリュームを作成します。 -.in +.El .Sh 解説 .Nm -は \fBVinum\fP\| 論理ボリュームマネージャと通信するための -ユーティリティプログラムです。 -ボリュームマネージャの詳細については +は .Xr vinum 4 -を参照してください。 +論理ボリュームマネージャと通信するための +ユーティリティプログラムです。 .Nm は対話形式と、単独のコマンドを実行する形式のいずれも実行可能になっています。 コマンドライン引数を伴わずに @@ -329,38 +282,36 @@ volume | plex | subdisk 対話モードでは、 .Nm はコマンドラインヒストリを保持します。 -.Ss オプション +.Sh オプション .Nm のコマンドにはオプションを付加することができます。どのコマンドにも 下記オプションのどれでも指定することができますが、 オプションが無視される場合があります。例えば、 -.Nm stop +.Ic stop コマンドは .Fl v オプションと .Fl V オプションを無視します。 -.Bl -hang +.Bl -tag -width indent .It Fl f .Fl f -.if t (``force: 強制'') -.if n ("force: 強制") +Pq Dq force: 強制 オプションは安全性の確認を無効にします。細心の注意を払って 使用して下さい。 このオプションは緊急時にのみ使用するものです。例えば、 コマンド -.Bd -unfilled -offset indent -rm -f myvolume -.Ed +.Pp +.Dl rm -f myvolume .Pp は .Ar myvolume がオープンされていたとしても削除します。以降、このボリュームに アクセスすると、ほぼ確実にパニックを起こします。 .It Fl i Ar millisecs -.Nm init +.Ic init または -.Nm start +.Ic start のコマンドを実行時、各ブロックのコピーの間に .Ar millisecs ミリ秒待ちます。 @@ -369,47 +320,43 @@ rm -f myvolume ボリューム名を指定するために .Fl n オプションを使用します。単純な設定コマンド -.Nm concat , -.Nm mirror , -.Nm stripe +.Ic concat , +.Ic mirror , +.Ic stripe 用です。 .It Fl r .Fl r -.if t (``recursive: 再帰的'') -.if n ("recursive: 再帰的") +.Pq Dq recursive: 再帰的 オプションは表示系のコマンドで使い、 指示したオブジェクト だけでなく、下位のオブジェクトの情報も表示します。 例えば、 -.Nm lv +.Ic lv コマンドとともに使われる場合、 .Fl r オプションは対象のボリュームに属するプレックスとサブディスクの情報も表示します。 .It Fl s .Fl s -.if t (``statistics: 統計'') -.if n ("statistics: 統計") +.Pq Dq statistics: 統計 オプションは表示系のコマンドで統計情報を表示するために使います。 -.Nm mirror +.Ic mirror コマンドもこのオプションを使用し、 ストライプ化プレックスを作成すべきことを示します。 .It Fl S Ar size .Fl S オプションは、 -.Nm init +.Ic init と -.Nm start +.Ic start コマンドのための転送サイズを指定します。 .It Fl v .Fl v -.if t (``verbose: 冗長'') -.if n ("verbose: 冗長") +.Pq Dq verbose: 冗長 オプションは、 さらに詳細な情報を要求するために使用します。 .It Fl V .Fl V -.if t (``Very verbose: とても冗長'') -.if n ("Very verbose: とても冗長") +.Pq Dq Very verbose: とても冗長 オプションは、 .Fl v オプションが提供するものよりもさらに詳細な情報を要求するために使用します。 @@ -418,29 +365,26 @@ rm -f myvolume コマンドではベリファイを意味します。 .It Fl w .Fl w -.if t (``wait: 待ち'') -.if n ("wait: 待ち") +.Pq Dq wait: 待ち オプションは、 -.Nm init +.Ic init のように通常はバックグラウンドで実行するコマンドの完了を、 .Nm に待たせます。 .El -.Pp -.Ss コマンドの詳細 -.Pp +.Sh コマンドの詳細 .Nm コマンドは以下の機能を実行します。 -.Bl -hang -.It Nm attach Ar plex Ar volume -.Op Nm rename -.if n .sp -1v -.if t .sp -.6v -.It Nm attach Ar subdisk Ar plex Ar [offset] -.Op Nm rename -.sp -.Nm -.Ar attach +.Pp +.Bl -tag -width indent -compact +.It Ic attach Ar plex volume Op Cm rename +.It Xo +.Ic attach Ar subdisk plex +.Op Ar offset +.Op Cm rename +.Xc +.Nm Ic attach +.Nm Ic attach は指定されたプレックスやサブディスクをそれぞれボリュームやプレックスに 組み込みます。サブディスクに ついては、プレックス中の始点 (オフセット) を指定することができます。 @@ -450,15 +394,15 @@ rm -f myvolume .Nm はそのプレックスを再統合します。 .Pp -.Nm rename +.Cm rename キーワードが指定されると、 .Nm はオブジェクトの (プレックスの場合には下位のサブディスクの) 名前を変更して デフォルトの -.Nm +.Nm 命名規則に合わせます。 オブジェクトを他の名前に変更するには、 -.Nm rename +.Ic rename コマンドを使用します。 .Pp サブディスク結合に際しては、いくつか考慮すべきことがあります: @@ -488,48 +432,52 @@ rm -f myvolume 3 番目は 542k に、などとなります。 この計算では、RAID-5 プレックスのパリティブロックは無視されます。 .El -.It Nm checkparity +.Pp +.It Xo +.Ic checkparity .Ar plex .Op Fl f .Op Fl v -.Pp +.Xc 指定した RAID-4 または RAID-5 プレックスのパリティブロックをチェックします。 この操作はプレックス中のポインタを維持しますので、 望むならば、一時停止して後で同じ場所から再開可能です。 さらに、このポインタは -.Nm rebuildparity +.Ic rebuildparity コマンドも使用します。 最初にパリティの問題が検出された箇所から、 パリティブロックの再構築を開始可能です。 .Pp .Fl f フラグが指定されると、 -.Nm checkparity +.Ic checkparity はプレックスの先頭からチェックを開始します。 .Fl v フラグが指定されると、 -.Nm checkparity +.Ic checkparity は進捗報告を表示します。 -.It Nm concat +.Pp +.It Xo +.Ic concat .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives -.br -.Nm concat +.Xc +.Ic concat コマンドは、単一のコンカチネート化プレックスからなるボリュームを作成する -.Nm create +.Ic create コマンドの、単純な代替手段です。 各ドライブ中の最大の連続空間が、 プレックスのサブディスク作成のために使用されます。 .Pp 通常、 -.Nm concat +.Ic concat コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト -.Ar vinum +.Dq Li vinum および小さな整数からなり、例えば -.Ar vinum3 +.Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name @@ -541,24 +489,27 @@ rm -f myvolume .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト -.Ar vinumdrive +.Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば -.Ar vinumdrive7 +.Dq Li vinumdrive7 となります。 -.Nm create +.Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp -このコマンドの例は、後述の「単純な設定」の節を参照してください。 -.Cd create +このコマンドの例は、後述の +.Sx 単純な設定 +の節を参照してください。 +.Pp +.It Xo +.Ic create .Op Fl f .Ar description-file -.sp -.Nm -.Ar create +.Xc +.Nm Ic create はどのオブジェクトの作成にも使われます。相互の関連性が比較的複雑で .Nm オブジェクトの作成には潜在的に危険があることを考慮して、この機能には対話的な @@ -573,40 +524,39 @@ rm -f myvolume はこのエディタを起動します。設定されていない場合のデフォルトは .Nm vi です。 -詳細は後述の設定ファイルの節を参照して下さい。 +詳細は後述の +.Sx 設定ファイル +の節を参照して下さい。 .Pp -.Nm -の -.Ar create +.Nm Ic create 機能は加法的であることに注意してください: 複数回実行すると、名前付けしていない全オブジェクトのコピーを、 複数生成することになります。 .Pp 通常 -.Nm create +.Ic create は既存の .Nm ドライブの名前を変更しません。これは、誤って消去してしまうのを避けるためです。 不要な .Nm ドライブを破棄する正しい方法は、 -.Nm resetconfig +.Ic resetconfig コマンドで設定をリセットすることです。 しかし、起動できない .Nm ドライブ上に新規データを生成する必要がある場合があります。 この場合、 -.Nm create Fl f +.Ic create Fl f を使用してください。 -.It Nm debug .Pp +.It Ic debug 引数無しの -.Nm -.Ar debug +.Nm Ic debug は、リモートカーネルデバッガに入るために使用します。これは .Nm が -.Ar VINUMDEBUG +.Dv VINUMDEBUG オプション付きで作成されている場合にのみ実行可能です。 このオプションはカーネルデバッガから抜け出るまでオペレーティング システムの実行を停止させます。 @@ -614,57 +564,49 @@ rm -f myvolume カーネルデバッガへのリモートコネクションがないと、 デバッガから抜け出るためにはシステムをリセットしてリブート することが必要になります。 -.It Nm debug -.Ar flags .Pp +.It Ic debug Ar flags 内部デバッグフラグのビットマスクを設定します。 本製品が改良されるにつれ、このビットマスクは警告無しに変更されるでしょう。 確認のために、ヘッダファイル -.Pa sys/dev/vinumvar.h +.Aq Pa sys/dev/vinumvar.h を見てください。 ビットマスクは次の値から構成されます: -.Bl -hang -.It DEBUG_ADDRESSES (1) -.br +.Bl -tag -width indent +.It Dv DEBUG_ADDRESSES Pq No 1 リクエスト中のバッファ情報を表示します。 -.ig -.It DEBUG_NUMOUTPUT (2) -.br -.Dv vp->v_numoutput -の値を表示します。 -.. -.It DEBUG_RESID (4) -.br +.\".It Dv DEBUG_NUMOUTPUT Pq No 2 +.\".Va vp->v_numoutput +.\" の値を表示します。 +.It Dv DEBUG_RESID Pq No 4 .Fn complete_rqe においてデバッガに移行します。 -.It DEBUG_LASTREQS (8) -.br +.It Dv DEBUG_LASTREQS Pq No 8 最新のリクエストのリングバッファを保存します。 -.It DEBUG_REVIVECONFLICT (16) -.br +.It Dv DEBUG_REVIVECONFLICT Pq No 16 再生における衝突に関する情報を表示します。 -.It DEBUG_EOFINFO (32) -.br -ストライププレックスで EOF を返すとき、内部状態の情報を表示します。 -.It DEBUG_MEMFREE (64) -.br +.It Dv DEBUG_EOFINFO Pq No 32 +ストライププレックスで +.Dv EOF +を返すとき、内部状態の情報を表示します。 +.It Dv DEBUG_MEMFREE Pq No 64 最後にメモリアロケータが解放したメモリ領域に関する循環リストを管理します。 -.It DEBUG_REMOTEGDB (256) -.br -.Nm debug +.It Dv DEBUG_REMOTEGDB Pq No 256 +.Ic debug コマンドが発行されたときに、リモート -.Ic gdb +.Nm gdb に移行します。 +.It Dv DEBUG_WARNINGS Pq No 512 +実装内のミラーの問題に関する警告を表示します。 .El -.It Nm detach Op Fl f -.Ar plex -.if n .sp -1v -.if t .sp -.6v -.It Nm detach Op Fl f -.Ar subdisk -.sp -.Nm -.Ar detach +.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 は指定されたプレックスやサブディスクを、 結合されているボリュームやプレックスから 分離します。分離するとボリュームのデータが欠ける可能性のある @@ -672,37 +614,40 @@ rm -f myvolume .Fl f オプションを指定しない限り実行されません。 オブジェクトが上位のオブジェクトに従った名前になっている場合 -(例えば、プレックス vol1.p7 に結合されているサブディスク vol1.p7.s0 の場合)、 +(例えば、プレックス +.Li vol1.p7 +に結合されているサブディスク +.Li vol1.p7.s0 +の場合)、 その名前は頭に -.if t ``ex-'' -.if n "ex-" +.Dq Li ex- がついたものに変更されます -(例えば ex-vol1.p7.s0 に変更されます)。 +(例えば +.Li ex-vol1.p7.s0 +に変更されます)。 その後の処理で必要であれば、その名前から頭の部分が外されます。 .Pp ストライプ化プレックスおよび RAID-5 プレックスにおいては、 -.Nm detach +.Ic detach はサブディスク数を減らしません。 その代わり、サブディスクには存在しないという印が付けられ、後で -.Nm attach +.Ic attach コマンドを使用して交換可能となります。 -.It Nm dumpconfig Op Ar drive ... .Pp -.Nm -.Ar dumpconfig +.It Ic dumpconfig Op Ar drive ... +.Nm Ic dumpconfig は、指定されたドライブ上に保管された設定情報を表示します。ドライブ名が 指定されていない場合、 -.Nm dumpconfig +.Ic dumpconfig はシステム上にあるすべてのドライブから vinum パーティションを探し出し、 その情報をダンプします。設定の更新を無効にしている場合、このコマンドが 返す情報と -.Nm list +.Ic list コマンドが返す情報とが同じにならないことがあります。このコマンドは、 主に保守およびデバッグ用に使用されるものです。 -.It Nm info -.br -.Nm -.Ar info +.Pp +.It Ic info +.Nm Ic info は .Nm のメモリ使用に関する情報を表示します。これは主にデバッグのためのものです。 @@ -713,11 +658,10 @@ rm -f myvolume オプションを付けると、 .Nm ドライバが扱った最大 64 個までの最近の I/O リクエストに関する情報を、 -.Ar info +.Ic info は表示します。 この情報は、デバッグフラグ 8 が設定されているときのみ収集されます。 書式は次のようになります: -.Pp .Bd -literal vinum -> info -V Flags: 0x200 1 opens @@ -765,7 +709,7 @@ Time Event Buf Dev Offset Bytes SD .Ar 6 までの数字はイベントの大まかなシーケンスを示し、 2 文字の省略形は位置のニーモニックです。 -.Bl -hang +.Bl -tag -width Lockwait .It 1VS (vinum の strategy) .Fn vinumstrategy @@ -783,6 +727,7 @@ Time Event Buf Dev Offset Bytes SD パラメータは .Ar 1VS の情報と同じはずです。 +.El .Pp ここから後のリクエストでは、利用可能である場合、 .Ar Dev @@ -791,7 +736,7 @@ Time Event Buf Dev Offset Bytes SD はパーティションの先頭からのオフセットであり、 .Ar SD は -.Dv vinum_conf +.Va vinum_conf 中のサブディスクインデックスであり。 .Ar SDoff はサブディスクの先頭からのオフセットであり、 @@ -799,6 +744,7 @@ Time Event Buf Dev Offset Bytes SD は関連付けられたデータリクエストのオフセットであり、 .Ar Goffset は関連付けられたグループリクエストのオフセットです。 +.Bl -tag -width Lockwait .It 3RQ (リクエスト) 高レベルのリクエストを満たすために発行される、 いくつかありうる低レベル @@ -823,7 +769,7 @@ Time Event Buf Dev Offset Bytes SD .Fn complete_raid5_write から発行されたリクエストにマッチするはずです。 .It 5RD -(RAID-5 データ) +(RAID-5 データ) .Fn complete_raid5_write から呼ばれ、 パリティ計算後に RAID-5 データストライプへ書き込まれたデータを表現します。 @@ -853,13 +799,14 @@ Time Event Buf Dev Offset Bytes SD パラメータはレンジロックと同じです。 .El .\" XXX -.It Nm init Op Fl S -.Ar size +.Pp +.It Xo +.Ic init +.Op Fl S Ar size .Op Fl w .Ar plex | subdisk -.Pp -.Nm -.Ar init +.Xc +.Nm Ic init は指定したサブディスクに 0 を書き込んで初期化します。 プレックスが指定された場合はプレックス内の全サブディスクを初期化できます。 これはプレックス中のデータに矛盾のないことを確実にする唯一の方法です。 @@ -878,87 +825,88 @@ RAID-5 指定できます。 .Nm は初期化が完了するとコンソールメッセージを出力します。 -.It Nm label -.Ar volume .Pp -.Nm label +.It Ic label Ar volume +.Ic label コマンドは、ボリュームに -.Ar ufs +.Em ufs 形式のボリュームラベルを書き込みます。これは適切に -.Ar disklabel +.Ic disklabel を呼び出すことに対しての、単純な代替方法です。 いくつかの -.Ar ufs +.Em ufs コマンドはラベルを入手するために正規の -.Ar ioctl +.Xr ioctl 2 コールを使わず、依然としてラベルを捜してディスクの読み込みを行う ため、このコマンドは必要になります。 .Nm はボリュームのデータとは別にボリュームラベルを保持しているため、この コマンドは -.Ar newfs -用には必要ありません。 このコマンドの価値は低下しています。 +.Xr newfs 8 +用には必要ありません。 +このコマンドの価値は低下しています。 .Pp -.It Nm list +.It Xo +.Ic list .Op Fl r .Op Fl V -.Op volume | plex | subdisk -.if n .sp -1v -.if t .sp -.6v -.It Nm l +.Op Ar volume | plex | subdisk +.Xc +.It Xo +.Ic l .Op Fl r .Op Fl V -.Op volume | plex | subdisk -.if n .sp -1v -.if t .sp -.6v -.It Nm ld +.Op Ar volume | plex | subdisk +.Xc +.It Xo +.Ic ld .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op volume -.if n .sp -1v -.if t .sp -.6v -.It Nm ls +.Op Ar volume +.Xc +.It Xo +.Ic ls .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op subdisk -.if n .sp -1v -.if t .sp -.6v -.It Nm lp +.Op Ar subdisk +.Xc +.It Xo +.Ic lp .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op plex -.if n .sp -1v -.if t .sp -.6v -.It Nm lv +.Op Ar plex +.Xc +.It Xo +.Ic lv .Op Fl r .Op Fl s .Op Fl v .Op Fl V -.Op volume -.Pp -.Ar list +.Op Ar volume +.Xc +.Ic list は指定したオブジェクトの情報を表示するために使われます。引数が省略されると .Nm が認識しているすべてのオブジェクトについての情報が表示されます。 -.Ar l +.Ic l コマンドは -.Ar list +.Ic list と同じものです。 .Pp .Fl r オプションはボリュームとプレックスに関連します。 指定されると、そのオブジェクト下位のサブディスクと (ボリュームに対しては) プレックスの情報を再帰的に表示します。 -.Ar lv , -.Ar lp , -.Ar ls , -.Ar ld +.Ic lv , +.Ic lp , +.Ic ls , +.Ic ld のコマンドは、それぞれボリューム、プレックス、サブディスク、そしてドライブの 情報だけを表示します。これはパラメータを指定しないで使う場合に特に有用です。 .Pp @@ -966,29 +914,32 @@ RAID-5 オプションで .Nm は装置の統計情報を出力するようになり、 -.Op Fl v +.Fl v (verbose: 饒舌な) オプションはいくらかの付加情報を出力させ、 そして -.Op Fl V +.Fl V は数多くの付加情報を出力させます。 -.It Nm makedev -.br -.Nm makedev -コマンドは、ディレクトリ /dev/vinum を除去した上で、 +.Pp +.It Ic makedev +.Ic makedev +コマンドは、ディレクトリ +.Pa /dev/vinum +を除去した上で、 現在の設定を反映するようなデバイスノードと共にこのディレクトリを再作成します。 本コマンドは、通常の場合に使用されることを意図していません。 非常時にのみ使用するために提供しています。 .Pp -.It Nm mirror +.It Xo +.Ic mirror .Op Fl f .Op Fl n Ar name .Op Fl s .Op Fl v .Ar drives -.br -.Nm mirror +.Xc +.Ic mirror コマンドは、ミラー化ボリュームを作成する -.Nm create +.Ic create コマンドの、単純な代替手段です。 オプションを指定しないと、RAID-1 (ミラー化) ボリュームを、 2 つのコンカチネート化ボリュームで作成します。 @@ -1000,19 +951,19 @@ RAID-5 .Pp .Fl s オプションを指定すると、 -.Nm mirror +.Ic mirror はストライプの大きさが 256 kB のストライプ化プレックスを構築します。 各プレックスのサブディスクの大きさは、 プレックスを構成するドライブの中で、最小の連続ストレージの大きさです。 ここでもまた、プレックスの大きさは異なるかもしれません。 .Pp 通常、 -.Nm mirror +.Ic mirror コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト -.Ar vinum +.Dq Li vinum および小さな整数からなり、例えば -.Ar vinum3 +.Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name @@ -1024,21 +975,23 @@ RAID-5 .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト -.Ar vinumdrive +.Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば -.Ar vinumdrive7 +.Dq Li vinumdrive7 となります。 -.Nm create +.Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp -このコマンドの例は、後述の「単純な設定」の節を参照してください。 -.It Nm mv Fl f Ar drive Ar object ... -.It Nm move Fl f Ar drive Ar object ... +このコマンドの例は、後述の +.Sx 単純な設定 +の節を参照してください。 .Pp +.It Ic mv Fl f Ar drive object ... +.It Ic move Fl f Ar drive object ... 指定したオブジェクトから新しいドライブへすべてのサブディスクを移動します。 オブジェクトは、サブディスク、ドライブあるいはプレックスです。ドライブ またはプレックスが指定された場合、オブジェクトに関係するすべての @@ -1049,30 +1002,30 @@ RAID-5 オプションが必要です。 この付加機能は、後日追加されます。しかしながら、この状態でも、故障した ディスクドライブを復旧させるのには十分です。 -.It Nm printconfig Op Pa file .Pp +.It Ic printconfig Op Ar file 現在の設定のコピーを、 .Nm 設定を再生成可能な書式で、 -.Pa file +.Ar file に書き込みます。 ディスク上に保存された設定とは違い、ドライブの定義を含みます。 -.Pa file +.Ar file を指定しないと、 .Nm は一覧を -.Pa stdout +.Dv stdout へ書き込みます。 -.It Nm quit +.Pp +.It Ic quit 対話モードで実行中のときに、 .Nm プログラムを終了します。通常は、文字 -.Ar EOF +.Dv EOF を入力することで実現できます。 -.It Nm read -.Ar disk Op disk... .Pp -.Nm read +.It Ic read Ar disk ... +.Ic read コマンドは、指定したディスクを走査し、作成済の設定情報を含む .Nm パーティションを探します。 @@ -1083,14 +1036,14 @@ RAID-5 このコマンドの パラメータとして、設定の中の全スライスを指定する必要があります。 .Pp -.Nm read +.Ic read コマンドは、他の .Nm パーティションを持つシステム上で、 .Nm 設定を選択的にロードすることを意図しています。 システム上の全パーティションを起動したい場合、 -.Nm start +.Ic start コマンドを使用する方が簡単です。 .Pp 本コマンド実行時に @@ -1100,80 +1053,89 @@ RAID-5 これは、ディスク上の設定が、設定エラーを示す (例えば、有効な空間指定を持たないサブディスク) 場合にも同様です。 再度更新をオンにするには、 -.Nm setdaemon +.Ic setdaemon と -.Nm saveconfig +.Ic saveconfig のコマンドを使用してください。 デーモンオプションマスクのビット 2 をリセットして、 設定保存を再度有効にしてください。 -.It Nm rebuildparity +.Pp +.It Xo +.Ic rebuildparity .Ar plex .Op Fl f .Op Fl v .Op Fl V -.Pp +.Xc 指定した RAID-4 または RAID-5 プレックスのパリティブロックを再構築します。 この操作はプレックス中のポインタを維持しますので、 望むならば、一時停止して後で同じ場所から再開可能です。 さらに、このポインタは -.Nm checkparity +.Ic checkparity コマンドも使用します。 最初にパリティの問題が検出された箇所から、 パリティブロックの再構築を開始可能です。 .Pp .Fl f フラグが指定されると、 -.Nm rebuildparity +.Ic rebuildparity はプレックスの先頭から再構築を開始します。 .Fl v フラグが指定されると、 -.Nm rebuildparity +.Ic rebuildparity はまず既存のパリティブロックをチェックし、 再構築前に、不整合情報を表示します。 .Fl V フラグが指定されると、 .Nm rebuildparity は進捗報告を表示します。 -.It Nm rename +.Pp +.It Xo +.Ic rename .Op Fl r .Ar [ drive | subdisk | plex | volume ] .Ar newname -.Pp +.Xc 指定したオブジェクトの名前を変更します。 .Fl r オプションが指定されると、下位のオブジェクトがデフォルトの規則に従って命名され -ます。プレックスの名前はボリューム名に .p\f(BInumber\fP を付加して作られ、 -サブディスクの名前はプレックス名に .s\f(BInumber\fP を付加して作られます。 -.ig -.It Nm replace -.Ar drive -.Ar newdrive +ます。プレックスの名前はボリューム名に +.Li .p Ns Ar number +を付加して作られ、 +サブディスクの名前はプレックス名に +.Li .s\f Ns Ar number +を付加して作られます。 +.\" .It Xo +.\" .Ic replace +.\" .Ar drive +.\" .Ar newdrive +.\" .Pp +.\" 指定したドライブから新しいドライブへすべてのサブディスクを移動します。 +.\" これは回復可能なサブディスクを回復しようとします。そして、回復不可能な +.\" サブディスクを最初から作ります。 +.\" もし、新しいドライブにこの操作のための容量が不足する時は、できるだけ +.\" 多くのサブディスクを新しいドライブ上に組み込み、残りを元のドライブに +.\" 残します。 .Pp -指定したドライブから新しいドライブへすべてのサブディスクを移動します。 -これは回復可能なサブディスクを回復しようとします。そして、回復不可能な -サブディスクを最初から作ります。 -もし、新しいドライブにこの操作のための容量が不足する時は、できるだけ -多くのサブディスクを新しいドライブ上に組み込み、残りを元のドライブに -残します。 -.. -.It Nm resetconfig -.Pp -.Nm resetconfig +.It Ic resetconfig +.Ic resetconfig コマンドはシステム内の .Nm 設定を完全に削除します。設定を完全に消去したい場合にだけ使って下さい。 .Nm -は確認を求めます。NO FUTURE (前途なし) という語句を以下の通りに入力する必要が +は確認を求めます。 +.Li "NO FUTURE" +(前途なし) という語句を以下の通りに入力する必要が あります。 .Bd -unfilled -offset indent -# \f(CBvinum resetconfig\f(CW +.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 -Enter text -> \f(BINO FUTURE\fP +.No "Enter text ->" Sy "NO FUTURE" Vinum configuration obliterated (訳注: ここから上記テキストの翻訳です) @@ -1187,33 +1149,36 @@ vinum (訳注: ここまで上記テキストの翻訳です) .Ed -.ft R .Pp メッセージが示すように、どたん場のコマンドです。 既存の設定をもう見たくもないとき以外は、このコマンドを使わないでください。 -.It Nm resetstats -.Op Fl r -.Op volume | plex | subdisk .Pp +.It Xo +.Ic resetstats +.Op Fl r +.Op Ar volume | plex | subdisk +.Xc .Nm は各オブジェクトについて多数の統計カウンタを保持しています。詳細は ヘッダファイル -.Pa vinumvar.h +.Aq Pa sys/dev/vinumvar.h を参照して下さい。 .\" XXX 仕上がったらここに入れる これらのカウンタをリセットするためには -.Nm resetstats +.Ic resetstats コマンドを使って下さい。 .Fl r オプションも共に指定すると、 .Nm は下位のオブジェクトのカウンタもリセットします。 -.It Nm rm +.Pp +.It Xo +.Ic rm .Op Fl f .Op Fl r .Ar volume | plex | subdisk -.Pp -.Nm rm +.Xc +.Ic rm はオブジェクトを .Nm 設定から消去します。ひとたびオブジェクトが消去されるとそれを復旧する方法は @@ -1241,40 +1206,39 @@ vinum .Fl r フラグを付けてボリュームを消去すると、プレックスとそれに属するサブディスクも 消去します。 -.It Nm saveconfig .Pp +.It Ic saveconfig 現在の設定をディスクに保存します。 .Nm は自動的に設定変更を保存するので、通常これは不要です。 起動時にエラーが発生した場合、更新は無効化されます。 -.Ar setdaemon +.Ic setdaemon コマンドで再度有効化しても、 .Nm は設定を自動的にはディスクへ保存しません。 このコマンドを使用して設定を保存してください。 -.ig -.It Nm set -.Op Fl f -.Ar state -.Ar volume | plex | subdisk | disk -.Nm set -は指定したオブジェクトに、妥当な状態 (下記「オブジェクト状態」参照) のひとつを -セットします。 -通常、 -.Nm -は変更を加える前に非常に多くの一貫性の調査を実行します。 -.Fl f -オプションを指定すると、 -.Nm -はこの調査を省略し、無条件に変更を行います。このオプションは大いに注意して -使って下さい。ボリューム上のすべてのデータを失うこともあり得ます。 -.\"XXX -.Nm このコマンドはまだ実装されていません。 -.. -.It Nm setdaemon -.Op value +.\".It Xo +.\".Ic set +.\".Op Fl f +.\".Ar state +.\".Ar volume | plex | subdisk | disk +.\".Xc +.\".Ic set +.\"は指定したオブジェクトに、妥当な状態 (下記 +.\".Sx オブジェクト状態 +.\"参照) のひとつを +.\"セットします。 +.\"通常、 +.\".Nm +.\"は変更を加える前に非常に多くの一貫性の調査を実行します。 +.\".Fl f +.\"オプションを指定すると、 +.\".Nm +.\"はこの調査を省略し、無条件に変更を行います。このオプションは大いに注意して +.\"使って下さい。ボリューム上のすべてのデータを失うこともあり得ます。 .Pp -.Nm setdaemon +.It Ic setdaemon Op Ar value +.Ic setdaemon は .Nm デーモンの変数ビットマスクを設定します。 @@ -1282,25 +1246,28 @@ vinum 現在、ビットマスクにはビット 1 (全アクションを syslog へ記録する) と ビット 4 (設定を更新しない) があります。 オプションビット 4 はエラー回復時に有用かもしれません。 -.It Nm setstate -.Ar state -.Op Ar volume | plex | subdisk | drive .Pp -.Nm setstate -指定したオブジェクトの状態を指定した状態に設定します。 +.It Xo +.Ic setstate Ar state +.Op Ar volume | plex | subdisk | drive +.Xc +.Ic setstate +は、指定したオブジェクトの状態を指定した状態に設定します。 .Nm の通常の一貫性機構はバイパスされます。回復の目的でのみ使用すべきです。 このコマンドを誤って使用すると、システムを破壊する可能性があります。 -.It Nm start +.Pp +.It Xo +.Ic start .Op Fl S Ar size .Op Fl w -.Op volume | plex | subdisk -.Pp -.Nm start +.Op Ar plex | subdisk +.Xc +.Ic start は 1 つまたはそれ以上の .Nm オブジェクトを起動します ( -.Ar up +.Em up 状態に移行させます)。 .Pp オブジェクト名を指定しないと、システムが @@ -1308,7 +1275,7 @@ vinum ドライブであると知っているディスクを、 .Nm は走査します。その後、 -.Nm read +.Ic read コマンドのところに書いてあるように、設定を読み込みます。 .Nm ドライブにはそのドライブ中のデータについてのすべての情報を持つヘッダが @@ -1322,9 +1289,9 @@ vinum これは、ディスク上の設定が、設定エラーを示す (例えば、有効な空間指定を持たないサブディスク) 場合にも同様です。 再度更新をオンにするには、 -.Nm setdaemon +.Ic setdaemon と -.Nm saveconfig +.Ic saveconfig のコマンドを使用してください。 デーモンオプションマスクのビット 4 をリセットして、 設定保存を再度有効にしてください。 @@ -1337,55 +1304,55 @@ vinum .Bl -bullet .It オブジェクトが既に -.Ar up +.Em up 状態の場合、 .Nm はなにもしません。 .It オブジェクトがサブディスクであり、 -.Ar down +.Em down または -.Ar reborn +.Em reborn の状態の場合、 .Nm は -.Ar up +.Em up 状態に変更します。 .It オブジェクトがサブディスクであり、 -.Ar empty +.Em empty 状態の場合、変更はサブディスクに依存します。 サブディスクがプレックスの一部であり このプレックスが他のプレックスを含むボリュームの一部である場合、 .Nm はサブディスクを -.Ar reviving +.Em reviving 状態にし、データをボリュームからコピーしようとします。 操作完了時に、サブディスクは -.Ar up +.Em up 状態に設定されます。 サブディスクがプレックスの一部であり このプレックスが他のプレックスを含まないボリュームの一部である場合、 またはサブディスクがプレックスの一部ではない場合、 .Nm は即時にサブディスクを -.Ar up +.Em up 状態にします。 .It オブジェクトがサブディスクであり、 -.Ar reviving +.Em reviving 状態である場合、 .Nm は -.Ar revive +再生 操作をオフラインにて継続します。 操作完了時に、サブディスクは -.Ar up +.Em up 状態に設定されます。 .El .Pp サブディスクが -.Ar up +.Em up 状態になると、 .Nm は自動的に、 @@ -1393,7 +1360,7 @@ vinum これらの状態を適切に更新します。 .Pp オブジェクトがプレックスの場合、 -.Nm start +.Ic start は下位のサブディスクの (ボリュームの場合にはこれに加えてプレックスの) 状態を チェックし、起動可能なサブディスクを起動します。 .Pp @@ -1412,23 +1379,25 @@ vinum .Fl i オプションで各ブロックを転送する間隔を (ミリ秒で) 指定可能です。 どちらもシステム負荷を軽減します。 -.It Nm stop -.Op Fl f -.Op volume | plex | subdisk .Pp +.It Xo +.Ic stop +.Op Fl f +.Op Ar volume | plex | subdisk +.Xc パラメータを指定しないと、 -.Nm stop +.Ic stop は .Nm -kld を削除し、 -.Nm +KLD を削除し、 +.Xr vinum 4 を停止します。 活動状態のオブジェクトが存在しない場合のみ、行うことが可能です。 特に、 .Fl f オプションはこの要求に優先しません。 通常、 -.Nm stop +.Ic stop コマンドは、終了前に現在の設定をディスクへ書き戻します。 設定の更新が無効になっている場合にはこれはできませんので、 設定の更新が無効になっている場合には @@ -1438,19 +1407,18 @@ kld .Fl f オプションを指定します。 .Pp -.Nm stop +.Ic stop コマンドは .Nm -が kld としてロードされている場合のみ動作します。 +が KLD としてロードされている場合のみ動作します。 静的に構成されたドライバをアンロードすることはできないからです。 .Nm が静的に構成されている場合、 -.Nm -.Nm stop +.Nm Ic stop は失敗します。 .Pp オブジェクト名が指定されると、 -.Nm stop +.Ic stop はそのオブジェクトへのアクセスを無効化します。 オブジェクトに下位オブジェクトがある場合、 それらのサブオブジェクトは既に非活動状態 (stop また error) となっているか、 @@ -1459,7 +1427,7 @@ kld .Fl f のオプションが指定されていることが必要です。 このコマンドは、オブジェクトを設定から取り除きません。 -.Nm start +.Ic start コマンドの後で再度アクセスができるようになります。 .Pp デフォルトでは @@ -1472,27 +1440,29 @@ kld にこの確認を省略して無条件に削除するよう指示します。このオプションは 大いに注意し、よく理解した上で使って下さい。もし間違って使うとひどい データ破壊を起こすことがあります。 -.It Nm stripe +.Pp +.It Xo +.Ic stripe .Op Fl f .Op Fl n Ar name .Op Fl v .Ar drives -.br -.Nm stripe +.Xc +.Ic stripe コマンドは、単一のストライプ化プレックスからなるボリュームを作成する -.Nm create +.Ic create コマンドの、単純な代替手段です。 サブディスクの大きさは、 全ドライブで利用可能な最大の連続空間の大きさです。 ストライプの大きさは 256 kB に固定されています。 .Pp 通常、 -.Nm stripe +.Ic stripe コマンドは任意の名前をボリュームと構成要素に付けます。 名前はテキスト -.Ar vinum +.Dq Li vinum および小さな整数からなり、例えば -.Ar vinum3 +.Dq Li vinum3 となります。 ボリュームに対して指定した名前を割り当てる .Fl n Ar name @@ -1504,29 +1474,31 @@ kld .Nm ドライブとして初期化されていた場合、名前はそのままになります。 そうでない場合、ドライブにはテキスト -.Ar vinumdrive +.Dq Li vinumdrive と小さな整数から始まる名前が与えられ、例えば -.Ar vinumdrive7 +.Dq Li vinumdrive7 となります。 -.Nm create +.Ic create コマンドと同様、 .Fl f オプションを使用して、以前の名前の上書きを指定可能です。 .Fl v オプションは、冗長な出力のために使用します。 .Pp -このコマンドの例は、後述の「単純な設定」の節を参照してください。 +このコマンドの例は、後述の +.Sx 単純な設定 +の節を参照してください。 .El .Sh 単純な設定 この節では、 -.Nm concat , -.Nm mirror , -.Nm stripe +.Ic concat , +.Ic mirror , +.Ic stripe コマンドを使用する、 .Nm 設定の単純なインタフェースを説明します。 これらのコマンドは、大概の通常状況では便利な設定を作成しますが、 -.Nm create +.Ic create コマンド程の柔軟性はありません。 .Pp コマンドの解説は前述を参照してください。 @@ -1547,7 +1519,7 @@ kld 最大のストレージ容量を得ます。 ただし、ドライブ故障への耐性はありません。 .Bd -literal -vinum -> concat -v /dev/da1h /dev/da2h /dev/da3h /dev/da4h +vinum -> concat -v /dev/da1h /dev/da2h /dev/da3h /dev/da4h volume vinum0 plex name vinum0.p0 org concat drive vinumdrive0 device /dev/da1h @@ -1627,7 +1599,7 @@ S mirror.p1.s1 State: up PO: 573 MB Size: 573 MB 2 つのプレックスの大きさは異なり、 ボリュームの最後の 158 MB には耐性がありません。 このような状況で完全な信頼性を保証するためには、 -.Nm create +.Ic create コマンドを使用して 988 MB のボリュームを作成します。 .Ss 2 つのストライプ化プレックスのミラー化ボリューム 今度は、2 つのストライプ化プレックスのミラー化ボリュームを作成するために @@ -1658,18 +1630,17 @@ S raid10.p1.s1 State: up PO: 256 kB Size: 573 MB この場合、使用可能なボリュームはより小さくなります。 なぜなら、最小のドライブに適合するように、 第 1 プレックスが小さくなったためです。 -.Ss 設定ファイル +.Sh 設定ファイル .Nm では、 -.Nm create +.Ic create コマンドに渡すすべての引数は設定ファイルに入っている必要があります。 設定ファイルのエントリは、ボリュームやプレックスやサブディスクを定義します。 エントリは 1 行に 1 つということ以外には決まった書式はありません。 -.Pp .Ss スケールファクタ これらの値は、バイトで指定しても良いですし、 次のスケールファクタのいずれか 1 つを後に付けても良いです: -.Bl -hang +.Bl -tag -width indent .It s 値が 512 バイトのセクタ数であることを示します。 .It k @@ -1679,29 +1650,28 @@ S raid10.p1.s1 State: up PO: 256 kB Size: 573 MB .It g 値がギガバイト数であることを示します (1073741824 バイト)。 .It b -VERITAS との互換性のために使用します。 +.Tn VERITAS +との互換性のために使用します。 これは、512 バイトのブロック数を意味します。 -``ブロック'' という語を別の意味で使用していますので、 +.Dq ブロック +という語を別の意味で使用していますので、 この短縮形は混乱させるものです。 この短縮形の価値は低下しています。 .El .Pp 例えば、16777216 バイトという値は、 -.Nm 16m , -.Nm 16384k , -.Nm 32768s +.Em 16m , +.Em 16384k , +.Em 32768s のいずれの表記も可能です。 .Pp 設定ファイルには以下のエントリを記述することができます。 .Pp -.Bl -hang -width 4n -.It Nm drive Ar name devicename -.Op options -.Pp +.Bl -tag -width 4n +.It Ic drive Ar name devicename Op Ar options ドライブを定義します。オプションは次の通りです: -.Pp -.Bl -hang -width 18n -.It Nm device Ar devicename +.Bl -tag -width 18n +.It Cm device Ar devicename ドライブが乗るデバイスを指定します。 .Ar devicename は、例えば @@ -1709,16 +1679,14 @@ VERITAS や .Pa /dev/ad3s2h といったパーティションである必要があり、タイプ -.Nm +.Em vinum である必要があります。 -.Nm c +.Dq Li c パーティションを使用してはなりません。 これはディスク全体のために予約されているからです。 -.It Nm hotspare +.It Cm hotspare ドライブを -.Do -ホットスペア -.Dc +.Dq ホットスペア ドライブであると定義します。 これは、故障したドライブと自動的に交換するために管理されます。 .Nm @@ -1726,16 +1694,12 @@ VERITAS 特に、サブディスクをこの上に作成できません。 この機能はまだ完全には実装されていません。 .El -.It Nm volume -.Ar name -.Op options -.Pp +.It Ic volume Ar name Op Ar options .Ar name という名前でボリュームを定義します。 -.Pp オプションには次のものがあります。 -.Pp -.Bl -hang -width 18n +.Bl -tag -width 18n +.It Cm plex Ar plexname .It Nm plex Ar plexname 指定したプレックスをボリュームに追加します。 .Ar plexname @@ -1745,80 +1709,78 @@ VERITAS .Nm は設定ファイル中のボリューム定義の後で、次の妥当なエントリとなり得るプレックス の定義を捜します。 -.It Nm readpol Ar policy +.It Cm readpol Ar policy ボリュームの -.Ar read policy +.Em read policy (読み込み方針) を定義します。 .Ar policy は -.Nm round +.Cm round か -.Nm prefer Ar plexname +.Cm prefer Ar plexname のどちらかです。 .Nm は読み込み要求を、ただ 1 つのプレックスによって満たします。 -.Ar round -読み込み方針は、読み込みを別々のプレックスから \fIラウンドロビン\fR\| 方式で +.Cm round +読み込み方針は、読み込みを別々のプレックスから +.Em ラウンドロビン +方式で 行うように指定します。 .Ar prefer 読み込み方針では、指定したプレックスから毎回読み込みを行います。 -.It Nm setupstate -.Pp +.It Cm setupstate マルチプレックスボリュームを作成する際に、すべてのプレックスの内容に一貫性が あると仮定します。通常こうなることはないため、デフォルトでは、 最初のプレックスを除いたすべてのプレックスを .Em faulty 状態に設定します。 -.Nm start +.Ic start コマンドを使って、最初に一貫性のある状態にする必要があります。しかし ストライプ化プレックスとコンカチネート化プレックスの場合には、普通は一貫性が ないままでも問題にはなりません。ボリュームをファイルシステムや スワップパーティションとして使う場合にはディスク上の以前の内容は どうでもよいため、それは無視されます。この危険を受け入れる場合には、 -.Nm setupstate +.Cm setupstate キーワードを使って下さい。 設定ファイル中でボリュームの直後で定義されるプレックスに対してのみ 適用されます。 後でプレックスをボリュームに追加する場合には、 これらのプレックスを -.Nm start +.Ic start コマンドで統合する必要があります。 .Pp RAID-5 プレックスには -.Nm init -を使うことが \fI必要\fP\| なことに注意して下さい。さもないと +.Ic init +を使うことが +.Em 必要 +なことに注意して下さい。さもないと 1 つのサブディスクに障害が起きた時、大きくデータが破壊されます。 -.fi .El -.It Nm plex Op options -.Pp +.It Ic plex Op Ar options プレックスを定義します。ボリュームとは違い、名前は不要です。 オプションには次のものを指定可能です: -.Pp -.Bl -hang -width 18n -.It Nm name Ar plexname +.Bl -tag -width 18n +.It Cm name Ar plexname プレックスの名前を指定します。プレックスやサブディスクに名前をつける場合には -.Ar name +.Cm name キーワードが必要になることに注意して下さい。 -.sp -.It Nm org Ar organization Op stripesize -.Pp +.It Cm org Ar organization Op Ar stripesize プレックスの編成を指定します。 .Ar organization は -.Ar concat +.Cm concat か -.Ar striped +.Cm striped か -.Ar raid5 +.Cm raid5 のいずれかです。 -.Ar striped +.Cm striped と -.Ar raid5 +.Cm raid5 のプレックスに対しては .Ar stripesize 引数を指定する必要がありますが、 -.Ar concat +.Cm concat のプレックスに対しては省略する必要があります。 .Ar striped タイプについては各ストライプの幅を指定します。 @@ -1830,7 +1792,7 @@ RAID-5 (つまり、プレックスの大きさをストライプの大きさで割ったものは 整数である必要があり)、 ディスクセクタ長 (512バイト) の倍数である必要があります。 -.sp +.Pp 最適な性能のためには、ストライプの大きさは少なくとも 128kB であるべきです。 これより小さくすると、 個々のリクエストが複数のディスクに対して割り当てられることにより、 @@ -1848,69 +1810,56 @@ I/O RAID-5 プレックスは最低 3 つのサブディスクを持つ必要があり、 それぞれは同じ大きさである必要があります。 実際には RAID-5 プレックスは最低 5 つのサブディスクから構成されるべきです。 -.Pp -.It Nm volume Ar volume +.It Cm volume Ar volname プレックスを、指定したボリュームに追加します。 -.Nm volume +.Cm volume キーワードが指定されないと、プレックスは設定ファイル中の最後に記述された ボリュームに追加されます。 -.sp -.It Nm sd Ar sdname Ar offset +.It Cm sd Ar sdname offset 指定したサブディスクをプレックスの .Ar offset の位置に追加します。 -.br -.fi .El -.It Nm subdisk Op options -.Pp +.It Ic subdisk Op Ar options サブディスクを定義します。オプションには次のものを指定可能です: -.Pp .Bl -hang -width 18n -.nf -.sp -.It Nm name Ar name +.It Cm name Ar name サブディスクの名前を指定します。これは必ずしも指定する必要は -ありません\(em 上記の「オブジェクトの命名」を参照してください。 +ありません。 +上記の +.Sx オブジェクトの命名 +を参照してください。 サブディスクに名前をつける場合には -.Ar name +.Cm name キーワードを指定する必要があることに注意して下さい。 -.sp -.It Nm plexoffset Ar offset +.It Cm plexoffset Ar offset プレックス内のサブディスクの始点を指定します。指定がないと、 .Nm はすでにサブディスクがあればその直後の領域を割り当て、なければ プレックスの先頭から割り当てます。 -.sp -.It Nm driveoffset Ar offset +.It Cm driveoffset Ar offset ドライブ内のサブディスクの始点を指定します。指定がないと、 .Nm はドライブ中で最初の .Ar length バイト連続の空き領域を割り当てます。 -.sp -.It Nm length Ar length +.It Cm length Ar length サブディスクの大きさを指定します。このキーワードは必須です。 デフォルト値はありません。 値 0 を指定すると、 -.if t ``ドライブ上で最大限利用可能な連続空き領域を使用'' -.if n "ドライブ上で最大限利用可能な連続空き領域を使用" +.Dq ドライブ上で最大限利用可能な連続空き領域を使用 という意味になります。 ドライブが空の場合、サブディスクとしてドライブ全体を使用することを意味します。 -.Nm length +.Cm length は -.Nm len +.Cm len と短縮することもできます。 -.sp -.It Nm plex Ar plex +.It Cm plex Ar plex サブディスクが属すプレックスを指定します。デフォルトでは、サブディスクは 最後に記述されたプレックスに属します。 -.sp -.It Nm drive Ar drive +.It Cm drive Ar drive サブディスクが乗るドライブを指定します。デフォルトでは最後に記述された ドライブ上に位置します。 -.br -.fi .El .El .Sh 設定ファイル例 @@ -1961,18 +1910,19 @@ volume vol5 sd length 500m drive drive4 sd length 500m drive drive5 .Ed -.Ss ドライブレイアウト上の考慮点 +.Sh ドライブレイアウト上の考慮点 現在、 .Nm -ドライブは BSD ディスクパーティションです。それは +ドライブは +.Bx +ディスクパーティションです。それは 他の用途で使用されているデータの上書きを避けるために -.Ar vinum +.Em vinum タイプである必要があります。 -.Nm disklabel -.Ar -e +.Nm disklabel Fl e を使用して、パーティションタイプ定義を編集してください。 次の表示は、 -.Nm disklabel +.Xr disklabel 8 が示す典型的なパーティションレイアウトです: .Bd -literal 8 partitions: @@ -1984,23 +1934,23 @@ volume vol5 f: 1900000 425984 4.2BSD 0 0 0 # (Cyl. 297*- 1626*) g: 1900741 2325984 vinum 0 0 0 # (Cyl. 1626*- 2955*) .Ed -.sp +.Pp この例では、パーティション -.Nm g +.Dq Li g を .Nm パーティションとして使用可能です。パーティション -.Nm a , -.Nm e , -.Nm f +.Dq Li a , +.Dq Li e , +.Dq Li f は、 -.Nm UFS +.Em UFS ファイルシステムまたは -.Nm ccd +.Em ccd パーティションとして使用可能です。パーティション -.Nm b +.Dq Li b はスワップパーティションであり、パーティション -.Nm c +.Dq Li c はディスク全体を表現するため他の用途に使用できません。 .Pp .Nm @@ -2015,13 +1965,13 @@ volume vol5 .Nm に対して発行したコマンドの履歴を保持します。 環境変数 -.Ev VINUM_HISTORY +.Ev VINUM_HISTORY をファイルの名前に設定することにより、 このファイルの名前をオーバライド可能です。 .Pp ログファイル中のメッセージの前には日付が付きます。 デフォルトの書式は -.Li %e %b %Y %H:%M:%S +.Qq Li %e %b %Y %H:%M:%S です。書式の文字列に関するさらなる詳細については .Xr strftime 3 を参照してください。 @@ -2037,7 +1987,7 @@ volume vol5 .Nm 専用のディスクパーティションが必要です。 これらは、デバイスやパーティション -.Nm c +.Dq Li c ではなく、パーティションであるべきでです。 例えば、適切な名前とは、 .Pa /dev/da0e @@ -2048,11 +1998,13 @@ volume vol5 .Pa /dev/da0 , .Pa /dev/da0s1 や、ディスク全体を表現しタイプ -.Nm unused +.Em unused であるべき .Pa /dev/ad1c です。 -前述の、「ドライブレイアウト上の考察点」下にある使用例を参照してください。 +前述の、 +.Sx ドライブレイアウト上の考察点 +下にある使用例を参照してください。 .Ss ボリュームのデザイン .Nm ボリュームの設定方法は、あなたの意図に依存します。 @@ -2063,7 +2015,7 @@ volume vol5 適切な大きさのファイルシステムを作成したいと考えるかもしれません。 例えば、小さなディスクを 5 個持っていて、 全空間を単一ボリュームとして使用したい場合、次のような設定ファイルを書きます: -.Bd -literal -offset 4n +.Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e @@ -2080,8 +2032,7 @@ volume bigger .Pp この場合、サブディスクの長さを 0 と指定します。 これは、 -.if t ``ドライブ上にある空き空間のうち、最大領域を使用する'' -.if n "ドライブ上にある空き空間のうち、最大領域を使用する" +.Dq ドライブ上にある空き空間のうち、最大領域を使用する ことを意味します。 指定するサブディスクが、ドライブ上の唯一のサブディスクである場合、 このサブディスクは使用可能な空間全体を使用します。 @@ -2090,18 +2041,16 @@ volume bigger .Nm に与えたい場合を考えます。 選択肢としては、 -.if t ``ミラーリング'' -.if n "ミラーリング" +.Dq ミラーリング とも呼ばれる RAID-1 か、 -.if t ``パリティ'' -.if n "パリティ" +.Dq パリティ とも呼ばれる RAID-5 があります。 .Pp ミラーリングの設定のためには、 単一ボリュームの中に複数のプレックスを作成する必要があります。 例えば、 2 GB のミラー化ボリュームを作成するには、 次のような設定ファイルを作成します: -.Bd -literal -offset 4n +.Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e volume mirror @@ -2123,11 +2072,11 @@ volume mirror は 2 GB を必要としますので、全体のディスクストレージ要求は 4 GB となります。 .Pp RAID-5 の設定をするには、タイプ -.Ar raid5 +.Cm raid5 の単一プレックスを作成します。 例えば、回復力を持つ 2 GB に相当するボリュームを作成するには、 次のような設定ファイルを使用します: -.Bd -literal -offset 4n +.Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e @@ -2152,7 +2101,7 @@ RAID-5 これに対し、ミラー設定での総ストレージ使用量は 4 GB です。 最小の 3 個のディスクだけを使用する場合、 情報格納のために次のように 3 GB を必要とします: -.Bd -literal -offset 4n +.Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e @@ -2182,8 +2131,7 @@ volume raid ほとんど効果がないかまったく効果がありません。 .Nm は -.if t ``ストライピング'' -.if n "ストライピング" +.Dq ストライピング または RAID-0 とも呼ばれる技術を使用し、アクセスの並行性を増します。 RAID-0 という名称は誤解を生じさせるものです: なぜなら、ストライピングは冗長性も更なる信頼性も提供しないからです。 @@ -2192,9 +2140,9 @@ RAID-0 多くのディスクを使うほどこれらのうち 1 個が故障する確率は増加するからです。 .Pp ストライピングの実装のためには、 -.Ar striped +.Cm striped (ストライプ化) プレックスを使用します: -.Bd -literal -offset 4n +.Bd -literal -offset indent drive d1 device /dev/da2e drive d2 device /dev/da3e drive d3 device /dev/da4e @@ -2239,9 +2187,9 @@ volume raid setupstate 1 番目のプレックスの逆になっていることに注意してください。 これは性能のためであり、後で議論します。 更に、ボリューム指定にキーワード -.Ar setupstate +.Cm setupstate を含み、全プレックスが作成後に -.Ar up +.Em up となることを保証しています。 .El .Ss ボリュームの作成 @@ -2251,114 +2199,112 @@ volume raid setupstate この例では、設定ファイルは .Pa configfile です: -.Bd -literal - # 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 +.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 に指示します。その後、 -.Nm list Fl v +.Ic list Fl v コマンドと同じ書式で、現在の設定をリストします。 .Ss より多くのボリュームを作成する ひとたび -.Nm +.Nm ボリュームを作成した後は、 .Nm はこれらの情報を内部の設定ファイルにて管理します。 再度作成する必要はありません。 特に、 -.Nm create +.Ic create コマンドを再実行すると、追加のオブジェクトを作ることになります: .Bd -literal -.if t .ps -2 - # 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 -.if t .ps +# 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 フラグを付けています)、 -.Nm create +.Ic create の再実行により 4 個の新規プレックスを作成し、 それぞれが新規サブディスクを持ちます。 他のボリュームを追加したい場合、これらのための新規設定ファイルを作成します。 @@ -2372,49 +2318,49 @@ volume raid setupstate .Pa /dev/da3e , .Pa /dev/da4e 上に作成するには、他の 2 個についてのみ記述するだけで良いです: -.Bd -literal - drive d3 device /dev/da1e - drive d4 device /dev/da4e - volume raid - plex org raid5 512k - sd size 2g drive d1 - sd size 2g drive d2 - sd size 2g drive d3 - sd size 2g drive d4 +.Bd -literal -offset indent +drive d3 device /dev/da1e +drive d4 device /dev/da4e +volume raid + plex org raid5 512k + sd size 2g drive d1 + sd size 2g drive d2 + sd size 2g drive d3 + sd size 2g drive d4 .Ed .Pp この設定ファイルでは、次のようになります: .Bd -literal - # vinum create newconfig - Configuration summary - - Drives: 4 (4 configured) - Volumes: 2 (4 configured) - Plexes: 5 (8 configured) - Subdisks: 8 (16 configured) - - D d1 State: up Device /dev/da2e Avail: 51176/57320 MB (89%) - D d2 State: up Device /dev/da3e Avail: 53220/57320 MB (89%) - D d3 State: up Device /dev/da1e Avail: 53224/57320 MB (92%) - D d4 State: up Device /dev/da4e Avail: 53224/57320 MB (92%) - - V mirror State: down Plexes: 4 Size: 2048 MB - V raid State: down Plexes: 1 Size: 6144 MB - - P mirror.p0 C State: init Subdisks: 1 Size: 2048 MB - P mirror.p1 C State: init Subdisks: 1 Size: 2048 MB - P mirror.p2 C State: init Subdisks: 1 Size: 2048 MB - P mirror.p3 C State: init Subdisks: 1 Size: 2048 MB - P raid.p0 R5 State: init Subdisks: 4 Size: 6144 MB - - S mirror.p0.s0 State: up PO: 0 B Size: 2048 MB - S mirror.p1.s0 State: up PO: 0 B Size: 2048 MB - S mirror.p2.s0 State: up PO: 0 B Size: 2048 MB - S mirror.p3.s0 State: up PO: 0 B Size: 2048 MB - S raid.p0.s0 State: empty PO: 0 B Size: 2048 MB - S raid.p0.s1 State: empty PO: 512 kB Size: 2048 MB - S raid.p0.s2 State: empty PO: 1024 kB Size: 2048 MB - S raid.p0.s3 State: empty PO: 1536 kB Size: 2048 MB +# vinum create newconfig +Configuration summary + +Drives: 4 (4 configured) +Volumes: 2 (4 configured) +Plexes: 5 (8 configured) +Subdisks: 8 (16 configured) + +D d1 State: up Device /dev/da2e Avail: 51176/57320 MB (89%) +D d2 State: up Device /dev/da3e Avail: 53220/57320 MB (89%) +D d3 State: up Device /dev/da1e Avail: 53224/57320 MB (92%) +D d4 State: up Device /dev/da4e Avail: 53224/57320 MB (92%) + +V mirror State: down Plexes: 4 Size: 2048 MB +V raid State: down Plexes: 1 Size: 6144 MB + +P mirror.p0 C State: init Subdisks: 1 Size: 2048 MB +P mirror.p1 C State: init Subdisks: 1 Size: 2048 MB +P mirror.p2 C State: init Subdisks: 1 Size: 2048 MB +P mirror.p3 C State: init Subdisks: 1 Size: 2048 MB +P raid.p0 R5 State: init Subdisks: 4 Size: 6144 MB + +S mirror.p0.s0 State: up PO: 0 B Size: 2048 MB +S mirror.p1.s0 State: up PO: 0 B Size: 2048 MB +S mirror.p2.s0 State: up PO: 0 B Size: 2048 MB +S mirror.p3.s0 State: up PO: 0 B Size: 2048 MB +S raid.p0.s0 State: empty PO: 0 B Size: 2048 MB +S raid.p0.s1 State: empty PO: 512 kB Size: 2048 MB +S raid.p0.s2 State: empty PO: 1024 kB Size: 2048 MB +S raid.p0.s3 State: empty PO: 1536 kB Size: 2048 MB .Ed .Pp RAID-5 プレックスの大きさに注意してください: @@ -2423,19 +2369,18 @@ RAID-5 これは、サブディスク 1 個分相当をパリティデータ格納に使用しているからです。 .Ss Vinum の再起動 システムのリブート時に、 -.Nm start +.Ic start コマンドで .Nm を起動します: -.Bd -literal - # vinum start -.Ed +.Pp +.Dl "# vinum start" .Pp これにより、システム中の全 .Nm ドライブが起動します。 なんらかの理由で一部のドライブのみを起動したい場合、 -.Nm read +.Ic read コマンドを使用してください。 .Ss 性能関連 最高性能の RAID アレイ設定に関する、多くの誤った考えが存在しています。 @@ -2496,24 +2441,23 @@ RAID-5 式は (S + F - 1) / S となり、 S はファイルシステムブロック数でのストライプの大きさ、 F はファイルシステムブロック数でのファイルの大きさです。 -.Pp .Bl -enum .It ストライプの大きさは 4 kB。転送回数は 6 回。 サブシステムの負荷: レイテンシ 48 ms、転送 2 ms、合計 50 ms。 -.It +.It ストライプの大きさは 8 kB。転送回数は 3.5 回。 サブシステムの負荷: レイテンシ 28 ms、転送 2 ms、合計 30 ms。 -.It +.It ストライプの大きさは 16 kB。転送回数は 2.25 回。 サブシステムの負荷: レイテンシ 18 ms、転送 2 ms、合計 20 ms。 -.It +.It ストライプの大きさは 256 kB。平均転送回数は 1.08 回。 サブシステムの負荷: レイテンシ 8.6 ms、転送 2 ms、合計 10.6 ms。 -.It +.It ストライプの大きさは 4 MB。平均転送回数は 1.0009 回。 サブシステムの負荷: レイテンシ 8.01 ms、転送 2 ms、合計 10.01 ms。 -.El +.El .Pp ハードウェア RAID システムによっては、 大きなストライプでは問題があるものがあるようです: @@ -2582,9 +2526,9 @@ RAID-5 .Ss Vinum ボリューム上にファイルシステムを作成する .Nm ボリューム上にファイルシステムを作成する前に -.Nm disklabel +.Xr disklabel 8 を実行する必要はありません。 -.Nm newfs +.Xr newfs 8 だけを実行してください。 .Fl v オプションを使用して、 @@ -2592,9 +2536,8 @@ RAID-5 例えば、ボリューム .Pa mirror 上にファイルシステムを作成するには、次のコマンドを入力します: -.Bd -literal -offset 4n -# newfs -v /dev/vinum/mirror -.Ed +.Pp +.Dl "# newfs -v /dev/vinum/mirror" .Pp .Nm の設定に関係する数個のその他のことがらがあります: @@ -2624,11 +2567,11 @@ Vinum オブジェクトの状態を .Em up に変更するには -.Nm start +.Ic start コマンドを使います。オブジェクトの状態を .Em down に変更するには -.Nm stop +.Ic stop コマンドを使います。 通常、他の状態はオブジェクト間の関係によって自動的に作られます。 例えば、もしあなたがボリュームにプレックスを追加したら、プレックスの @@ -2638,18 +2581,18 @@ Vinum 状態に設定されるでしょう。この状態の結果として、プレックスは .Em faulty 状態に設定されるでしょう。 -.Ss 'reviving' 状態 +.Ss `reviving' 状態 多くの場合、あなたがサブディスクを起動する時に、システムはサブディスクに データをコピーしなければなりません。 サブディスクの大きさによりますが、これは長い時間かかります。この間、 サブディスクは -.Em reviving +.Em reviving 状態に設定されます。コピー操作が正しく終了すれば、それは自動的に .Em up 状態に設定されます。 プロセスが、回復 (revive) を停止させ、そして再開させることがあります。 システムはサブディスクの回復の進み具合を保持し、そして -.Nm start +.Ic start コマンドが再発行された時、その時点からコピーを再開します。 .Pp ボリュームのプレックスが一つ以上が回復している間はボリュームの整合性を @@ -2664,32 +2607,36 @@ Vinum .Bl -enum .It .Nm -ドライブは UNIX ディスクパーティションであり、パーティションタイプ -.Ar vinum +ドライブは +.Ux +ディスクパーティションであり、パーティションタイプ +.Em vinum であることが必要です。 これは、パーティションタイプが -.Ar 4.2BSD +.Em 4.2BSD であることを期待する -.Nm ccd +.Xr ccd 4 とは異なります。 -この ccd の動作は、自分の足元をすくうことになります: -.Nm ccd +この +.Nm ccd +の動作は、自分の足元をすくうことになります: +.Nm ccd では、用意にファイルシステムを上書きできてしまいます。 .Nm ではそのようなことは許しません。 .Pp 同様の理由で、 -.Nm vinum Ar start +.Nm Ic start コマンドは、パーティション -.Ar c +.Dq Li c 上のドライブを受け付けません。 パーティション -.Ar c +.Dq Li c は、ディスク全体を表現するためにシステムが使用し、タイプ -.Ar unused +.Em unused である必要があります。 ここには明確な矛盾があるので、 -.Ar c +.Dq Li c パーティションを使用しないことにより .Nm は問題を解決しています。 @@ -2703,34 +2650,38 @@ Vinum 新規作成されたプレックスのうち最初のものを除いたすべての状態を、 .Nm は -.Ar 誤り (faulty) -状態に設定します。 +.Em faulty +(誤り) 状態に設定します。 これらを最初のプレックスと同期させるには、 これらのサブディスクを -.Nm start +.Ic start させる必要があります。 -これにより、up 状態のプレックスから vinum にデータをコピーさせます。 +これにより、 +.Em up +状態のプレックスから +.Nm +にデータをコピーさせます。 関係するサブディスクの大きさに依存して、必要な時間は長くなり得ます。 .Pp 実際上は、プレックス作成時にその内容に多大な興味を持つ人はいないので、 他のボリュームマネージャはどんなときでも -.Ar 起動 (up) +.Ar up に設定して騙します。 .Nm は、新規作成されたプレックスが -.Ar 起動 (up) +.Em up 状態であることを保証するために、2 つの方法を提供します: .Bl -bullet .It プレックスを作成し、それらを -.Nm vinum Ar start +.Nm Ic start で同期します。 .It キーワード -.Ar setupstate +.Cm setupstate 付きでボリューム (プレックスではありません) を作成します。 このキーワードは、矛盾が存在しても無視してプレックスの状態を -.Ar 起動 (up) +.Em up 状態にするように、 .Nm に指示します。 @@ -2740,57 +2691,56 @@ Vinum .Nm がサポートしているコマンドには、実際には不要なものがあります。 私には理解できない理由があるのでしょうが、 -.Nm label +.Ic label および -.Nm resetconfig +.Ic resetconfig のコマンドを使おうとするユーザをしばしば見掛けます。特に -.Nm resetconfig +.Ic resetconfig は、あらゆる種類の恐しいメッセージを表示するにもかかわらずです。 正当な理由無しに、これらのコマンドを使わないでください。 .It 状態遷移には非常に分り難いものがあります。 事実、これがバグであるのか仕様であるのかは明かではありません。 -.Ar reborn +.Em reborn サブディスクなどの、奇妙な状態になったオブジェクトを起動できない場合には、 -.Nm stop +.Ic stop または -.Nm stop Ar -f +.Ic stop Fl f のコマンドを使用して、まず -.Ar stopped +.Em stopped 状態に遷移させてください。 これが上手くいけば、オブジェクトを起動できるはずです。 簡単な方法では上手くいかなくて、これが唯一の回復手段である場合、 その状況を報告してください。 .It カーネルモジュールを -.Ar -DVINUMDEBUG +.Fl D Ns Dv VINUMDEBUG オプション付きで構築した場合、 .Nm もまた -.Ar -DVINUMDEBUG +.Fl D Ns Dv VINUMDEBUG オプション付きで構築する必要があります。 なぜなら、両方のコンポーネントで使用されるデータオブジェクトに、 大きさが本オプションに依存しているものがあるからです。 前記のようにしないと、 -.Ar Invalid argument +.Sy Invalid argument というメッセージを表示してコマンドは失敗し、 次のようなコンソールメッセージが記録されます: +.Bl -diag +.It "vinumioctl: invalid ioctl from process 247 (vinum): c0e44642" +.El .Pp -.Bd -literal -vinumioctl: invalid ioctl from process 247 (vinum): c0e44642 -.Ed -.Pp -古いバージョンの kld やユーザランドプログラムを使うと、 +古いバージョンの KLD やユーザランドプログラムを使うと、 このエラーが発生することがあります。 .It -.Nm vinum Ar read +.Nm Ic read コマンドの文法は、吐き気を催すものです。 これが唯一の .Nm 起動のためのコマンドでしたが、今の好ましい方法は -.Nm vinum Ar start +.Nm Ic start です。 -.Nm vinum Ar read +.Nm Ic read は整備のみに使用すべきです。 文法が変更されたので、引き数が .Pa /dev/da0 @@ -2800,25 +2750,20 @@ vinumioctl: invalid ioctl from process 247 (vinum): c0e44642 .El .\"XXX.Sh BUGS .Sh 関連ファイル -.Ar /dev/vinum -- +.Bl -tag -width /dev/vinum/control -compact +.It Pa /dev/vinum .Nm オブジェクトのデバイスノードがあるディレクトリ -.br -.Ar /dev/vinum/control -- +.It Pa /dev/vinum/control .Nm -の制御デバイスがあるディレクトリ -.br -.Ar /dev/vinum/plex -- +の制御デバイス +.It Pa /dev/vinum/plex .Nm プレックスのデバイスノードがあるディレクトリ -.br -.Ar /dev/vinum/sd -- +.It Pa /dev/vinum/sd .Nm サブディスクのデバイスノードがあるディレクトリ +.El .Sh 環境変数 .Bl -hang .It VINUM_HISTORY @@ -2834,9 +2779,10 @@ vinumioctl: invalid ioctl from process 247 (vinum): c0e44642 .Xr strftime 3 , .Xr vinum 4 , .Xr disklabel 8 , -.Xr newfs 8 , +.Xr newfs 8 +.Pp .Pa http://www.vinumvm.org/vinum.html , -.Pa http://www.vinumvm.org/vinum-debugging.html . +.Pa http://www.vinumvm.org/vinum-debugging.html .Sh 作者 .An Greg Lehey Aq grog@lemis.com .Sh 歴史 @@ -2847,6 +2793,6 @@ vinumioctl: invalid ioctl from process 247 (vinum): c0e44642 .Nm の RAID-5 コンポーネントは、 NetMAX 製品のために -Cybernet Inc. -.Pa www.cybernet.com +Cybernet Inc.\& +.Pq Pa www.cybernet.com が開発しました。