Oracle Solaris Cluster リファレンスマニュアル

印刷ビューの終了

更新: 2015 年 9 月
 
 

halockrun (1M)

名前

halockrun - ファイルロック保持中の子プログラムの実行

形式

/usr/cluster/bin/halockrun [-nsv] [-e exitcode] lockfilename 
     prog [args]

説明

halockrun ユーティリティーは、ファイルロックを要求し、そのロックを保持したままプログラムを実行するための便利な方法を備えています。このユーティリティーではスクリプトロックがサポートされるので、Bourne シェルなどのスクリプト言語でプログラミングする際には役立ちます。sh(1) を参照してください。

halockrun は、ファイル lockfilename を開き、ファイル全体に対して排他モードでファイルロックを要求します。fcntl(2) を参照してください。次に、引数 args でプログラム prog を子プロセスとして実行し、子プロセスが終了するまで待機します。子が終了すると、halockrun はロックを解除し、子が終了したのと同じ終了コードで終了します。

子プロセスで、prog は危険領域で実行されます。この危険領域は形がよく整われているため、子プロセスがどのような方法で終了してもロックが解除されることです。これらの方法は全体的に効果的です。

ファイル lockfilename を開けない場合や作成できない場合、halockrunstderr にエラーメッセージを出力し、終了コード 99 で終了します。

オプション

次のオプションがサポートされています。

–e exitcode

通常、halockrun によって検出されたエラーは終了コード 99 で終了します。–e オプションでは、この特別な終了コードの値を変更できます。

–n

非ブロックモードでロックを要求します。ロックがすぐ許可されない場合、halockrunprog を実行せずに終了コード 1 でただちに終了します。この動作は –e オプションの影響を受けません。

–n オプションを省略すると、ブロックモードでロックを要求します。つまり、halockrun ユーティリティーは、ロックが使用可能な状態になるまで待機します。

–s

排他モードではなく共有モードのファイルロックを要求します。

–v

標準エラー出力 に冗長出力します。

終了ステータス

子プロセスが起動しないなどの halockrun 自体によるエラーが検出された場合、halockrun は終了コード 99 で終了します。–e オプションで終了コードの値をそれ以外の値に変更できます。「オプション 」を参照してください。

それ以外の場合、halockrun は子プロセスの終了コードで終了します。

属性

次の属性については、attributes(5) を参照してください。

属性タイプ
属性値
使用条件
ha-cluster/system/core
インタフェースの安定性
発展中

関連項目

fcntl(2), attributes(5)