JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle® ZFS Storage Appliance 管理ガイド、Release 2013.1.3.0
Oracle Technology Network
ライブラリ
PDF
印刷ビュー
フィードバック
search filter icon
search icon

ドキュメント情報

Oracle ZFS Storage Appliance の概要

Oracle ZFS Storage Appliance の主な機能

サポートされているプロトコル

Oracle ZFS Storage Appliance データサービス

データ可用性

Oracle ZFS Storage Appliance の構成

ブラウザユーザーインタフェース (BUI)

ネットワークのアイコン

ダッシュボードのアイコン

Analytics ツールバーのアイコン

アイデンティティーマッピングのアイコン

サポートされるブラウザ

コマンド行インタフェース (CLI)

CLI コンテキスト

CLI のプロパティー

CLI スクリプトの操作

バッチコマンドの使用

CLI スクリプトコマンドについて

CLI スクリプト環境へのアクセス

CLI の組み込み関数について

run 関数の使用

get 関数の使用

list 関数の使用

children 関数の使用

choices 関数の使用

出力を生成するための関数の使用

CLI スクリプトエラーについて

Oracle ZFS Storage Appliance の構成

サービスの操作

Oracle ZFS Storage Appliance の管理

シェアの操作

アプリケーションと Oracle ZFS Storage Appliance の統合

CLI コンテキスト

CLI における中心的な原則は、コマンドが実行されているコンテキストです。このコンテキストによって、システムのどの要素を管理できるか、およびどのコマンドを使用できるかが規定されます。コンテキストには、各コンテキスト自体に入れ子のコンテキストが含まれている可能性のあるツリー構造があり、一般には、この構造によって BUI 内のビューの構造がミラー化されています。

ログイン時の初期コンテキストはルートコンテキストであり、すべてのコンテキストの親または上位コンポーネントとして機能します。コンテキストに移動するには、そのコンテキストの名前をコマンドとして実行します。たとえば、ブラウザ内の「構成」ビューで使用可能な機能は、CLI の configuration コンテキストで使用できます。次のように、ルートコンテキストから直接入力してこのコンテキストにアクセスできます。

dory:> configuration
dory:configuration> 

プロンプト内のコロンと大なり記号の間にコンテキストが表示されており、プロンプトがコンテキストを反映して変更されます。

show コマンドは子コンテキストを表示します。たとえば、configuration コンテキストから実行すると、次のようになります。

dory:configuration> show
Children:
                             net => Configure networking
                        services => Configure services
                         version => Display system version
                           users => Configure administrative users
                           roles => Configure administrative roles
                     preferences => Configure user preferences
                          alerts => Configure alerts
                         storage => Configure Storage

これらの子コンテキストは、「ネットワーク」、「サービス」、「ユーザー」、「設定」などの、ブラウザ内の「構成」ビューの下で使用可能なビューに対応しています。これらの子コンテキストのいずれかを選択するには、その名前を入力します。

dory:configuration> preferences 
dory:configuration preferences> 

中間のコンテキストを空白で区切って指定することによって、上位コンテキストから直接下位コンテキストに移動できます。たとえば、ルートコンテキストから直接 configuration preferences に移動するには、単に次のように入力します。

dory:> configuration preferences
dory:configuration preferences>

一部の子コンテキストは、ブラウザ内の固定されたビューにではなく、ユーザーまたはシステムのどちらかによって作成された動的なエンティティーに対応しているという点で動的です。これらのコンテキストに移動するには、select コマンドを使用し、そのあとに動的コンテキストの名前を指定します。特定のコンテキスト内に含まれている動的コンテキストの名前は、list コマンドを使用して表示されます。たとえば、users コンテキストは静的コンテキストですが、各ユーザーは独自の動的コンテキストです。

dory:> configuration users
dory:configuration users> list 
NAME                     USERNAME                 UID        TYPE
John Doe                 bmc                      12345      Dir
Super-User               root                     0          Loc

bmc という名前のユーザーを選択するには、コマンド select bmc を発行します。

dory:configuration users> select bmc 
dory:configuration users bmc> 

一部のコンテキストでは selectdestroy を交互に使用すると、プロパティーに基づいてエンティティーを選択できます。たとえば、次のコマンドを発行することによって、maintenance logs system コンテキストで reboot モジュールによって発行されたログエントリを選択できます。

dory:maintenance logs system> select module=reboot 
dory:maintenance logs system entry-034> show
Properties:                                   
  timestamp = 2010-8-14 06:24:41
     module = reboot
   priority = crit
       text = initiated by root on /dev/console syslogd: going down on signal 15

ほかのコマンドと同様に、select をコンテキスト変更コマンドに追加することもできます。たとえば、ルートコンテキストから bmc という名前のユーザーを選択するには、次のコマンドを実行します。

dory:> configuration users select bmc 
dory:configuration users bmc>

last コマンドを使用すると、前に選択または作成したコンテキストに移動できます。次の例ではレプリケーションアクションを作成し、last および get id コマンドを使用してレプリケーションアクション ID を取得します。そのあと別のアクションを選択し、last および get id コマンドを使用して、最後に実行したレプリケーションアクションの ID を取得します。

last を使用すると最後に使用したノードに戻ることができます。

dory:configuration net interfaces> select igb4
dory:configuration net interfaces igb4> done
dory:configuration net interfaces> last
net:configuration net interfaces igb4>

last コマンドは、動的ノードの作成中にアプライアンスによって自動的に設定された値を取得する場合にも便利です。たとえば、各レプリケーションアクションはその作成時にアプライアンスによって ID が割り当てられます。last コマンドを get id コマンドとともに使用すると、レプリケーションアクションの名前を使用せずに ID を取得できます。

