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-11に、Oracle ACFS AIXコマンドと簡単な説明を示します。表16-11に示すコマンドは、AIXでOracle ACFSをサポートする追加オプションによって拡張されています。

表16-11 AIX用のOracle ACFSコマンドの概要

コマンド 説明

fsck

AIXでOracle ACFSファイルシステムをチェックおよび修復します。

mkfs

AIXでOracle ACFSファイルシステムを作成します。

mount

AIXでOracle ACFSファイルシステムをマウントします。

umount/umountall

AIXでOracle ACFSファイルシステムをディスマウントします。

fsck

目的

AIXオペレーティング・システムでOracle ACFSファイルシステムをチェックおよび修復します。

構文および説明

fsck -V acfs [-n|-y] [-o options] volume_device

表16-12に、fsckコマンドで使用可能なオプションを示します。

表16-12 AIX fsckコマンドのオプション

オプション 説明

-V acfs

AIXでのOracle ADVMボリュームを指定します。acfsは、Oracle ACFSタイプを指定します。

-n

すべてのプロンプトに対してnoと答えます。

-y

すべてのプロンプトに対してyesと答えます。

-o options

オプション(a, f, v)が続くことを示します。オプションは-oフラグが先頭に付き、カンマで区切られた文字列として入力されます。たとえば、-o a,vです。

  • a

    ファイルシステムを自動的に修正することを指定します。

  • f

    ファイルシステムのチェックまたは修正を完了せずに、ファイルシステムを強制的にマウント可能な状態にします。

  • v

    verboseモードを指定します。操作が発生すると、進捗状況が表示されます。verboseモードで実行すると、パフォーマンスに影響を及ぼす場合があります。

volume_device

プライマリ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-11 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-13に、AIX mkfsコマンドで使用可能なオプションを示します。

表16-13 AIX mkfsコマンドのオプション

オプション 説明

-V acfs

AIXでのファイルシステムのタイプを指定します。acfsは、Oracle ACFSタイプを指定します。

-v name

ファイルシステムの名前を指定します。名前は最大64文字です。acfsutil info fsは、名前が指定された場合、その名前を戻します。

-s size

ファイルシステムのサイズを512バイトの単位か、またはKMGTPの単位で指定します。指定された単位は、K(KB)、M(MB)、G(GB)、T(TB)またはP(PB)です。

-o options

オプション(f、h、v)が続くことを示します。オプションは-oフラグが先頭に付き、カンマで区切られた文字列として入力されます。たとえば、-o f,vです。

  • f

    forceオプションを指定します。このアクションで、ボリューム・デバイスに既存のOracle ACFSがあっても、ファイルシステムが作成されます。ただし、フィアル・システムがディスマウントされている場合にかぎります。このオプションは、元のファイルシステム上の構造を上書きします。慎重に使用してください。

  • h

    使用方法のテキストを表示して終了します。

  • i=512 | i=4096

    512バイトまたは4096バイトのメタデータ・ブロック・サイズでファイルシステムを指定します。

  • v

    verboseモードを指定します。操作が発生すると、進捗状況が表示されます。

volume_device

フォーマットするOracle ADVMデバイス・ファイルを指定します。

-c release_version

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.ADVM12.2以上に設定されている場合、メタデータ・ブロック・サイズはデフォルトで4096バイトです。

  • COMPATIBLE.ADVM12.2未満に設定されている場合、ブロック・サイズは512バイトに設定されます。

  • COMPATIBLE.ADVM12.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-12 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-14に、mountコマンドで使用可能なオプションを示します。

表16-14 AIX mountコマンドのオプション

オプション 説明

-v acfs

AIXでのファイルシステムのタイプを指定します。acfsは、Oracle ACFSタイプを指定します。

-o options

オプションが続くことを示します。オプションは-oフラグが先頭に付き、その後にカンマで区切られたオプションの文字列が続きます。たとえば、-o all,ro,vです。

