Solaris のシステム管理 (デバイスとファイルシステム)

第 10 章 ディスクの管理 (概要)

この章では、Oracle Solaris ディスクスライスの概要および format ユーティリティーについて説明します。

この章の内容は次のとおりです。

システムにディスクを追加する方法については、第 12 章SPARC: ディスクの追加 (手順)または第 13 章x86: ディスクの追加 (手順)を参照してください。

ディスク管理の新機能

この節では、Solaris リリースの新しいディスク管理機能について説明します。

Solaris の新機能の一覧および Solaris リリースについての説明は、『Oracle Solaris 10 9/10 の新機能』を参照してください。

Solaris OS のインストール時およびブート時における 2T バイトディスクのサポート

Solaris 10 10/09: 以前の Solaris リリースでは、1T バイトを超えるディスクに Solaris OS をインストールしてブートすることはできませんでした。この Solaris リリースでは、最大 2T バイトのサイズのディスクに Solaris OS をインストールしてブートできます。以前のリリースでは、1T バイトを超えるディスクには EFI ラベルを使用する必要がありました。このリリースでは、任意のサイズのディスクに VTOC ラベルを使用できますが、VTOC でアドレス指定可能な容量は 2T バイトに制限されています。

Solaris ディスクドライバおよびディスクユーティリティーが更新され、次のサポートが提供されるようになりました。

1T バイトを超えるレガシー MBR またはレガシー VTOC ディスクを、以前の Solaris リリースに移動することはできないことに留意してください。EFI ラベルの付いたディスクは、以前の Solaris リリースの場合と同様に引き続き動作します。

このリリースでの EFI ラベルの変更の詳細は、「EFI ディスクラベル」を参照してください。

Solaris iSCSI ターゲットおよびイニシエータでの iSNS のサポート

Solaris 10 8/07: この Solaris リリースでは、Solaris iSCSI ターゲットおよびイニシエータソフトウェアで iSNS (Internet Storage Name Service) プロトコルがサポートされます。iSNS プロトコルによって、TCP/IP ネットワーク上での iSCSI デバイスの発見、管理、および設定を自動化できます。

この Solaris リリースでは、iscsitadm コマンドを使って既存の他社製 iSNS サーバーへのアクセスを追加したり、Solaris iSNS サーバーを使ってネットワーク内の iSCSI デバイスを自動的に発見したりすることができます。iSNS サーバーはホスト名または IP アドレスで指定できます。iSNS サーバーの情報を追加したあと、サーバーへのアクセスを有効にする必要があります。

詳しい手順については次の情報を参照してください。

Solaris iSCSI ターゲットのサポート

Solaris 10 8/07: この Solaris リリースでは、iSCSI ターゲットデバイス (ディスクまたはテープデバイス) がサポートされます。以前の Solaris リリースでは、iSCSI イニシエータがサポートされます。Solaris iSCSI ターゲットを設定する利点は、ファイバチャネル HBA の費用をかけずに、クライアントに接続できる既存のファイバチャネルデバイスを持てることです。また、専用のアレイを持つシステムが、複製されたストレージを ZFS または UFS ファイルシステムでエクスポートすることも可能になりました。

iscsitadm コマンドを使用して、iSCSI ターゲットデバイスを設定および管理できます。iSCSI ターゲットとして選択したディスクデバイスでは、iSCSI デーモン用のバッキングストアとして、同サイズの ZFS または UFS ファイルシステムを提供する必要があります。

ターゲットデバイスの設定後に、iscsiadm コマンドを使って iSCSI ターゲットを識別します。これにより、iSCSI ターゲットデバイスが検出および使用されます。

詳細は、第 14 章Oracle Solaris iSCSI ターゲットおよびイニシエータの構成 (手順)iscsiadm(1M) のマニュアルページ、および iscsitadm(1M) のマニュアルページを参照してください。


注 –

このマニュアルの以前のバージョンでは、Solaris 10 11/06 リリースで Solaris iSCSI ターゲットがサポートされると記述されていましたが、それは誤りです。この機能は、Solaris 10 8/07 リリースから使用できるようになりました。


Solaris iSCSI イニシエータのサポート

Solaris 10 1/06: iSCSI は、データストレージサブシステムを接続するための、インターネットプロトコル (Internet Protocol、IP) ベースのストレージネットワーク標準です。SCSI コマンドを IP ネットワーク経由で伝送するため、iSCSI プロトコルにより、ネットワーク上でローカルシステムにディスクデバイスをマウントできます。ローカルシステム上では、デバイスをブロックデバイスのように使用できます。

