コマンド行から、個別のキュー、ホスト、並列環境、およびチェックポイント設定環境を変更することができます。そのほかのコマンドと組み合わせて qconf コマンドを使用します。
すでにファイルを用意している場合は、次のように適切なオプションを付けて qconf コマンドを入力します。
qconf -Me qconf -Mq qconf -Mckpt qconf -Mp |
ファイルを用意していない場合は、次のように適切なオプションを付けて qconf コマンドを入力します。
qconf -me qconf -mq qconf -mckpt qconf -mp |
–Me および –me オプションで、実行ホストを変更します。
–Mq および –mq オプションで、キューを変更します。
–Mckpt および –mckpt オプションで、チェックポイント設定環境を変更します。
–Mp および –mp オプションで、並列環境を変更します。
大文字の –M オプションと小文字の –m オプションの違いは、qconf コマンドの結果に影響します。–M と –m は両方とも「modify (変更)」を意味しますが、大文字の –M は既存のファイルからの変更を表すのに対し、小文字の –m は既存のファイルからの変更ではありません。その代わりに、小文字の –m は、エディタで一時ファイルを開きます。このファイルに対して行なった変更を保存し、エディタを終了すると、システムではこれらの変更がただちに反映されます。
ただし、多くのオブジェクトを一度に変更する場合や、対話形式を使用せずにオブジェクト構成を変更する場合は、オブジェクト属性を変更するオプション (–Aattr、–Mattr など) を付けて qconf コマンドを使用します。
次のコマンドは、ファイルでの指定に従って変更を行います。
qconf -Aattr {queue | exechost | pe | ckpt} filename qconf -Mattr {queue | exechost | pe | ckpt} filename qconf -Rattr {queue | exechost | pe | ckpt} filename qconf -Dattr {queue | exechost | pe | ckpt} filename |
次のコマンドは、コマンド行での指定に従って変更を行います。
qconf -aattr {queue | exechost | pe | ckpt} attribute value {queue-list | host-list} qconf -mattr {queue | exechost | pe | ckpt} attribute value {queue-list | host-list} qconf -rattr {queue | exechost | pe | ckpt} attribute value {queue-list | host-list} qconf -dattr {queue | exechost | pe | ckpt} attribute value {queue-list | host-list} |
–Aattr および –aattr オプションで、属性を追加します。
–Mattr および –mattr オプションで、属性を変更します。
–Rattr および –rattr オプションで、属性を置換します。
–Dattr および –dattr オプションで、属性を削除します。
filename は、属性値のペアが含まれるファイルの名前です。
attribute は、変更するキューまたはホストの属性です。
value は、変更する属性の値です。
–aattr、–mattr、および –dattr オプションを使用すると、値のリストにある個別の値を操作できます。–rattr オプションにより、値のリスト全体が、コマンド行またはファイルで指定した新しいリストに置き換えられます。
次のコマンドにより、tcf27–e019.q のキューの型が、バッチのみに変更されます。
% qconf -rattr queue qtype batch tcf27-e019.q |
次のコマンドでは、ファイル new.cfg を使用して、tcf27–e019.q のキューの型とシェル起動動作を変更します。
% cat new.cfg qtype batch interactive checkpointing shell_start_mode unix_behavior % qconf -Rattr queue new.cfg tcf27-e019.q |
次のコマンドにより、1000M の値を持つリソース属性 scratch1 と、2 の値を持つリソース属性 long が追加されます。
% qconf -rattr exechost complex_values scratch1=1000M,long=2 tcf27-e019 |
次のコマンドにより、リソース属性 short が、値 4 を持つホストに関連付けられます。
% qconf -aattr exechost complex_values short=4 tcf27-e019 |
次のコマンドにより、scratch1 の値が 500M に変更されますが、そのほかの値は変更されません。
% qconf -mattr exechost complex_values scratch-=500M tcf27-e019 |
次のコマンドにより、リソース属性 long が削除されます。
% qconf -dattr exechost complex_values long tcf27-e019 |
次のコマンドにより、チェックポイント設定環境 sph 用のキューのリストに、tcf27–b011.q が追加されます。
% qconf -aattr ckpt queue_list tcf27-b011.q sph |
次のコマンドにより、並列環境 make のスロット数が 50 に変更されます。
% qconf -mattr pe slots 50 make |
qselect コマンドにより、キューインスタンスのリストが出力されます。オプションを指定した場合、qselect では、ユーザーが指定した条件に一致するキューインスタンスのみが表示されます。qconf コマンドと qselect を組み合わせて使用すると、変更する特定のキューインスタンスの対象設定を行うことができます。
次のコマンドにより、Linux マシン上のすべてのキューインスタンスが表示されます。
% qselect -l arch=glinux |
次のコマンドにより、CPU を 2 つ搭載したマシン上のすべてのキューインスタンスが表示されます。
% qselect -l num_proc=2 |
次のコマンドにより、CPU を 4 つ搭載した 64 ビットの全 Solaris マシン上のすべてのキューインスタンスが表示されます。
% qselect -l arch=solaris64,num_proc=4 |
次のコマンドにより、アプリケーションライセンスを提供するキューインスタンスが表示されます。キューインスタンスは、事前に構成されています。
% qselect -l app_lic=TRUE |
qselect と qconf を組み合わせることで、1 つのコマンド行を使用して広範囲の変更を行うことができます。このためには、qselect コマンド全体を逆引用符 (` `) 内に入れ、それを qconf コマンド行の queue-list 変数の位置で使用します。
次のコマンドにより、Solaris マシン上のすべてのキューインスタンスで、prolog スクリプトが sol_prolog.sh に設定されます。
% qconf -mattr queue prolog /usr/local/scripts/sol_prolog.sh `qselect -l arch=solaris` |
次のコマンドにより、2 プロセッサシステム上のすべてのキューインスタンスで、属性 fluent_license が 2 に設定されます。
% qconf -mattr queue complex_values fluent_license=2 `qselect -l num_proc=2` |
キューインスタンスの構成を自動化するもっとも柔軟性が高い方法は、qconf コマンドと qselect コマンドを併用する方法です。これらのコマンドを組み合わせることで、独自のカスタム管理スクリプトを構築できます。