この章では、Solaris ディスクスライスの概要および format ユーティリティについて説明します。
この章の内容は次のとおりです。
システムにディスクを追加する方法については、第 33 章「SPARC: ディスクの追加 (手順)」または第 34 章「IA: ディスクの追加 (手順)」を参照してください。
この節では、Solaris 9 リリースの新しいディスク管理機能について説明します。
これまでバンドルされていなかった Solstice DiskSuiteTM 製品が、Solaris ボリュームマネージャという名前で Solaris 9 リリースに含まれることになりました。Solaris ボリュームマネージャの新機能であるソフトパーティションを利用すると、各ディスクに 8 つ以上のパーティションを作成できます。
Solaris ボリュームマネージャの詳細は、『Solaris ボリュームマネージャの管理』の「記憶装置管理の概念」 を参照してください。ソフトパーティションの詳細は、『Solaris ボリュームマネージャの管理』の「ソフトパーティション (概要)」を参照してください。
ディスク管理の手順については、次を参照してください。
ディスク管理作業 |
参照先 |
---|---|
ディスクをフォーマットしてディスクラベルを確認する。 | |
SPARC システムに新しいディスクを追加する。 | |
IA システムに新しいディスクを追加する。 | |
SCSI または PCI ディスクのホットプラグを実行する |
一般に、Solaris 環境におけるディスクの管理とは、システムを設定し、Solaris インストールプログラムを実行し、適切なディスクスライスおよびファイルシステムを作成してオペレーティングシステムをインストールすることを意味します。また、format ユーティリティを使用して、新しいディスクドライブを追加したり、欠陥ディスクドライブを交換したりしなければならない場合もあります。
Solaris オペレーティングシステムは、SPARC と IA という 2 種類のハードウェア、つまりプラットフォームで動作します。Solaris オペレーティングシステムは、64 ビットのアドレス空間でも 32 ビットのアドレス空間でも動作します。このマニュアルで説明する情報は、章、節、注、箇条書き、図、表、例、またはコード例において特に明記しない限り、両方のプラットフォームおよびアドレス空間に該当します。
この節の説明を有効に利用するには、基本的なディスクアーキテクチャを理解しておく必要があります。特に、次の用語を理解しておいてください。
用語 |
説明 |
---|---|
トラック |
ディスクが回転するときに 1 つの静止したディスクヘッドの下を通過する同心リング |
シリンダ |
ディスクが回転する軸から同じ距離にあるトラックの集まり |
セクター |
ディスク上のデータ記憶領域または各ディスクプラッタの個々のセクション。1 セクターは 512 バイト。 |
ディスクコントローラ |
ディスクドライブを制御するチップおよび関連する回路 |
ディスクラベル |
ディスクのジオメトリおよびパーティション情報を含む、ディスクの第 1 セクター |
デバイスドライバ |
ハードウェアまたは仮想デバイスを制御するカーネルモジュール |
詳細は、ディスクメーカーの製品情報を参照してください。
ディスク上に格納されたファイルは、ファイルシステム中で管理されます。ディスク上の各ファイルシステムは「スライス」、つまりファイルシステム用に確保されたセクターセットのグループに割り当てられます。オペレーティングシステム (および、システム管理者) からは、各ディスクスライスは別個のディスクドライブであるかのように見えます。
ファイルシステムの詳細は、第 37 章「ファイルシステムの管理 (概要)」を参照してください。
スライスをパーティションと呼ぶこともあります。このマニュアルでは「スライス」と呼びますが、format ユーティリティなど、特定のインタフェースではスライスを「パーティション」と呼びます。
スライスを設定するときには、次の規則に注意してください。
各ディスクスライスは、ファイルシステムを 1 つしか持てない。
ファイルシステムを複数のスライスにまたがって割り当てることはできない。
SPARC プラットフォームと IA プラットフォームでは、スライスの設定が少し異なります。次の表に、主な相違点を示します。
表 31-1 プラットフォームによるスライスの違い
SPARC プラットフォーム |
IA プラットフォーム |
---|---|
ディスク全体が Solaris オペレーティング環境用になる。 |
ディスクはオペレーティング環境ごとに 1 つの fdisk パーティションに分割される。 |
ディスクは 0 から 7 までの番号が付いた 8 つのスライスに分割される。 |
Solaris の fdisk パーティションは 0 から 9 までの番号が付いた 10 個のスライスに分割される。 |
SPARC システム上では、Solaris は 8 つのディスクスライスを定義して、それぞれにある程度決まった役割を割り当てます。これらのスライスには、0 から 7 までの番号が付いています。次の表に、SPARC システム上の 8 つの Solaris スライスの内容を示します。
表 31-2 SPARC: ディスクスライス
スライス |
ファイルシステム |
通常クライアントかサーバーのどちらにあるか |
種類 |
---|---|---|---|
0 |
ルート (/) |
両方 |
オペレーティングシステムを構成するファイルとディレクトリを含む。 |
1 |
スワップ |
両方 |
仮想メモリー、つまり「スワップ空間」を提供する。スワップ空間は、実行中のプログラムが大きすぎてコンピュータのメモリーに入りきらないときに使用される。その場合、Solaris 環境では、プログラムがメモリーからディスクに「スワップ」され、必要に応じて戻される。 |
2 |
- |
両方 |
慣例的に、このスライスは Solaris fdisk パーティション全体を表す。このスライスは、Sun の format ユーティリティと Solaris インストールプログラムによって自動的に定義される。このスライスのサイズは変更しないこと。 |
3 |
/export |
サーバーのみ |
オペレーティングシステムの代替バージョンを含む。これらの代替バージョンは、サーバーとはアーキテクチャが異なるクライアントシステムに必要である。アーキテクチャのタイプがサーバーと同じクライアントは、/usr ファイルシステム (通常はスライス 6) にある実行可能プログラムを利用する。 |
4 |
|
|
サイトの必要に応じて定義可能なスライス (任意)。 |
5 |
|
|
サイトの必要に応じて定義可能なスライス (任意)。 システムに追加するアプリケーションソフトウェアを格納する。インストール時に、/opt ファイルシステムにスライスが割り当てられていなければ、スライス 0 に /opt ディレクトリが作成される。 |
6 |
/usr |
両方 |
オペレーティングシステムのコマンド (「実行可能」コマンドとも呼ぶ) を含む。また、このスライスには、マニュアル、システムプログラム (init や syslogd など)、ライブラリルーチンも含まれる。 |
7 |
/home または /export/home |
両方 |
ユーザーによって作成されるファイルを含む。 |
IA システム上では、ディスクは fdisk パーティションに分割されます。fdisk パーティションは、Solaris など、特定のオペレーティングシステムで使用するように確保されたディスクの一部です。
次の表に示すように、Solaris は Solaris fdisk パーティション上に、0 から 9 までの番号が付いた 10 個のスライスを配置します。
表 31-3 IA: ディスクスライス
スライス |
ファイルシステム |
通常クライアントまたはサーバーのどちらにあるか |
種類 |
---|---|---|---|
0 |
ルート (/) |
両方 |
オペレーティングシステムを構成するファイルとディレクトリを含む。 |
1 |
スワップ |
両方 |
仮想メモリー、つまり「スワップ空間」を提供する。スワップ空間は、実行中のプログラムが大きすぎてコンピュータのメモリーに入りきらないときに使用される。その場合、Solaris 環境では、プログラムがメモリーからディスクに「スワップ」され、必要に応じて戻される。 |
2 |
- |
両方 |
慣例的に、このスライスは Solaris fdisk パーティション全体を表す。このスライスは、Sun の format ユーティリティと Solaris インストールプログラムによって自動的に定義される。このスライスのサイズは変更しないこと。 |
3 |
/export |
サーバーのみ |
オペレーティングシステムの代替バージョンを含む。これらの代替バージョンは、サーバーとはアーキテクチャが異なるクライアントシステムに必要である。 |
4 |
|
|
サイトの必要に応じて定義可能なスライス (任意)。 |
5 |
|
両方 |
サイトの必要に応じて定義可能なスライス (任意)。 システムに追加されるアプリケーションソフトウェアを格納する。インストール時に、/opt ファイルシステムにスライスが割り当てられていなければ、スライス 0 に /opt ディレクトリが作成される。 |
6 |
/usr |
両方 |
オペレーティングシステムのコマンド (「実行可能」コマンドとも呼ぶ) を含む。また、このスライスには、マニュアル、システムプログラム (init や syslogd など)、ライブラリルーチンも含まれる。 |
7 |
/home または /export/home |
両方 |
ユーザーによって作成されるファイルを含む。 |
8 |
- |
両方 |
Solaris がハードディスクからブートするために必要な情報を含む。このスライスのスライス番号は 8 であるが、Solaris fdisk パーティションの先頭に存在するため、ブートスライスと呼ばれる。 |
9 |
- |
両方 |
代替ディスクブロック用に予約された領域であり、代替セクタースライスと呼ばれる。 |
SunOS オペレーティングシステムは、各ディスクのブロック 0 にディスクラベルを格納します。これは、raw データスライスを作成する Sun 以外の製品のデータベースアプリケーションを使用するときは、ブロック 0 から開始してはならないことを意味します。この領域に raw データスライスを作成すると、ディスクラベルが上書きされて、ディスク上のデータにアクセスできなくなります。
ディスク上の次の領域は、raw データスライス用に使用しないでください。raw データスライスは Sun 以外のデータベースアプリケーションによって作成されることがあります。
ブロック0 (ディスクラベルが格納される領域)
スライス 2 (ディスク全体を表す)
十分な大きさのディスクであれば、1 台ですべてのスライスとそれに対応するファイルシステムを確保できますが、通常はシステムのスライスとファイルシステムを確保するために複数のディスクが使用されます。
1 つのスライスを複数のディスクに分割することはできません。ただし、複数のスワップスライスを別々のディスクに配置することはできます。
たとえば、1 台のディスクにルート (/) ファイルシステム、スワップ領域、/usr ファイルシステムを入れ、別のディスクにユーザーデータを含む /export/home ファイルシステムやその他のファイルシステムを入れます。
複数のディスクを使用する場合、オペレーティングシステムソフトウェアとスワップ領域が入っているディスク (つまり、ルート (/)、/usr ファイルシステム、およびスワップ領域用のスライスが入っているディスク) を、「システムディスク」と呼びます。システムディスク以外のディスクを、「二次ディスク」または「非システムディスク」と呼びます。
システムのファイルシステムを複数のディスクに入れると、システムをシャットダウンしたりオペレーティングシステムソフトウェアをロードし直したりしなくても、二次ディスクのファイルシステムとスライスを変更できます。
また、複数のディスクを使用すると、入出力 (I/O) のパフォーマンスが改善されます。ディスク負荷を複数のディスクに分散すると、I/O のボトルネックを回避できます。
ディスクのファイルシステムを設定するときには、各スライスのサイズだけでなく、どのスライスを使用するかも決定します。どのように決定するかは、ディスクを接続するシステムの構成と、ディスクにインストールするソフトウェアによって異なります。
次のシステム構成があります。
サーバー
スタンドアロンシステム
システム構成ごとに、使用すべきスライスが異なります。次の表に、これらの要件を示します。
表 31-4 システム構成とスライスの要件
スライス |
サーバー |
スタンドアロンシステム |
---|---|---|
0 |
ルート |
ルート |
1 |
スワップ |
スワップ |
2 |
- |
- |
3 |
/export |
- |
6 |
/usr |
/usr |
7 |
/export/home |
/home |
システム構成の詳細は、「システムタイプの概要」を参照してください。
Solaris インストールプログラムは、インストール用に選択したソフトウェアに基づいて推奨スライスサイズを表示します。
使用方法や参照情報に進む前に以下の情報に目を通して、format ユーティリティの概要を確認してください。
format ユーティリティは、Solaris システム用にハードディスクドライブを用意するためのシステム管理ツールです。
次の表に、format ユーティリティの機能とその利点を示します。
表 31-5 format ユーティリティの機能と利点
機能 |
利点 |
---|---|
システム内で接続されている全ディスクドライブを検索する |
|
ディスクラベルを検索する |
修復処理に使用する。 |
欠陥セクターを修復する |
回復可能なエラーが発生したディスクドライブをメーカーに返送しなくても、熟練した管理者なら修復できる。 |
ディスクをフォーマットして、分析する |
ディスク上でセクターを作成し、検査する。 |
ディスクをパーティションに分割する |
個々のファイルシステムを別々のスライス上で作成できるようにディスクを分割する。 |
ディスクにラベルを付ける |
後から検索できるように (通常は修復用)、ディスクにディスク名と構成情報を書き込む。 |
format ユーティリティのオプションについての詳細は、第 35 章「format ユーティリティ (参照情報)」を参照してください。
Solaris のインストール時に、Solaris インストールプログラムによってディスクがパーティションに分割され、ラベルが付けられます。次のような場合に、format ユーティリティを使用できます。
スライス情報を表示する
ディスクをスライスに分割する
既存のシステムにディスクドライブを追加する
ディスクドライブをフォーマットする
ディスクにラベルを付ける
ディスクドライブを修復する
ディスクのエラーを分析する
システム管理者が format ユーティリティを使用するのは、主にディスクをディスクスライスに分割するためです。これらの手順については、第 33 章「SPARC: ディスクの追加 (手順)」と第 34 章「IA: ディスクの追加 (手順)」を参照してください。
format ユーティリティの使用上のガイドラインについては、表 31-6 を参照してください。
作業 |
注意事項 |
参照先 |
---|---|---|
ディスクをフォーマットする |
| |
システムディスクを交換する |
|
「SPARC: システムディスクを接続してブートする方法」 または 「IA: システムディスクを接続してブートする方法」、システムをインストールし直さなければならない場合は、『Solaris 9 インストールガイド』を参照 |
ディスクをスライスに分割する |
|
「SPARC: ディスクスライスとディスクラベルを作成する方法」 または 「IA: ディスクスライスとディスクラベルを作成する方法」 |
既存のシステムにディスクを追加する |
| |
ディスクドライブを修復する |
|
ほとんどの場合、ディスクはメーカーまたは再販業者によってフォーマットされています。このため、ドライブをインストールするときにフォーマットし直す必要はありません。ディスクがフォーマットされているかどうかを判別するには、format ユーティリティを使用します。詳細は、「ディスクがフォーマット済みかを調べる方法」を参照してください。
ディスクがフォーマットされていない場合、format ユーティリティを使用してフォーマットしてください。
ディスクのフォーマットでは、次の 2 つのステップが行われます。
ディスク媒体を使用できるようにする
表面解析に基づいてディスクの欠陥リストを作成する
フォーマットは、ディスク上のデータを上書きする、破壊的なプロセスです。このため、通常はメーカーや再販業者のみがディスクをフォーマットします。ディスクに欠陥があるために問題が再発していると思われる場合は、format ユーティリティを使用して表面解析を実行できますが、データを破壊しないコマンドのみを使用するように注意してください。詳細は、「ディスクをフォーマットする方法」を参照してください。
データに利用できる合計ディスク容量のうち、ごくわずかな容量が欠陥情報とフォーマット情報の格納に使用されます。この容量はディスクのジオメトリによって異なり、使用年数がたち欠陥箇所が多くなるにつれて、少なくなります。
ディスクの種類とサイズに応じて、フォーマットは数分から数時間かかります。
どのディスクにも、そのディスクのコントローラ、ジオメトリ、スライスに関する情報を格納する特殊な領域が確保されています。そのような情報をディスクの「ラベル」と呼びます。また、ディスクラベルを表すのに VTOC (Volume Table of Contents) という用語を使用することもあります。「ディスクにラベルを付ける」とは、ディスクにスライス情報を書き込むことを意味します。通常は、ディスクのスライスを変更した後にラベルを付けます。
スライスを作成した後でディスクにラベルを付けないと、オペレーティングシステムはスライスを「認識」する方法がないので、そのスライスを利用できなくなります。
ディスクラベルのうち重要な部分は「パーティションテーブル」です。この部分は、ディスクのスライス、スライスの境界 (シリンダ単位)、スライスの合計サイズを表します。ディスクのパーティションテーブルは、format ユーティリティを使用して表示できます。次の表に、パーティションテーブル関連の用語を示します。
表 31-7 パーティションテーブル関連の用語
用語 |
値 |
説明 |
---|---|---|
番号 | 0-7 |
パーティション (またはスライス番号)。有効な番号は 0 から 7 まで。 |
タグ | 0=UNASSIGNED 1=BOOT 2=ROOT 3=SWAP 4=USR 5=BACKUP 7=VAR 8=HOME |
一般にこのパーティションにマウントされたファイルシステムを記述する数値。 |
フラグ |
wm |
パーティションは書き込み可能でマウント可能である。 |
|
wu rm |
パーティションは書き込み可能でマウント不可である。これは、スワップ領域専用のパーティションのデフォルト状態である (ただし、mount コマンドでは「マウント不可」のフラグはチェックされない)。 |
|
rm |
パーティションは読み取り専用でマウント可能である。 |
パーティションのフラグとタグは必ず割り当てられるので、管理する必要はありません。
パーティションテーブルを表示する手順については、「ディスクスライス情報を表示する方法」 または 「ディスクラベルを検査する方法」 を参照してください。
以下は、1.05G バイトのディスクについて、format ユーティリティを使用してパーティションテーブルを表示したものです。
Total disk cylinders available: 2036 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 300 148.15MB (301/0/0) 303408 1 swap wu 301 - 524 110.25MB (224/0/0) 225792 2 backup wm 0 - 2035 1002.09MB (2036/0/0) 2052288 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 usr wm 525 - 2035 743.70MB (1511/0/0) 1523088 7 unassigned wm 0 0 (0/0/0) 0 |
format ユーティリティを使用して表示されるパーティションテーブルには、次の情報が含まれます。
列名 |
説明 |
---|---|
Part |
パーティション (またはスライス番号)。この列についての説明は、表 31-7 を参照。 |
Tag |
パーティションのタグ。この列についての説明は、表 31-7 を参照。 |
Flag |
パーティションのフラグ。この列についての説明は、表 31-7 を参照。 |
Cylinders |
スライスの開始シリンダ番号と終了シリンダ番号を示す。 |
Size |
スライスのサイズを M バイト単位で示す。 |
Blocks |
合計シリンダ数と 1 スライス当たりの合計セクター数 (カラムの右端) を示す。 |
次の例は、 prtvtoc コマンドを使用してディスクラベルを表示した結果です。
# prtvtoc /dev/rdsk/c0t1d0s0 * /dev/rdsk/c0t1d0s0 partition map * * Dimensions: * 512 bytes/sector * 72 sectors/track * 14 tracks/cylinder * 1008 sectors/cylinder * 2038 cylinders * 2036 accessible cylinders * * Flags: * 1: unmountable * 10: read-only * * First Sector Last * Partition Tag Flags Sector Count Sector Mount Directory 0 2 00 0 303408 303407 / 1 3 01 303408 225792 529199 2 5 00 0 2052288 2052287 6 4 00 529200 1523088 2052287 /usr |
prtvtoc コマンドで、次の情報が取得できます。
列名 |
説明 |
---|---|
Dimensions |
このセクションでは、ディスクドライブの物理的な構成を示す。 |
Flags |
このセクションでは、パーティションテーブルのセクションに記載されたフラグを示す。パーティションフラグについての説明は、表 31-7を参照。 |
Partition (または Slice) テーブル |
このセクションには次の情報が含まれます。 |
Partition |
パーティション (またはスライス番号)。この列についての説明は、表 31-7を参照。 |
Tag |
パーティションのタグ。この列についての説明は、表 31-7を参照。 |
Flags |
パーティションのフラグ。この列についての説明は、表 31-7を参照。 |
First Sector |
スライスの最初のセクターを示す。 |
Sector Count |
スライス内の合計セクター数を示す。 |
Last Sector |
スライスの最後のセクターを示す。 |
Mount Directory |
ファイルシステムの最後のマウントポイントのディレクトリを示す。 |
format ユーティリティは、主にシステム管理者がディスクをスライスに分割する場合に使われます。手順を次に示します。
どのスライスが必要かを決定する
各スライスのサイズを決定する
format ユーティリティを使用してディスクをスライスに分割する
新しいスライス情報を使用してディスクにラベルを付ける
スライスごとにファイルシステムを作成する
ディスクをスライスに分割するには、 format ユーティリティの partition メニューで modify コマンドを実行するのが最も簡単です。modify コマンドを使用すると、開始シリンダ境界を追跡しなくても、各スライスのサイズを M バイト単位で指定してスライスを作成できます。modify コマンドを使用すると、「free hog 」スライス内の残りのディスク領域も追跡できます。
format ユーティリティを使用してディスクスライスのサイズを変更するときには、サイズ変更操作に対応して拡大縮小する一時スライスを指定します。
このスライスは、スライスを拡大すると領域を「解放 (free)」し、スライスを圧縮すると放棄された領域を「回収 (hog)」します。このため、提供側のスライスを「free hog」と呼びます。
free hog スライスは、インストール時または format ユーティリティの実行時にのみ存在します。日常の操作中に free hog スライスが継続して存在することはありません。
free hog スライスの使用方法の詳細は、「SPARC: ディスクスライスとディスクラベルを作成する方法」または 「IA: ディスクスライスとディスクラベルを作成する方法」を参照してください。