AIX環境用のOracle ACFSコマンドライン・ツール
このトピックでは、AIXオペレーティング・システム用のOracle ACFSコマンドの概要を示します。
AIXにOracle ACFSおよびOracle ADVMをOracle Grid Infrastructureとともにインストールすると、いくつかのシステム・セキュリティ・クラス(認証)がOracle ACFSおよびOracle ADVMの操作用に作成されます。これらの認証により、次の操作が可能になります。
-
Oracle ACFSおよびOracle ADVMデバイスの構成
-
Oracle ACFSおよびOracle ADVMデバイスの削除
-
Oracle ACFSおよびOracle ADVMデバイスの定義
これらの認証は、デフォルトではOracle Grid InfrastructureユーザーおよびOracle ASM管理者に割り当てられるロール(oracle_devmgmt
)に集められます。インストール後にlsrole
またはrolelist
コマンドを実行してこの新しいロールを確認できます。これらのコマンドは、ユーザーにOracle ACFSおよびOracle ADVMを管理するための適切な認証があることを確認するために、いつでも実行できます。
たとえば、Oracle ASM管理者として次を実行します。
$ rolelist -e oracle_devmgmt
AIXオペレーティング・システムで最初のインストール後、rootスクリプトが実行されたシェルは、新しいロールを継承しません。このロールがユーザーにない場合、Oracle ACFSまたはOracle ADVMの操作を実行する前に、swrole
コマンドを実行する必要があります。
たとえば、Oracle ASM管理者として次を実行します。
$ swrole oracle_devmgmt
または、新しいシェルを開き、Oracle ACFSまたはOracle ADVMの操作を実行します。
Oracle Grid Infrastructureの削除中に、oracle_devmgmt
ロールおよびそれに関連する認証はシステムから削除されます。
関連項目:
AIX上のOracle Grid Infrastructureの場合、インストールの詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor IBM AIX on POWER Systems (64-Bit)』を参照してください。
ノート:
ディスク・グループがAIX上でforceオプションでディスマウントされた場合、そのディスク・グループにあったすべてのOracle ADVMボリューム・デバイス・ファイルはシステムに残ります。これらのファイルは、ディスク・グループが再びマウントされるときに削除されます。
表16-12に、Oracle ACFS AIXコマンドと簡単な説明を示します。表16-12に示すコマンドは、AIXでOracle ACFSをサポートする追加オプションによって拡張されています。
表16-12 AIX用のOracle ACFSコマンドの概要
コマンド | 説明 |
---|---|
AIXでOracle ACFSファイル・システムをチェックおよび修復します。 |
|
AIXでOracle ACFSファイル・システムを作成します。 |
|
AIXでOracle ACFSファイル・システムをマウントします。 |
|
AIXでOracle ACFSファイル・システムをディスマウントします。 |
fsck
目的
AIXオペレーティング・システムでOracle ACFSファイル・システムをチェックおよび修復します。
構文および説明
fsck -V acfs [-n|-y] [-o options] volume_device
表16-13に、fsck
コマンドで使用可能なオプションを示します。
表16-13 AIX fsckコマンドのオプション
オプション | 説明 |
---|---|
|
AIXでのOracle ADVMボリュームを指定します。 |
|
すべてのプロンプトに対してnoと答えます。 |
|
すべてのプロンプトに対してyesと答えます。 |
|
オプション(a, f, v)が続くことを示します。オプションは
|
|
プライマリOracle ADVMボリューム・デバイスを指定します。 |
fsck
は、既存のOracle ACFSをチェックおよび修復します。このコマンドは、ディスマウント済のファイル・システムでのみ実行できます。fsck
を実行するにはroot
権限が必要です。fsck
を機能させるには、Oracle ACFSドライバをロードする必要があります。
デフォルトでは、fsck
はエラーがないかチェックし、エラーを報告するのみです。-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-12 fsckコマンドの使用方法
# /usr/sbin/fsck -V acfs -y -o a /dev/asm/volume1-123
mkfs
目的
AIXオペレーティング・システムでOracle ACFSファイル・システムを作成します。
構文および説明
mkfs -V acfs -o h /dev/null mkfs -V acfs [-v name ] [-s size][-o options] volume_device [-c release_version]
mkfs
-V
acfs
-o
h
/dev/null
は使用方法のテキストを表示して終了します。
表16-14に、AIX mkfs
コマンドで使用可能なオプションを示します。
表16-14 AIX mkfsコマンドのオプション
オプション | 説明 |
---|---|
|
AIXでのファイル・システムのタイプを指定します。 |
|
ファイル・システムの名前を指定します。名前は最大64文字です。 |
|
ファイル・システムのサイズを512バイトの単位か、または |
|
オプション(f、h、v)が続くことを示します。オプションは
|
|
フォーマットするOracle ADVMデバイス・ファイルを指定します。 |
|
release_versionの値に設定されたOracle ACFSリリースの互換性でOracle ACFSファイル・システムを作成します。 |
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 ...
volinfo
の詳細は、ASMCMDによるOracle ADVMの管理を参照してください。
次に、ボリューム・デバイス・ファイルにOracle ACFSファイル・システムを作成します。
例16-13 mkfsコマンドの使用方法
$ /usr/sbin/mkfs -V acfs /dev/asm/volume1-123
mount
目的
AIXオペレーティング・システムでOracle ACFSファイル・システムをマウントします。
構文および説明
mount -V acfs -o h /dev/null /xxx mount -v acfs [-o options] volume_device mount_point
mount
-V
acfs
-o
h
/dev/null
/xxx
は使用方法のテキストを表示して終了します。
表16-15に、mount
コマンドで使用可能なオプションを示します。
表16-15 AIX mountコマンドのオプション
オプション | 説明 |
---|---|
|
AIXでのファイル・システムのタイプを指定します。 |
|
オプションが続くことを示します。オプションは 次のオプションを使用できます。
|
|
|
|
このファイル・システムがマウントされるディレクトリを指定します。 |
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ファイル・システムをすべてマウントする方法を示しています。all
オプションを指定する場合、引数としてデバイスおよびディレクトリは必須ですが、使用しないので、ダミー名(none
)をプレースホルダとして入力します。
例16-14 mountコマンドの使用方法
# /usr/sbin/mount -v acfs /dev/asm/volume1-123 /acfsmounts/acfs1 # /usr/sbin/mount -v acfs -o all none none
umount/umountall
目的
AIXオペレーティング・システムでOracle ACFSファイル・システムをディスマウントします。
構文および説明
umount [mount_point | volume_device] umountall -F acfs
unmountall
-F
acfs
はOracle ACFSファイル・システムをディスマウントします。
表16-16に、umount
コマンドで使用可能なオプションを示します。
表16-16 AIX umountコマンドのオプション
オプション | 説明 |
---|---|
|
このファイル・システムがマウントされるディレクトリを指定します。 |
|
ファイル・システムに関連付けられたOracle ADVMボリューム・デバイスの名前を指定します。 |
|
AIXでのファイル・システムのタイプを指定します。 |
umount
およびumountall
は、現在のノード上のファイル・システム階層からOracle ACFSをデタッチします。
umount
コマンドおよびumountall
コマンドは、ファイル・システムが完全にアンマウントされるまで、オペレーティング・システム・プロンプトに制御を戻しません。
ファイル・システムがビジーである場合、umount
およびumountall
は失敗します。
umount
およびumountall
コマンドを実行するには、root
権限が必要です。
例
次の例は、Oracle ACFSファイル・システムのディスマウント方法を示しています。1つ目の例では、ディスマウントするファイル・システムのマウント・ポイントを指定します。2つ目の例では、ディスマウントするファイル・システムに関連付けられたボリューム・デバイスを指定します。3つ目の例では、すべてのOracle ACFSファイル・システムをディスマウントします。
例16-15 umountコマンドの使用方法
# /usr/sbin/umount /dev/asm/volume1-123 # /usr/sbin/umount /acfsmounts/acfs1 # /usr/sbin/umountall -F acfs