詳細は、第 14 章Oracle Solaris iSCSI ターゲットおよびイニシエータの構成 (手順)を参照してください。

Solaris iSCSI イニシエータサポートの機能拡張

Solaris 10 6/06: Solaris iSCSI イニシエータサポートに次の拡張機能が追加されました。

Solaris iSCSI イニシエータの構成の詳細は、第 14 章Oracle Solaris iSCSI ターゲットおよびイニシエータの構成 (手順)および iscsiadm(1M) のマニュアルページを参照してください。

x86: GRUB ブート環境でのディスク管理

Solaris 10 1/06: x86 システムの従来のブート方式が GRUB ブートメニューに置き換わっています。ディスク管理の領域では、システムディスクを置き換えるための代替デバイスからブートするとき、またはブートブロックをインストールするときは、GRUB インタフェースを使用します。

GRUB ブート環境は次の機能を提供します。

GRUB 環境では、x86 システム上で動作しているときに、fmthard コマンドを使用してブートブロックを自動的にインストールすることはできません。ブートブロックは別個にインストールする必要があります。

x86 システム上で新しい GRUB ベースのブートを使用するときの機能説明および手順の詳細については、『Solaris のシステム管理 (基本編)』「GRUB を使用して x86 システムをブートする (作業マップ)」を参照してください。

GRUB ブート環境でディスクを管理する手順については、次の項目を参照してください。

この機能は、SPARC システムでは使用できません。

2T バイトを超える SCSI ディスクのサポート

Solaris 10 1/06: SCSI ドライバ ssd または sd は、2T バイト以上をサポートします。以前の Solaris リリースでは、SCSI ドライバ ssd または sd が 2T バイトに制限されています。

format ユーティリティーを使用して、これらの大容量ディスクのラベル作成、構成、およびパーティション作成を行うことができます。大容量ディスクで EFI ディスクラベルを使用する方法および fdisk ユーティリティーの制限事項については、 「EFI ディスクラベルの制限」を参照してください。

ディスク管理作業についての参照先

ディスク管理の手順については、次を参照してください。

ディスク管理作業 

参照先 

ディスクをフォーマットしてディスクラベルを確認します。 

第 11 章ディスクの管理 (手順)

SPARC システムに新しいディスクを追加します。 

第 12 章SPARC: ディスクの追加 (手順)

x86 システムに新しいディスクを追加します。 

第 13 章x86: ディスクの追加 (手順)

SCSI または PCI ディスクのホットプラグを実行します。 

第 6 章デバイスの動的構成 (手順)

ディスク管理の概要

一般に、Oracle Solaris OS におけるディスクの管理とは、システムを設定し、Solaris インストールプログラムを実行し、適切なディスクスライスおよびファイルシステムを作成して Oracle Solaris OS をインストールすることを意味します。また、format ユーティリティーを使用して、新しいディスクドライブを追加したり、欠陥ディスクドライブを交換したりしなければならない場合もあります。

ディスク関連の用語

この節の説明を有効に利用するには、基本的なディスクアーキテクチャーを理解しておく必要があります。特に、次の用語を理解しておいてください。

用語 

説明 

トラック 

ディスクが回転するときに 1 つの静止したディスクヘッドの下を通過する同心リング。 

シリンダ 

ディスクが回転する軸から同じ距離にあるトラックの集まり。 

セクター 

各ディスクプラッタのセクション。1 セクターは 512 バイトです。  

ブロック 

ディスク上のデータ記憶領域。1 ディスクブロックは 512 バイトです。 

ディスクコントローラ 

ディスクドライブを制御するチップおよび関連する回路。 

ディスクラベル 

ディスクのジオメトリおよびパーティション情報を含む、ディスクの第 1 セクター。 

デバイスドライバ 

ハードウェアまたは仮想デバイスを制御するカーネルモジュール。 

詳細は、ディスク製造元の製品情報を参照してください。

ディスクラベルについて

どのディスクにも、そのディスクのコントローラ、ジオメトリ、およびスライスに関する情報を格納する特殊な領域が確保されています。このような情報をディスクの「ラベル」と呼びます。VTOC ラベル付きのディスク上のディスクラベルを「VTOC (Volume Table of Contents)」と呼びます。「ディスクにラベルを付ける」とは、ディスクにスライス情報を書き込むことを意味します。通常は、ディスクのスライスを変更した後にラベルを付けます。