次のオプションを使用できます。

  • all

    AUTO_START=alwaysですべてのファイルシステムをマウントして、Oracle Clusterwareネームスペース内のOracle ACFSによって管理されるファイルシステムを読み取ります。

    -o allオプションには、コマンド引数を満たすために、ボリューム・デバイスとディレクトリのダミー引数の2つのプレースホルダが必要です。

    -o allオプションを指定すると、他の-oオプションは無視されます。

    レジストリ・エントリ用のマウント・オプションを指定するには、レジストリにエントリを追加するときにacfsutil registryコマンドでそれらのオプションを指定します。

  • h

    使用方法のヘルプ・テキストを表示して終了します。

  • nosuid

    このマウントの方法ではsetuidおよびsetgidプログラムは実行できないことを指定します。

  • nodev

    このマウントからはデバイスを開けないことを指定します。

  • norootsuid

    rootが所有する、set-user-ID実行を許可する権限を持つ非rootユーザーによるバイナリの実行を失敗させます。非rootユーザーとしてこれらの実行可能ファイルを実行しようとすると、「許可されませんでした。」エラーで失敗します。

  • rootsuid

    rootが所有するset-user-IDファイルの非rootユーザーによるバイナリの実行を可能にします。これはデフォルト・アクションです。

  • ro

    読取り専用モードでファイルシステムをマウントします。

  • rw

    読取り/書込みモードでファイルシステムをマウントします。

  • v

    verboseモードを指定します。操作が発生すると、進捗状況が表示されます。

volume_device

mkfsでフォーマットされたOracle ADVMボリューム・デバイス・ファイルを指定します。deviceは必須ですが、ダミー値でもかまいません。

mount_point

このファイルシステムがマウントされるディレクトリを指定します。mountコマンドを実行するには、このディレクトリが存在している必要があります。

mountは、ディレクトリの名前であるマウント・ポイントでOracle ACFS階層にファイルシステムをアタッチします。マウントは、mountコマンドが発行されたノードで起こります。ファイルシステムがこのノードでディスマウントの状態でない場合、mountコマンドはエラーを戻します。

マウント失敗の原因をmount mountコマンドに戻すことは、いつでもできるわけではありません。これが起こると、Oracle ACFSは失敗の原因をシステム・コンソールおよび関連付けられたシステム・ログ・ファイルに書き込みます。

mountの実行に成功すると、V$ASM_VOLUMEビューのMOUNTPATHフィールドに、ファイルシステムがマウントされたディレクトリ名が表示されます。

Oracle ACFSファイルシステムは1つのマウント・ポイントにのみマウントされます。同じマウント・ポイント名をすべてのクラスタ・メンバーで使用する必要があります。

mountを実行するにはroot権限が必要です。

1つ目の例は、マウント・ポイント/acfsmounts/acfs1volume1-123をマウントする方法を示しています。2つ目の例は、登録済のOracle ACFSファイルシステムをすべてマウントする方法を示しています。allオプションを指定する場合、引数としてデバイスおよびディレクトリは必須ですが、使用しないので、ダミー名(none)をプレースホルダとして入力します。

例16-13 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-15に、umountコマンドで使用可能なオプションを示します。

表16-15 AIX umountコマンドのオプション

オプション 説明

mount_point

このファイルシステムがマウントされるディレクトリを指定します。umountにのみ有効です。

volume_device

ファイルシステムに関連付けられたOracle ADVMボリューム・デバイスの名前を指定します。umountにのみ有効です。

-F acfs

AIXでのファイルシステムのタイプを指定します。acfsは、Oracle ACFSタイプを指定します。umountallにのみ有効です。

umountおよびumountallは、現在のノード上のファイルシステム階層からOracle ACFSをデタッチします。

umountコマンドおよびumountallコマンドは、ファイルシステムが完全にアンマウントされるまで、オペレーティング・システム・プロンプトに制御を戻しません。

ファイルシステムがビジーである場合、umountおよびumountallは失敗します。

umountおよびumountallコマンドを実行するには、root権限が必要です。

次の例は、Oracle ACFSファイルシステムのディスマウント方法を示しています。1つ目の例では、ディスマウントするファイルシステムのマウント・ポイントを指定します。2つ目の例では、ディスマウントするファイルシステムに関連付けられたボリューム・デバイスを指定します。3つ目の例では、すべてのOracle ACFSファイルシステムをディスマウントします。

例16-14 umountコマンドの使用方法

# /usr/sbin/umount /dev/asm/volume1-123

# /usr/sbin/umount /acfsmounts/acfs1

# /usr/sbin/umountall -F acfs