Solaris環境用のOracle ACFSコマンドライン・ツール
このトピックでは、Solaris用のOracle ACFSコマンドの概要を示します。
注意:
ディスク・グループがSolaris上でforceオプションでディスマウントされた場合、そのディスク・グループにあったすべてのOracle ADVMボリューム・デバイス・ファイルはシステムに残ります。これらのファイルは、ディスク・グループが再びマウントされるときに削除されます。
表16-6に、Solaris用のOracle ACFSコマンドと簡単な説明を示します。表16-6に示すコマンドは、SolarisでOracle ACFSをサポートする追加オプションによって拡張されています。
表16-6 Solaris用のOracle ACFSコマンドの概要
| コマンド | 説明 |
|---|---|
|
SolarisでOracle ACFSファイルシステムをチェックおよび修復します。 |
|
|
SolarisでOracle ACFSファイルシステムを作成します。 |
|
|
SolarisでOracle ACFSファイルシステムをマウントします。 |
|
|
SolarisでOracle ACFSファイルシステムをディスマウントします。 |
fsck
目的
Solarisオペレーティング・システムでOracle ACFSファイルシステムをチェックおよび修復します。
構文および説明
fsck -F acfs -o h /dev/null
fsck -F acfs [{-n|N}|{-y|Y}] [-o options] volume_devicefsck -F acfs -o h /dev/nullは使用方法のテキストを表示して終了します。
表16-7に、fsckコマンドで使用可能なオプションを示します。
表16-7 Solaris fsckコマンドのオプション
| オプション | 説明 |
|---|---|
|
|
Solarisでのファイルシステムのタイプを指定します。 |
|
|
すべてのプロンプトに対してnoと答えます。 |
|
|
すべてのプロンプトに対してyesと答えます。 |
|
|
オプション(a、f、h、v)が続くことを示します。オプションは
|
|
|
Oracle ADVMデバイス・ファイルを指定します。 |
fsckは、既存のOracle ACFSファイルシステムをチェックおよび修復します。このコマンドは、ディスマウント済のファイルシステムでのみ実行できます。fsckを実行するにはroot権限が必要です。fsckを機能させるには、Oracle ACFSドライバをロードする必要があります。
デフォルトでは、fsckはエラーがないかチェックし、エラーを報告するのみです。-o aオプションは、fsckにファイルシステムでのエラーの修正を指示するために指定する必要があります。修復操作中にfsckを中断しないでください。
場合によっては、fsckでは、ファイルシステムのチェックに進む前に、質問に対する答えを要求されます。次の場合があります。
-
fsckにより、ファイルシステム上で別のfsckが進行中であることが検出された場合 -
fsckにより、Oracle ACFSドライバがロードされていないことが検出された場合 -
ファイルシステムがOracle ACFSではない可能性がある場合
チェック・モードでは、fsckでは不完全な終了のために完全に処理されていないトランザクション・ログがある場合にも要求されます。非対話モードで実行するには、-yまたは-nオプションを含めて、質問に対してyesまたはnoと答えます。
fsckでは、ファイルシステムをチェックする前に、作業ファイルを作成します。これらの作業ファイルは、領域が使用可能な場合、/usr/tmpに作成されます。/tmpは、/usr/tmpが存在しない場合に使用されます。tmpディレクトリで使用可能な領域が不十分な場合、fsckでは、現在の作業ディレクトリに書込みを試みます。fsckで作成するファイルは、およそチェック対象のファイルシステムを32Kで割ったサイズです。そのようなファイルは多くても3つ割り当てられます。たとえば、チェックされている2GBのファイルシステムによって、fsckでは/usr/tmpディレクトリに1つから3つの64Kの作業ファイルが生成されます。これらのファイルは、fsckの終了後に削除されます。
fsckでファイルシステムで(親ディレクトリ内の破損などにより)名前または目的の場所を特定できないファイルまたはディレクトリが検出された場合、fsckを修正モードで実行していると、そのオブジェクトは/lost+foundディレクトリに配置されます。セキュリティ上の理由で、Linuxではrootユーザーのみが/lost+found内のファイルを読み取ることができます。内容に基づいてファイルの元の名前および場所を管理者が後で特定できた場合は、そのファイルを目的の場所に移動またはコピーできます。
/lost+foundディレクトリ内のファイル名の書式は、次のとおりです。
parent.id.file.id.time-in-sec-since-1970 parent.id.dir.id.time-in-sec-since-1970
idフィールドは、ファイルシステムでのファイルおよびディレクトリそれぞれのOracle ACFSの内部数値識別子です。
acfsutil info id id mount_pointを使用すると、parent.idに関連付けられたディレクトリの特定を試みることができます。このディレクトリは、削除されたオブジェクトの元の場所とみなされます。acfsutil infoの詳細は、「acfsutil info file」を参照してください。
親ディレクトリが不明な場合は、親のidフィールドをUNKNOWNと設定します。
注意:
/lost+foundディレクトリの内容は、スナップショットから表示できません。
例
次の例は、Oracle ACFSファイルシステムのチェックおよび修復の方法を示しています。
例16-7 fsckコマンドの使用方法
# /usr/sbin/fsck -F acfs -y -o a /dev/asm/volume1-123
mkfs
目的
Solarisオペレーティング・システムでOracle ACFSファイルシステムを作成します。
構文および説明
mkfs -F acfs -o h /dev/null mkfs -F acfs [-o options] [-c release_version] volume_device [size]
mkfs -F acfs -o h /dev/nullは使用方法のテキストを表示して終了します。
表16-8に、mkfsコマンドで使用可能なオプションを示します。
表16-8 Solaris mkfsコマンドのオプション
| オプション | 説明 |
|---|---|
|
|
Solarisでのファイルシステムのタイプを指定します。 |
|
|
オプション(f、h、n、v)が続くことを示します。オプションは
|
|
|
release_versionの値に設定されたOracle ACFSリリースの互換性でOracle ACFSファイルシステムを作成します。 |
|
|
Oracle ADVMデバイス・ファイルを指定します。 |
|
|
ファイルシステムのサイズを512バイトの単位か、または |
mkfsは、Oracle ACFSファイルシステムのマウントに必要なディスク上の構造を作成するために使用できます。mkfsコマンドは、ファイルシステムの作成に使用される従来のLinuxコマンドです。mkfsの実行に成功すると、V$ASM_VOLUMEビューのUSAGE列にはACFSが表示されます。root権限は必要ありません。ボリューム・デバイス・ファイルの所有者が、このコマンドを実行できます。
-c release_versionオプションで指定する値は、ディスク・グループのCOMPATIBLE.ADVM値以上にする必要があり、実行中のOracle Grid Infrastructureリリースのバージョン以下にする必要があります。—c release_versionを指定しないと、COMPATIBLE.ADVM値が使用されます。互換性は、設定するとダウングレードできません。—c release_versionオプションは、ディスク・グループのCOMPATIBLE.ADVMおよびCOMPATIBLE.ASMの更新ができない、または望ましくない状況で、互換性の向上が必要なOracle ACFS機能を使用する場合に使用できます。Oracle ACFSの互換性を更新すると、以前のOracle Grid Infrastructureリリースを使用してファイルシステムをマウントできなくなります。既存のファイルシステムの互換性を変更するには、「acfsutil compat set」を参照してください。Oracle ASMディスク・グループの互換性属性の詳細は、「ディスク・グループの互換性」を参照してください。
最小ファイルシステム・サイズは、512バイトのメタデータ・ブロック・サイズ・フォーマットの場合は200 MB、4 KBのメタデータ・ブロック・サイズ・フォーマットの場合は512 MBです。
mkfsを機能させるには、Oracle ACFSドライバをロードする必要があります。
4 KBのセクター/メタデータ
次に、COMPATIBLE.ADVMディスク・グループ属性値に基づいた-o iオプションおよびメタデータ・ブロック・サイズの使用についてまとめます。
-
COMPATIBLE.ADVMが12.2以上に設定されている場合、メタデータ・ブロック・サイズはデフォルトで4096バイトです。 -
COMPATIBLE.ADVMが12.2未満に設定されている場合、ブロック・サイズは512バイトに設定されます。 -
COMPATIBLE.ADVMが12.2未満に設定されているのに、論理セクター・サイズが512バイトでない場合、コマンドは失敗します。
ユーザー・データIOでは、標準ユーザーIOリクエストに対して512バイトの小規模な転送が引き続きサポートされます。ファイルシステムのOracle ADVMボリュームの論理ディスク・セクター・サイズが4 Kの場合、最良のパフォーマンスを得るには、ユーザー直接IOリクエストを4 Kファイル・オフセットに揃えて、4 KBの倍数の長さにする必要があります。4 Kメタデータ・ブロック・サイズ・フォーマットでのみ、論理ディスク・セクターが4 KのADVMボリュームがサポートされます。
論理ディスク・サイズが4096のOracle ADVMボリュームをフォーマットしたり、-o i=4096オプションを使用して論理ディスク・セクター・サイズが512バイトのOracle ADVMボリュームをフォーマットするには、COMPATIBLE.ADVM値を12.2以上に設定する必要があります。
例
Oracle ACFSファイルシステムを作成する前に、まずOracle ADVMボリューム・デバイスが使用可能かどうか確認します。ASMCMD volinfoコマンドを使用すれば、ボリュームおよびボリューム・デバイスの情報を表示できます。
ASMCMD [+] > volinfo -a
...
Volume Name: VOLUME1
Volume Device: /dev/asm/volume1-123
State: ENABLED
...
「ASMCMDによるOracle ADVMの管理」を参照してください。
次に、ボリューム・デバイス・ファイルにOracle ACFSファイルシステムを作成します。
例16-8 mkfsコマンドの使用方法
$ /usr/sbin/mkfs -F acfs /dev/asm/volume1-123
mount
目的
Solarisオペレーティング・システムでOracle ACFSファイルシステムをマウントします。
構文および説明
mount -F acfs -o h /tmp /dev/null mount -F acfs [-r] [-o options] volume_device mount_point
mount -F acfs -o h /tmp /dev/nullは使用方法のテキストを表示して終了します。
表16-9に、mountコマンドで使用可能なオプションを示します。
表16-9 Solaris mountコマンドのオプション
| オプション | 説明 |
|---|---|
|
|
Solarisでのファイルシステムのタイプを指定します。 |
|
|
読取り専用モードでマウントします。 |
|
|
オプションが続くことを示します。オプションは 次のオプションを使用できます。
|
|
|
|
|
|
このファイルシステムがマウントされるディレクトリを指定します。 |
mountは、ディレクトリの名前であるマウント・ポイントでOracle ACFS階層にファイルシステムをアタッチします。マウントは、mountコマンドが発行されたノードで起こります。ファイルシステムがこのノードでディスマウントの状態でない場合、mountコマンドはエラーを戻します。
マウント失敗の原因をmount mountコマンドに戻すことは、いつでもできるわけではありません。これが起こると、Oracle ACFSは失敗の原因をシステム・コンソールおよび関連付けられたシステム・ログ・ファイルに書き込みます。
mountの実行に成功すると、V$ASM_VOLUMEビューのMOUNTPATHフィールドに、ファイルシステムがマウントされたディレクトリ名が表示されます。
Oracle ACFSファイルシステムは1つのマウント・ポイントにのみマウントされます。同じマウント・ポイント名をすべてのクラスタ・メンバーで使用する必要があります。
mountを実行するにはroot権限が必要です。
例
1つ目の例は、マウント・ポイント/acfsmounts/acfs1にvolume1-123をマウントする方法を示しています。2つ目の例は、登録済のOracle ACFSファイルシステムをすべてマウントする方法を示しています。-o allオプションを指定する場合は、プレースホルダ引数に、ボリューム・デバイス名およびマウント・ポイントを入力する必要があります。ボリューム・デバイスは、noneなどのダミー値でもかまいません。マウント・ポイントには、/tmpなどの有効なディレクトリを指定できます。
例16-9 mountコマンドの使用方法
# /sbin/mount -F acfs /dev/asm/volume1-123 /acfsmounts/acfs1 # /sbin/mount -F acfs -o all none /tmp
umount/umountall
目的
Solarisオペレーティング・システムでOracle ACFSファイルシステムをディスマウントします。
構文および説明
umount -V [mount_point | volume_device] umountall -F acfs
unmountall -F acfsはOracle ACFSファイルシステムをディスマウントします。
表16-10に、umountコマンドで使用可能なオプションを示します。
表16-10 Solaris umountコマンドのオプション
| オプション | 説明 |
|---|---|
|
|
コマンドラインをすべてエコーしますが、コマンドは実行しません。このオプションを使用してコマンドラインを実行する前に確認および検証します。 |
|
|
このファイルシステムがマウントされるディレクトリを指定します。 |
|
|
ファイルシステムに関連付けられたOracle ADVMボリューム・デバイスの名前を指定します。 |
|
|
Solarisでのファイルシステムのタイプを指定します。 |
umountおよびumountallは、現在のノード上のファイルシステム階層からOracle ACFSをデタッチします。
umountコマンドおよびumountallコマンドは、ファイルシステムが完全にアンマウントされるまで、オペレーティング・システム・プロンプトに制御を戻しません。
ファイルシステムがビジーである場合、umountおよびumountallは失敗します。
umountおよびumountallコマンドを実行するには、root権限が必要です。
例
次の例は、Oracle ACFSファイルシステムのディスマウント方法を示しています。1つ目の例では、ディスマウントするファイルシステムのマウント・ポイントを指定します。2つ目の例では、ディスマウントするファイルシステムに関連付けられたボリューム・デバイスを指定します。3つ目の例では、すべてのOracle ACFSファイルシステムをディスマウントします。
例16-10 umountコマンドの使用方法
# /sbin/umount /dev/asm/volume1-123 # /sbin/umount /acfsmounts/acfs1 # /sbin/umountall -F acfs