Solaris リリースでは、次の 2 つのディスクラベルをサポートしています。

スライスを作成したあとでディスクにラベルを付けないと、OS はスライスを「認識」する方法がないので、そのスライスを利用できなくなります。

EFI ディスクラベル

EFI ラベルは、サイズが 2T バイトを超える物理ディスクボリュームと仮想ディスクボリュームをサポートします。このリリースには、2T バイトを超えるサイズのディスクを管理するための更新版ディスクユーティリティーが付属しています。UFS ファイルシステムには EFI ディスクラベルとの互換性があり、2T バイトを超えるサイズの UFS ファイルシステムを作成できます。マルチテラバイトの UFS ファイルシステムの作成方法については、「64 ビット: マルチテラバイトの UFS ファイルシステムのサポート」を参照してください。

1T バイトを超えるファイルシステムを作成する必要がある場合は、別パッケージの Sun QFS ファイルシステムも使用できます。Sun QFS ファイルシステムについては、『Sun QFS, Sun SAM-FS, and Sun SAM-QFS File System Administrator’s Guide』を参照してください。

今回の Solaris リリースでは、Solaris ボリュームマネージャーでも 1T バイトを超えるディスク管理が可能です。Solaris ボリュームマネージャーの使用方法については、『Solaris ボリュームマネージャの管理』を参照してください。

サイズが 2T バイトに満たないディスクでは、引き続き VTOC ラベルを使用できます。現在のシステムでサイズが 2T バイトに満たないディスクしか使用しない場合は、以前の Solaris リリースと同じ方法でディスク管理を行います。サイズが 2T バイト以下のディスクに EFI ラベルでラベル付けを行う場合は、format-e コマンドを使用します。詳細は、例 11–6 を参照してください。

システム上で適切な Solaris リリースが実行されている場合、format -e コマンドを使用することで EFI ラベルをディスクに適用できます。ただし、EFI ラベルを適用する前に、「EFI ディスクラベルの制限」に記載された重要な情報を確認することをお勧めします。

EFI ラベルが不要になった場合に、format -e コマンドを使って、VTOC ラベルを再度適用することもできます。次に例を示します。


# format
Specify disk (enter its number): 2
selecting c0t5d0
[disk formatted]
.
.
.
format> label
[0] SMI Label
[1] EFI Label
Specify Label type[1]: 0
Warning: This disk has an EFI label. Changing to SMI label will erase all
current partitions.
Continue? yes
Auto configuration via format.dat[no]? 
Auto configuration via generic SCSI-2[no]? 
format> quit

注意 – 注意 –

ディスクラベルを変更すると、ディスク上のデータがすべて破棄されることに留意してください。


EFI ラベルと VTOC ラベル

EFI ディスクラベルが VTOC ディスクラベルと異なる点は次のとおりです。

EFI ディスクラベルの制限

サイズが 1T バイトを超えるディスクを使用することが現在の環境にとって適切かどうかを判断するときは、次の点を考慮してください。

x86 システムにおける EFI ラベル付きディスクのサポート

x86 システム上では、EFI ディスクラベルの Solaris サポートが利用可能です。x86 システムで EFI ラベルを追加するには、次のコマンドを使用します。


# format -e
> [0] SMI Label
> [1] EFI Label
> Specify Label type[0]: 1
> WARNING: converting this device to EFI labels will erase all current
> fdisk partition information. Continue? yes

以前のラベル情報は EFI ディスクラベルに変換されません。

format コマンドを使ってラベルのパーティション情報を手動で作成し直す必要があります。EFI ラベル付きの 2T バイトのディスク上で fdisk コマンドを使用することはできません。2T バイトを超えるディスクで fdisk コマンドを実行して Solaris パーティションを作成する場合、Solaris パーティションは 2T バイトに制限されます。EFI ディスクラベルの詳細は、前の節を参照してください。

EFI ラベル付きディスクを使用したシステムへのインストール

Solaris インストールユーティリティーは、EFI ラベル付きディスクを自動的に認識します。しかし、Solaris インストールプログラムでは、これらのディスクのパーティション分割をやり直すことはできません。インストール前またはインストール後に EFI ラベル付きディスクのパーティション分割をやり直す場合は、format ユーティリティーを使用してください。Solaris Upgrade ユーティリティーおよび Live Upgrade ユーティリティーも EFI ラベル付きディスクを認識します。ただし、EFI ラベル付きディスクからシステムをブートすることはできません。