dory:shares p1/share replication> create
dory:shares p1/share action (uncommitted)> set target=dory
                               target = dory (uncommitted)
dory:shares p1/share action (uncommitted)> set pool=p0
                               pool = p0 (uncommitted)
dory:shares p1/share action (uncommitted)> commit
dory:shares p1/share replication> last get id
                               id = 7034367a-d4d8-e26f-fa93-c3b454e3b595
dory:shares p1/share replication>

last コマンドが別のコマンドと組み合わされると (この場合 get id)、このコマンドは最後に使用したノードのコンテキストで実行されますが、現在のノードは変更されないままとなります。

last コマンドでは、最後に使用したノードおよびその値を、ノードの名前を指定せずに取得できるため、このコマンドは特にスクリプトで役立ちます。

script
              project = 'myproj';
              target = 'mytarget';
              target_pool = 'notmypool';
     
              run('cd /');
              run('shares select ' + project);
              run('replication');
              run('create');
              set('target', target);
              set('pool', target_pool);
              run('commit');
              run('last');
              id = get('id');
              printf("Sending update for replication action id %s ...", id);
              run('sendupdate');
              while (get('state') != 'idle') {
                     printf(".");
                     run('sleep 1');
              }
              printf("done\n");
 .

以前のコンテキストに戻るには、done コマンドを使用します。

dory:configuration> done
dory:> 

次に示すように、これによって戻る以前のコンテキストは、必ずしも親コンテキストではありません。

dory:> configuration users select bmc 
dory:configuration users bmc> done
dory:> 

done コマンドを複数回使用すると、以前のコンテキストに 1 つずつ戻ることができます。

dory:> configuration
dory:configuration> users 
dory:configuration users> select bmc 
dory:configuration users bmc> done
dory:configuration users> done
dory:configuration> done
dory:>

親コンテキストに移動するには、cd コマンドを使用します。従来の UNIX コマンドと同様に、親コンテキストへの移動を示すには、cd に「..」の引数を指定します。

dory:> configuration users select bmc
dory:configuration users bmc> cd ..
dory:configuration users> 

また、UNIX コマンドと同様に、「cd /」を指定するとルートコンテキストに移動します。

dory:> configuration
dory:configuration> users 
dory:configuration users> select bmc 
dory:configuration users bmc> cd /
dory:>

さらに、UNIX コマンドと同様に、「cd ../..」を使用すると親の親のコンテキストに移動できます。

dory:> configuration
dory:configuration> users 
dory:configuration users> select bmc 
dory:configuration users bmc> cd ../..
dory:configuration>

コンテキスト名は、静的コンテキスト (通常のコマンド補完を介して) か動的コンテキスト (select コマンドのコマンド補完を介して) かにかかわらずタブ補完されます。次に示すのは、ルートコンテキストから bmc という名前のユーザーを、タブ補完を使用しない場合に必要になる 31 回ではなく、わずか 15 回のキーストロークで選択する例です。

dory:> configtab 
dory:> configuration utab 
dory:> configuration users setab 
dory:> configuration users select tab 
bmc   root  
dory:> configuration users select btab 
dory:> configuration users select bmcenter 
dory:configuration users bmc>

コンテキスト内では、コンテキスト固有のコマンドを実行します。たとえば、現在のユーザーの設定を取得するには、configuration preferences コンテキストから get コマンドを実行します。

dory:configuration preferences> get
                       locale = C
                 login_screen = status/dashboard
              session_timeout = 15
           session_annotation = 
           advanced_analytics = false

コンテキストを変更するコマンドのあとに入力が存在する場合は、ターゲットのコンテキストでそのコマンドが実行されますが、制御は呼び出し側のコンテキストに戻ります。たとえば、コンテキストを変更せずにルートコンテキストから設定を取得するには、コンテキストナビゲーションコマンドに get コマンドを追加します。

dory:> configuration preferences get 
                       locale = C
                 login_screen = status/dashboard
              session_timeout = 15
           session_annotation = 
           advanced_analytics = false

システム内で新しいエンティティーを作成した場合は通常、新しいエンティティーに関連付けられたコンテキストが、コミットされていない状態で作成されます。たとえば、configuration alerts threshold コンテキストから create コマンドを実行することによってしきい値警告を作成します。

dory:> configuration alerts thresholds create 
dory:configuration alerts threshold (uncommitted)>

プロンプト内の (uncommitted) は、これがコミットされていないコンテキストであることを示します。コミットされていないエンティティーは、commit コマンドを使用してコミットされます。コミットされていないコンテキストから移動しようとすると、確認を求めるプロンプトが表示されます。

dory:configuration alerts threshold (uncommitted)> cd /
Leaving will abort creation of "threshold". Are you sure? (Y/N)

コミットされていないエンティティーをコミットするときは、新しいエンティティーに関連付けられたプロパティーが検証され、エンティティーを作成できない場合はエラーが生成されます。たとえば、新しいしきい値警告の作成には統計名の指定が必要であり、この名前を設定できない場合はエラーが生成されます。

dory:configuration alerts threshold (uncommitted)> commit
error: missing value for property "statname"

この問題を解決するには、エラーに対処してコミットを再試行します。

dory:configuration alerts threshold (uncommitted)> set statname=cpu.utilization  
                     statname = cpu.utilization (uncommitted)
dory:configuration alerts threshold (uncommitted)> commit
error: missing value for property "limit"
dory:configuration alerts threshold (uncommitted)> set limit=90
                        limit = 90 (uncommitted)
dory:configuration alerts threshold (uncommitted)> commit
dory:configuration alerts thresholds> list
THRESHOLD          LIMIT       TYPE STATNAME
threshold-000         90     normal cpu.utilization

関連項目: