[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp: 2546] Re: LDAP サーバ障害時の対策



らむじぃです。

> # 二重起動のチェック
> # 
> 
> if [ ! -f /var/lock/subsys/check-ldap ]; then
>     touch /var/lock/subsys/check-ldap
>     RETVAL=$?
>     if [ ${RETVAL} -ne 0 ]; then
> 	echo "ERROR: Can not create lock file"
> 	exit
>     fi
> 
> else
>     echo "ERROR: exist lock file"
>     exit
> fi
このロジックじゃダメでしょ。
全然lockになってない。

多重起動したときに
> if [ ! -f /var/lock/subsys/check-ldap ]; then
と
>     touch /var/lock/subsys/check-ldap
の間で入れ違いになってlock作られても検出できませんよ?
(touchは、既存ファイルがあってもエラーになりません)

shell scriptでやるならsymlinkを貼るという1行為を使うべきでしょう。
# 他にディレクトリ作成というのも一般的ですね。

bash-2.05$ touch are
bash-2.05$ echo $?
0
bash-2.05$ touch are
bash-2.05$ echo $?
0
bash-2.05$ rm -f are
bash-2.05$ ln -s are kore
bash-2.05$ echo $?
0
bash-2.05$ ln -s are kore
ln: `kore': すでにファイルが存在します
bash-2.05$ echo $?
1

-- 
<|> YOSHIMURA Keitaro/ramsy
<|> ramsy@xxxxxxxx
<|> http://ramix.jp/~ramsy/

_______________________________________________
Postfix-jp-list mailing list
Postfix-jp-list@xxxxxxxxxxxxxxxxxxxx
http://lists.sourceforge.jp/mailman/listinfo/postfix-jp-list

Follow-Ups
[postfix-jp: 2547] Re: LDAP サーバ障害時の対策, Takahiro Kambe
[postfix-jp: 2548] Re: LDAP サーバ障害時の対策, Ryuji Matsumoto
References
[postfix-jp: 2457] Re: LDAP サーバ障害時の対策, Ryuji Matsumoto
[postfix-jp: 2545] Re: LDAP サーバ障害時の対策, Ryuji Matsumoto

[検索ページ] [Postfix-JP ML Home]