EFI ラベル付きディスクを使用するシステム上に Solaris をインストールした場合、次のようなパーティションテーブル情報が得られます。


Current partition table (original):
Total disk sectors available: 2576924638 + 16384 (reserved sectors)

Part      Tag    Flag     First Sector          Size          Last Sector
  0       root    wm                34         1.20TB           2576924636
  1 unassigned    wm                 0            0                0    
  2 unassigned    wm                 0            0                0    
  3 unassigned    wm                 0            0                0    
  4 unassigned    wm                 0            0                0    
  5 unassigned    wm                 0            0                0    
  6 unassigned    wm                 0            0                0    
  8   reserved    wm        2576924638         8.00MB           2576941021

EFI ラベル付きディスクの管理

EFI ラベル付きディスクの管理方法は、次の表で確認できます。

作業 

参照先 

インストール済みのシステムにディスクを接続し、再構成 (ブート) を実行します。 

「SPARC: システムディスクまたは二次ディスクの追加 (作業マップ)」または 「x86: システムディスクまたは二次ディスクの追加 (作業マップ)」

format ユーティリティーを使ってディスクのパーティション分割を行います (必要に応じて)。

「SPARC: ディスクスライスとディスクラベルを作成する方法」または 「x86: ディスクスライスとディスクラベルを作成する方法」

ディスクボリュームを作成します。その後、Solaris ボリュームマネージャーでソフトパーティションを作成します (必要に応じて)。または、ZFS ストレージプールを設定します。 

『Solaris ボリュームマネージャの管理』の第 2 章「記憶装置管理の概念」または『Oracle Solaris ZFS 管理ガイド』「ZFS ストレージプールを作成する」

newfs コマンドを使用して新しいディスク用の UFS ファイルシステムを作成します。

「SPARC: UFS ファイルシステムを作成する方法」または 「x86: ファイルシステムを作成する方法」

または ZFS ファイルシステムを作成します。 

『Oracle Solaris ZFS 管理ガイド』「ZFS ファイルシステムを作成する方法」

EFI ラベル付きディスクを複製します。 

例 28–2

EFI ディスクラベルに関する問題の障害追跡

EFI ラベル付きディスクに関する問題のトラブルシューティングを行うときは、次のエラーメッセージと解決方法を使用してください。

エラーメッセージ

Dec  3 09:26:48 holoship scsi: WARNING: /sbus@a,0/SUNW,socal@d,10000/
sf@1,0/ssd@w50020f23000002a4,0 (ssd1):
Dec  3 09:26:48 holoship disk has 2576941056 blocks, which is too large 
for a 32-bit kernel
エラーの発生原因

32 ビットの SPARC または x86 カーネルを実行しているシステムを、サイズが 1T バイトを超えるディスクでブートしようとしました。

解決方法

サイズが 1T バイト以上のディスクでは、64 ビットの SPARC または x86 カーネルを実行しているシステムをブートしてください。

エラーメッセージ

Dec  3 09:12:17 holoship scsi: WARNING: /sbus@a,0/SUNW,socal@d,10000/
sf@1,0/ssd@w50020f23000002a4,0 (ssd1):
Dec  3 09:12:17 holoship corrupt label - wrong magic number
エラーの発生原因

古い Solaris リリースで動作するシステムにディスクを追加しようとしました。

解決方法

このディスクは、EFI ディスクラベルをサポートしている Solaris リリースで動作するシステムに追加してください。

ディスクスライスについて

ディスク上に格納されたファイルは、ファイルシステム中で管理されます。ディスク上の各ファイルシステムは「スライス」、つまりファイルシステム用に確保されたセクターセットのグループに割り当てられます。Oracle Solaris OS (および、システム管理者) からは、各ディスクスライスは別個のディスクドライブであるかのように見えます。

ファイルシステムの詳細は、第 16 章ファイルシステムの管理 (概要)を参照してください。


注 –

スライスを「パーティション」と呼ぶこともあります。format ユーティリティーなど、特定のインタフェースではスライスを「パーティション」と呼びます。


スライスを設定するときには、次の規則に注意してください。

SPARC プラットフォームと x86 プラットフォームでは、スライスの設定が少し異なります。次の表に、主な相違点を示します。

