.\" .\" Japanese Version Copyright (c) 2005 Yuichi SATO .\" all rights reserved. .\" Translated Tue May 10 04:32:35 JST 2005 .\" by Yuichi SATO .\" .TH FLOCK "1" "November 2004" "flock (util-linux)" "User Commands" .SH 名前 flock \- ファイルロックを取得し、そのロックを保持するコマンドを実行する .SH 書式 .BR flock [ \fB\-\-shared\fR | \fB\-\-timeout=\fR\fIseconds\fR ] lockfile command .. .SH 説明 .\" 更なる説明は、ここに追加すること。 .PP flock(2) システムコールを使ってファイルロックを取得し、 そのロックを保持する指定されたコマンドを実行する。 指定するオプションにより、排他ロックにも共有ロックにもできる。 また、ロック競合が発生した際の動作は、 ロックが使用可能になるまで無限に待ち続ける (デフォルト) ように指定することも、 指定された時間の後にロックが使用可能にならなければ 失敗するように指定することもできる。 時間を 0 に指定すると、コマンドは (訳註: ロックの取得を) 全く待たない。 .PP .TP \fB\-\-shared\fR 共有ロックを取得する。 共有ロックの取得は、他者による共有ロックの取得を停止させないが、 他者による排他ロックの取得を停止させる。 逆に、排他ロックの取得 (デフォルト) は、 他者による排他ロックの取得も共有ロックの取得も停止させる。 一般的には、 ロックされたデータをコマンドが単に読み込む場合には共有ロックが使用され、 ロックされたデータにコマンドが書き込みを行う場合には排他ロックが使用される。 .TP \fB\-\-timeout=n\fR \fIn\fR 秒以内にロックが取得できない場合は、中止 (abort) する。 全くブロックせずにロックを取得したい場合は、 \fB\-\-timeout=0\fR と指定すること。 タイマーはロックの取得にのみ適用される。 ロックが取得されると、タイムアウトは直ちにキャンセルされる。 実行されるコマンドはタイムアウトの対象ではない。 .PP .SH "例 (いくつかの仮想的なプログラムの呼び出し)" .hl .PP flock /etc/passwd read-and-write-to-passwd .PP flock \-\-shared /etc/passwd just-read-something-from-passwd .PP flock \-\-timeout=0 /sys /usr/local/bin/update-hotplug /sys .SH 著者 Written by Adam J. Richter