スポンサーリンク

CCDCONFIG(8) FreeBSD システム管理者マニュアル CCDCONFIG(8)

名称

ccdconfig − 結合ディスクドライバ用設定ユーティリティ

書式

ccdconfig [−cv] ccd ileave [flags] dev [file ...]

ccdconfig −C [−v] [−f config_file]

ccdconfig −u [−v] ccd [file ...]

ccdconfig −U [−v] [−f config_file]

ccdconfig −g [ccd [...]]

解説

ccdconfig ユーティリティは、結合ディスクデバイス (concatenated disk device すなわち ccd) の動的な設定および解除を行う場合に使用します。 ccd の詳細については、 ccd(4) を参照して下さい。

以下のオプションが使用できます。

       −c

ccd の設定を行います。 ccdconfig のデフォルトの動作です。

−C
設定ファイルに書かれている全てのデバイスの設定を行います。

−f config_file
全てのデバイスの設定あるいは解除を行う時に、デフォルトの /etc/ccd.conf ではなく、 config_file から設定情報を読み込みます。

−g
ccd の設定ファイルとして使用できる形式で、現在の ccd の設定を出力 します。引数が指定されていなければ、設定されている全ての ccd につ いて出力します。引数が指定されていれば、指定された ccd についての み出力します。

−u
ccd の設定を解除します。

−U
ccd 設定ファイルに書かれている全ての ccd デバイスの設定を解除しま す。

−v
ccdconfig
は、より冗長な出力を行います。

ccd は、コマンド行ないし ccd 設定ファイルにて、ccd の名前、インタリーブ ファクタ、ccd 設定フラグ、ひとつ以上のデバイスのリストの情報により定義さ れます。フラグは、10 進数、16 進数、コンマで区切られた名前のリスト、 ‘‘none’’ のいずれかで表すことができます。フラグには以下のものがあります。

CCDF_UNIFORM

0x02

ディスク間で均一なインタリーブを使います

CCDF_MIRROR

0x04

データのミラーリングをサポートします

設定ファイルのフォーマットは、コマンド行から指定する場合と同一の形式にな ります。コマンド行から指定する場合も、設定ファイルから指定する場合も、 flags 引数はオプションです。

#
# /etc/ccd.conf
# Configuration file for concatenated disk devices
#

# ccd           ileave  flags   component devices
ccd0            16      none    /dev/da2s1 /dev/da3s1

構成要素のデバイスは、パーティションタイプが FS_BSDFFS (disklabel(8) では ‘‘4.2BSD’’ と表示されます) であることが必要です。

使用例

ccdconfig の例をいくつか以下に示します。 ccdconfig に渡される引数は、 /etc/ccd.conf 設定ファイルに書けるものと正に同じものです。 1 番目の例は、 4 ディスクのストライプを 4 SCSI ディスクパーティションから作成します。ス トライプは 64 セクタインタリーブを使用します。 2 番目の例は、複雑なストラ イプ/ミラーの組み合わせの例です。これは、 da4 と da5 の 2 ディスクストラ イプを、 da6 と da7 の 2 ディスクストライプへミラーすると、解釈します。最 後の例は、単純なミラーです。 /dev/da8 の 2 番目のスライス は /dev/da9 の 3 番目のスライスへミラーされ、 ccd0 に割り当てられます。

# ccdconfig ccd0 64 none /dev/da0s1 /dev/da1s1 /dev/da2s1 /dev/da3s1
# ccdconfig ccd0 128 CCDF_MIRROR /dev/da4 /dev/da5 /dev/da6 /dev/da7
# ccdconfig ccd0 128 CCDF_MIRROR /dev/da8s2 /dev/da9s3

新規 ccd ディスクを作成するとき、一般的には他のことに先駆けて fdisk(8)disklabel(8) をしたいでしょう。最初のラベルを作成した後は、これを編集し て、追加パーティションを追加可能です。ラベル自身は、ccd ディスクの最初の 16 セクタを占めます。ファイルシステムを newfs で作成するだけなら、 newfs がラベル領域を飛ばしますので、心配することはありません。しかし、ccd パー ティションからまたは ccd パーティション宛へ dd(1) するつもりなら、一般的 には、パーティションを作成してラベルデータに重ならないようにするのが良い 考えです。例えば、10000 セクタの ccd ディスクがある場合、オフセット 16 大 きさ 9984 のパーティション ’d’ を作成するでしょう。

# disklabel ccd0 > /tmp/disklabel.ccd0
# disklabel -Rr ccd0 /tmp/disklabel.ccd0
# disklabel -e ccd0

ccd ディスクに対する disklabel 処理は 1 度の機会です。マシンをリブートし ccd ディスクを再構成する場合、以前作成したディスクラベルが残っているため 再作成は不要です。 ccd パラメータの変更には注意してください。インタリー ブ、フラグ、ccd ディスクを構成するデバイスリストを変えると、通常、ccd ディスク上にあったデータを壊してしまいます。こうなってしまった場合、 ccd ディスクを (再) 初期化する前にラベルを再初期化するのは、通常良い考えで す。

回復

ccd ディスク上のエラーは、ミラーリングオプションを使用していない限り、通 常は回復不可能です。しかし、ミラーリングにはそれ自身の危険性があります。 これは、すべてのセクタの両方のコピーが同一であることを仮定していることで す。この仮定は、書き込みエラーが発生するか、どちらかのミラーを交換するま では、成り立ちます。これは、貧者のミラーリング実装なのです。ディスクエ ラーが発生し始めたら、 ccd ディスクのバックアップを取って、壊れたハード ウェアを交換して、 ccd ディスクを再作成可能である限りは、この実装は十分う まく働きます。これ以上を望むなら、外部ハードウェア RAID SCSI ボックスや、 RAID コントローラ (GENERIC を参照して下さい) や、 RAIDframe raid(4) や vinum(8) 等のソフトウェア RAID システムを検討すべきです。

関連ファイル

       /etc/ccd.conf

デフォルトの ccd 設定ファイル

関連項目

dd(1), ccd(4), raid(4), disklabel(8), fdisk(8), rc(8), vinum(8)

バグ

ccd(4) が最初に返すディスクラベルは、3 個のパーティションしか指定しませ ん。 ‘‘disklabel −e’’ を使用し、 BSD が期待するように、パーティション数を 8 に変更する必要があります。

歴史

ccdconfig ユーティリティは NetBSD 1.0A から登場しました。

FreeBSD 10.0 July 17, 1995 FreeBSD 10.0

スポンサーリンク