表 10–1 SPARC プラットフォームと x86 プラットフォームでのスライスの違い

SPARC プラットフォーム 

x86 プラットフォーム 

ディスク全体が Oracle Solaris OS 用になります。 

ディスクはオペレーティングシステムごとに 1 つの fdisk パーティションに分割されます。

VTOC – ディスクは 8 スライス (スライス 0 - 7) に分割されます。

EFI – ディスクは 7 スライス (スライス 0 - 6) に分割されます。

VTOC – Solaris の fdisk パーティションは 10 スライス (スライス 0 - 9) に分割されます。

EFI – ディスクは 7 スライス (スライス 0 - 6) に分割されます。

Solaris ボリュームマネージャー (以前の Solstice DiskSuite) には「ソフトパーティション」と呼ばれるパーティション分割機能が備わっています。ソフトパーティションを使えば、1 つのディスクに 9 個以上のパーティションを作成できます。

Solaris ボリュームマネージャーの一般的な情報については、『Solaris ボリュームマネージャの管理』の第 2 章「記憶装置管理の概念」を参照してください。ソフトパーティションについては、『Solaris ボリュームマネージャの管理』の第 12 章「ソフトパーティション (概要)」を参照してください。

ディスクスライス

Oracle Solaris OS を実行するシステムには、次のようなスライスが存在する可能性があります。

x86 システムの場合

表 10–2 ディスクスライス

スライス 

ファイルシステム 

通常クライアントかサーバーのどちらにあるか 

Comments 

ルート (/)

両方 

OS を構成するファイルとディレクトリを含みます。 

EFI – EFI ラベル付きディスクからはブートを実行できません。

スワップ領域 

両方 

仮想メモリー、つまり「スワップ空間」を提供します。

— 

両方 

VTOC – 慣例的にディスク全体を表します。このスライスのサイズは変更するべきではありません。

EFI – サイトの必要に応じてオプションスライスを定義します。

/export など

両方 

サイトの必要に応じて定義可能なスライス (任意)。 

クライアントシステムが必要とする代替オペレーティングシステムを格納するため、サーバー上で使用できます。 

 

両方 

サイトの必要に応じて定義可能なスライス (任意)。 

/opt など

両方 

サイトの必要に応じて定義可能なスライス (任意)。 

システムに追加されるアプリケーションソフトウェアを格納します。インストール時に、/opt ファイルシステムにスライスが割り当てられていなければ、スライス 0 に /opt ディレクトリが作成されます。

/usr

両方 

OS のコマンド (「実行可能ファイル」とも呼ぶ) を含みます。このスライスには、マニュアル、システムプログラム (initsyslogd など)、ライブラリルーチンも含まれます。

/home または

/export/home

両方 

ユーザーによって作成されるファイルを含みます。 

なし 

なし 

VTOC – GRUB ブート情報を含んでいます。

EFI – デフォルトで作成された予約済みスライス。VTOC の代替シリンダによく似た領域です。このスライスは変更または削除しないでください。

9 (x86 のみ)

— 

両方 

EFI – 適用できません。

VTOC – 代替ディスクブロック用に予約された領域です。スライス 9 は代替セクタースライスと呼ばれます。


注 –

VTOC ラベルの付いたディスクでは、スライスを変更したり、スライス 2 を使ってファイルシステムを格納したりしないでください。Solaris ボリュームマネージャー、Solaris Live Upgrade、installgrub などの製品は、スライス 2 が少しでも変更されると正しく動作しません。


raw データスライスの使用

ディスクラベルは、各ディスクのブロック 0 に格納されます。つまり、他社製データベースアプリケーションを使って raw データスライスを作成するときは、ブロック 0 で開始してはいけません。そのようにすると、ディスクラベルが上書きされて、ディスク上のデータにアクセスできなくなります。

ディスク上の次の領域は、raw データスライス用に使用しないでください。raw データスライスは他社製のデータベースアプリケーションによって作成されることがあります。

複数のディスク上のスライス配置

十分な大きさのディスクであれば、1 台ですべてのスライスとそれに対応するファイルシステムを確保できますが、通常はシステムのスライスとファイルシステムを確保するために複数のディスクが使用されます。


注 –

1 つのスライスを複数のディスクに分割することはできません。ただし、複数のスワップスライスを別々のディスクに配置することはできます。


