「事件は枯れたシステムが稼働する現場で起こってるんだ」と現場ですぐに役立つ知識を欲するあなたに贈る珠玉のTips集。今回は、SolarisでVolumeManagerを用いたソフトパーティーションの作成法について解説する。
Solaris 9のマシンに2TバイトのRAID装置を接続し、ファイルサーバとして使用しようと考えています。全容量を1つのスライスに割り当てると管理しづらくなるので、サーバを使用するユーザーごとにパーティーションを分けたいのですが、fdiskコマンドを使用すると8つまでしかスライスを作れません。9つ以上のスライスを作ることはできないのでしょうか?
Solaris 9では、VolumeManager*が利用できます。このツールを使うと、スライスまたはボリューム*上に、論理ボリュームとして最大で8192個*の「ソフトパーティーション」を作成できます。
ソフトパーティーションの作成/拡張/削除には表1に挙げたコマンドを利用します。
目的 | 利用コマンド | 書式 |
---|---|---|
ソフトパーティションの作成 | metainit | metainit <ソフトパーティション名(dnnnn)> -p <スライスまたはボリューム名> <サイズ(m/g/t/b)> |
ソフトパーティションの情報確認 | metastat | metastat <ソフトパーティション名(省略可)> |
ソフトパーティションの拡張 | metattach | metattach <既存ソフトパーティション名> <サイズ> |
ソフトパーティションの削除 | metaclear | metaclear <ソフトパーティション名> |
スライス上にあるソフトパーティションすべてを削除 | metaclear | metaclear -p <スライスまたはボリューム名> |
ソフトパーティーションを作成するには、metainitコマンドを利用します。実行例1のように、ソフトパーティーション名はdnnnn(nnnnは0から8191までの数字)、サイズは数字と単位(m:Mバイト、g:Gバイト、t:Tバイト、b:ブロック数)の組み合わせで指定します。
# metainit d0 -p /dev/dsk/c0t1d0s0 200m
作成したソフトパーティーションは、通常のボリュームのようにファイルシステムの作成を行った後でマウントできるようになります(実行例2)。また、ソフトパーティーションの情報を確認するには、metastatコマンドを使用します。
# newfs /dev/md/dsk/d0
# mount /dev/md/dsk/d0 /test
# df -h
ファイルシステム サイズ 使用済み 使用可能 容量 マウント先
/dev/md/dsk/d0 188M 9K 169M 1% /test
ソフトパーティーションでは、マシンを止めずに領域を拡張できます。拡張にはmetattachコマンドを使用し、実行例4のように実行します。
ただし、ソフトパーティーションを使ってさらにミラーリングなどのRAIDを組んでいる場合は拡張できません。また、拡張したいソフトパーティーションがあるボリュームまたはスライスの容量に空きがあることが条件です。
# metastat | head -4
d0: Soft Partition
Device: c0t0d0s5
State: Okay
Size: 409600 blocks (200 MB) ← 元は200Mバイト
# metattach d0 200m
d0: ソフトパーティションが拡張されました
# metastat | head -4
d0: Soft Partition
Device: c0t0d0s5
State: Okay
Size: 819200 blocks (400 MB) ← 400Mバイトに変わる
ソフトパーティーションを拡張したら、growfsコマンドでファイルシステムの作成を行います。
# df -h
ファイルシステム サイズ 使用済み 使用可能 容量 マウント先
/dev/md/dsk/d0 188M 9K 169M 1% /test ←初めは188Mバイト
#
# growfs -M /test /dev/md/rdsk/d0
警告: 最終シリンダで304セクターが割り当てられません。
/dev/md/rdsk/d0: 全セクター数: 819200 (シリンダ数: 813、トラック数: 16、
セクター数: 63)
400.0MB、51シリンダグループ(16 c/g, 7.88MB/g, 3776 i/g)
スーパーブロックのバックアップの位置(fsck -F ufs -o b=# のため) :
32, 16224, 32416, 48608, 64800, 80992, 97184, 113376, 129568, 145760,
661856, 678048, 694240, 710432, 726624, 742816, 759008, 774176, 790368,
806560,
#
# df -h
ファイルシステム サイズ 使用済み 使用可能 容量 マウント先
/dev/md/dsk/d0 376M 9K 357M 1% /test ←倍の376Mバイトに変わる
ソフトパーティーションを消すには、metaclearコマンドを使用します。また、スライス上にあるソフトパーティーションすべてを削除する場合は、「-p」オプションをつけて実行します。例えば、c0t1d0s0にあるソフトパーティーションをすべて削除する際には、以下のように実行します。
# metaclear -p c0t0d0s0
従来はDiskSuiteと呼ばれていたが、Solaris 9でVolumeManagerと名称が変更された。
単一の論理デバイスとしてシステムに認識される物理スライスの集合。DiskSuiteでは、このような論理デバイスを「メタデバイス」と呼んでいたが、VolumeManagerでは「ボリューム」と表記されるようになった。
デフォルトではd0からd127までの128個の論理ボリュームしかサポートしていない。この制限を外す方法に関しては、Sunより提供されている「Solarisボリュームマネージャの管理」を参照。
Copyright © ITmedia, Inc. All Rights Reserved.