1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
.\"
.\" Japanese Version Copyright (c) 2005 Yuichi SATO
.\" all rights reserved.
.\" Translated Tue May 10 04:32:35 JST 2005
.\" by Yuichi SATO <ysato444@yahoo.co.jp>
.\"
.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
|