たとえば、1 台のディスクにルート (/) ファイルシステム、スワップ領域、/usr ファイルシステムを入れ、別のディスクにユーザーデータを含む /export/home ファイルシステムやその他のファイルシステムを入れます。

複数のディスクを使用する場合、OS とスワップ領域が入っているディスク (つまり、ルート (/)、/usr ファイルシステム、およびスワップ領域用のスライスが入っているディスク) を、「システムディスク」と呼びます。システムディスク以外のディスクを、「二次ディスク」または「非システムディスク」と呼びます。

システムのファイルシステムを複数のディスクに入れると、システムをシャットダウンしたり OS をロードし直したりしなくても、二次ディスクのファイルシステムとスライスを変更できます。

また、複数のディスクを使用すると、入出力 (I/O) のパフォーマンスが改善されます。ディスク負荷を複数のディスクに分散すると、I/O のボトルネックを回避できます。

使用するスライスの決定

ディスクのファイルシステムを設定するときには、各スライスのサイズだけでなく、どのスライスを使用するかも決定します。どのように決定するかは、ディスクを接続するシステムの構成と、ディスクにインストールするソフトウェアによって異なります。

次のシステム構成があります。

システムの構成が異なれば、スライスの使用方法も異なります。次の表に例を挙げます。

表 10–3 システム構成とスライス

スライス 

サーバー 

スタンドアロンシステム 

ルート 

ルート 

スワップ領域 

スワップ領域 

— 

— 

/export

— 

/usr

/usr

/export/home

/home

システム構成の詳細は、『Solaris のシステム管理 (基本編)』「システムタイプの概要」を参照してください。


注 –

Solaris インストールユーティリティーは、インストール用に選択したソフトウェアに基づいてデフォルトのスライスサイズを表示します。


format ユーティリティー

手順や参照情報のセクションに進む前に、次の情報に目を通して format ユーティリティーの概要とその使用法を確認してください。

format ユーティリティーは、Solaris システム用にハードディスクドライブを用意するためのシステム管理ツールです。

次の表に、format ユーティリティーの機能とその利点を示します。

表 10–4 format ユーティリティーの機能と利点

機能 

利点 

システム内で接続されている全ディスクドライブを検索します 

次の状態を報告します  

  • ターゲットの位置

  • ディスクのジオメトリ

  • ディスクがフォーマット済みかどうか

  • ディスク上にマウントされているパーティションが存在するかどうか

ディスクラベルを検索します 

修復処理に使用します 

欠陥セクターを修復します 

回復可能なエラーが発生したディスクドライブを製造元に返送しなくても、熟練した管理者なら修復できます 

ディスクをフォーマットして、分析します 

ディスク上でセクターを作成し、検査します 

ディスクをパーティションに分割します 

個々のファイルシステムを別々のスライス上で作成できるようにディスクを分割します 

ディスクにラベルを付けます 

後から検索できるように (通常は修復用)、ディスクにディスク名と構成情報を書き込みます 

format ユーティリティーのオプションについては、第 15 章format ユーティリティー (参照情報)を参照してください。

format ユーティリティーを使用する場合

Solaris のインストール時に、Solaris インストールユーティリティーによってディスクドライブがパーティションに分割され、ラベルが付けられます。次のような場合に、format ユーティリティーを使用できます。

システム管理者が format ユーティリティーを使用するのは、主にディスクをパーティションに分割するためです。これらの手順については、第 12 章SPARC: ディスクの追加 (手順)第 13 章x86: ディスクの追加 (手順)を参照してください。

format ユーティリティーの使用上のガイドラインについては、次の節を参照してください。

format ユーティリティー使用上のガイドライン

表 10–5 format ユーティリティーのガイドライン

作業 

ガイドライン 

参照先 

ディスクをフォーマットします。 

  • ディスクをフォーマットし直すと、既存のデータが失われます。

  • ディスクドライブをフォーマットしてパーティションに分割した状態で出荷する製造元が増えているので、ディスクドライブをフォーマットする必要性は減少しています。既存のシステムにディスクドライブを追加する場合は、format ユーティリティーを使用しなくてもすむことがあります。

  • ディスクを配置し直して多数のディスクエラーが表示される場合は、フォーマットし直してみることをお勧めします。不良セクターが自動的にマッピングし直されます。

「ディスクをフォーマットする方法」

