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 −g −u −U −v 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 |