システムディスクを交換します。 

  • 損傷したシステムディスクのデータは、バックアップメディアから復元しなければなりません。復元しなければ、インストールユーティリティーを使用してシステムをもう一度インストールしなければなりません。

「SPARC: システムディスクを接続してブートする方法」「x86: システムディスクの接続方法」、また、システムをインストールし直さなければならない場合は『Oracle Solaris 10 9/10 インストールガイド (基本編)』

ディスクをスライスに分割します。 

  • すでにスライスに分割されているディスクで、パーティションを再分割してラベルを付け直すと、既存のデータが失われます。

  • ディスクのパーティションを分割し直して復元する前に、既存のデータをバックアップメディアにコピーする必要があります。

「SPARC: ディスクスライスとディスクラベルを作成する方法」または 「x86: ディスクスライスとディスクラベルを作成する方法」

既存のシステムに二次ディスクを追加します。 

  • 二次ディスクをフォーマットし直すか、パーティションに分割し直す場合は、既存のデータをバックアップメディアから復元しなければなりません。

「SPARC: 二次ディスクを接続してブートする方法」または 「x86: 二次ディスクを接続してブートする方法」

ディスクドライブを修復します。 

  • 顧客のサイトによっては、欠陥ドライブの修復ではなくドライブ自体の交換を希望する場合があります。サイトがディスクドライブの製造元と保守契約を結んでいる場合は、format ユーティリティーを使用してディスクドライブを修復する必要はありません。

  • 通常、ディスクドライブの修復とは、不良セクターを欠陥リストに追加することを意味します。新しいコントローラは不良セクターをマップし直すので、システムを中断する必要はありません。

  • システムに旧型のコントローラがある場合や、失われたデータを復元する場合は、不良セクターをマップし直す必要があります。

「欠陥セクターの修復」

ディスクのフォーマット

ほとんどの場合、ディスクは製造元または再販業者によってフォーマットされています。このため、ドライブをインストールするときにフォーマットし直す必要はありません。ディスクがフォーマットされているかどうかを判別するには、format ユーティリティーを使用します。詳細は、「ディスクがフォーマット済みかを調べる方法」を参照してください。

ディスクがフォーマットされていない場合、format ユーティリティーを使用してフォーマットしてください。

ディスクのフォーマットでは、次の 2 つのステップが行われます。


注意 – 注意 –

フォーマットは、ディスク上のデータを上書きする、破壊的なプロセスです。このため、通常は製造元や再販業者のみがディスクをフォーマットします。ディスクに欠陥があるために問題が再発していると思われる場合は、format ユーティリティーを使用して表面解析を実行できますが、データを破壊しないコマンドだけを使用するように注意してください。詳細は、「ディスクをフォーマットする方法」を参照してください。


データに利用できる合計ディスク容量のうち、ごくわずかな容量が欠陥情報とフォーマット情報の格納に使用されます。この容量はディスクのジオメトリによって異なり、使用年数がたち欠陥箇所が多くなるにつれて、少なくなります。

ディスクの種類とサイズに応じて、フォーマットは数分から数時間かかります。

ディスクをパーティションに分割する

format ユーティリティーは、主にシステム管理者がディスクをパーティションに分割する場合に使われます。手順を次に示します。

ディスクをパーティションに分割するには、format ユーティリティーの partition メニューで modify コマンドを実行するのがもっとも簡単です。modify コマンドを使用すると、開始シリンダ境界を追跡しなくても、各パーティションのサイズを指定してパーティションを作成できます。modify コマンドを使用すると、「free hog」スライス内の残りのディスク領域も追跡できます。

パーティションテーブル関連の用語

ディスクラベルのうち重要な部分は「パーティションテーブル」です。パーティションテーブルは、ディスクのスライス、スライスの境界 (シリンダ単位)、スライスの合計サイズを表します。ディスクのパーティションテーブルは、format ユーティリティーを使用して表示できます。次の表に、パーティションテーブル関連の用語を示します。

表 10–6 パーティションテーブル関連の用語

用語 

値 

説明 

数値 

0–7

VTOC – 0 - 7 の番号が付いたパーティションまたはスライス。

EFI – 0 - 6 の番号が付いたパーティションまたはスライス。

タグ 

0=UNASSIGNED 1=BOOT 2=ROOT 3=SWAP 4=USR 5=BACKUP 7=VAR 8=HOME 11=RESERVED

一般にこのパーティションにマウントされたファイルシステムを記述する数値。 

フラグ 

wm

パーティションは書き込み可能でマウント可能です。 

 

wu rm

パーティションは書き込み可能でマウントはできません。これは、スワップ領域専用のパーティションのデフォルト状態です。ただし、mount コマンドでは「マウント不可」のフラグは検査されません。

 

rm

パーティションは読み取り専用でマウント可能です。 

パーティションのフラグとタグは必ず割り当てられるので、管理する必要はありません。

パーティションテーブルを表示する手順については、次の項目を参照してください。

パーティションテーブル情報の表示

次の例は、format ユーティリティーを使って、74G バイトの VTOC ラベル付きディスクのパーティションテーブルを表示したものです。


Total disk cylinders available: 38756 + 2 (reserved cylinders)

Part      Tag    Flag     Cylinders         Size            Blocks
  0       root    wm       3 -  2083        4.00GB    (2081/0/0)    8390592
  1       swap    wu    2084 -  3124        2.00GB    (1041/0/0)    4197312
  2     backup    wm       0 - 38755       74.51GB    (38756/0/0) 156264192
  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 unassigned    wm       0                0         (0/0/0)             0
  7       home    wm    3125 - 38755       68.50GB    (35631/0/0) 143664192
  8       boot    wu       0 -     0        1.97MB    (1/0/0)          4032
  9 alternates    wu       1 -     2        3.94MB    (2/0/0)          8064

partition> 

format ユーティリティーを使用して表示されるパーティションテーブルには、次の情報が含まれます。

列名 

説明 

Part

パーティションまたはスライスの番号。この列についての説明は、表 10–6 を参照してください。

Tag

パーティションのタグ。この列についての説明は、表 10–6 を参照してください。

Flag

パーティションのフラグ。この列についての説明は、表 10–6 を参照してください。

Cylinders

スライスの開始シリンダ番号と終了シリンダ番号を示します。EFI ラベル付きディスクでは表示されません。 

Size

スライスのサイズを M バイト単位で示します。 

Blocks

合計シリンダ数と 1 スライス当たりの合計セクター数を示します。EFI ラベル付きディスクでは表示されません。 

First Sector

EFI – 開始ブロック番号。VTOC ラベル付きディスクでは表示されません。

Last Sector

EFI – 終了ブロック番号。VTOC ラベル付きディスクでは表示されません。

次に、prtvtoc コマンドを使用して EFI ディスクラベルを表示した例を示します。


# prtvtoc /dev/rdsk/c4t1d0s0
* /dev/rdsk/c4t1d0s0 partition map
*
* Dimensions:
*     512 bytes/sector
* 2576941056 sectors
* 2576940989 accessible sectors
*
* Flags:
*   1: unmountable
*  10: read-only
*
*                           First     Sector    Last
* Partition  Tag  Flags     Sector     Count    Sector   Mount Directory
       0      2    00          34   629145600  629145633
       1      4    00   629145634   629145600 1258291233
       6      4    00  1258291234  1318633404 2576924637
       8     11    00  2576924638       16384 2576941021

prtvtoc コマンドの出力では、次の 3 つのセクションに情報が表示されます。

prtvtoc の列名

説明  

Partition

パーティションまたはスライスの番号。この列についての説明は、表 10–6 を参照してください。

Tag

パーティションのタグ。この列についての説明は、表 10–6 を参照してください。

Flags

パーティションのフラグ。この列についての説明は、表 10–6 を参照してください。

First Sector

スライスの最初のセクターを示します。 

Sector Count

スライス内の合計セクター数を示します。 

Last Sector

スライスの最後のセクターを示します。 

Mount Directory

ファイルシステムの最後のマウントポイントのディレクトリを示します。 

free hog スライスの使用方法

format ユーティリティーを使用して 1 つまたは複数のディスクスライスのサイズを変更するときには、サイズ変更操作に対応して拡大縮小する一時スライスを指定します。

このスライスは、スライスを拡大すると領域を「解放 (free)」し、スライスを圧縮すると放棄された領域を「回収 (hog)」します。このため、提供側のスライスを「free hog」と呼びます。

free hog スライスは、インストール時または format ユーティリティーの実行時にのみ存在します。日常の操作中に free hog スライスが継続して存在することはありません。

free hog スライスの使用方法については、「SPARC: ディスクスライスとディスクラベルを作成する方法」または 「x86: ディスクスライスとディスクラベルを作成する方法」を参照してください。