lockfile-touch 间歇性终止

lockfile-touch 间歇性终止

我在使用一些脚本来确保脚本不会运行两次时遇到了一些问题。

我已经使用它很长一段时间了,没有遇到什么大问题,但是在我刚刚从 Ubuntu 15.04 升级到 Ubuntu 15.10 的服务器上,它给我带来了麻烦,所以我认为可能存在问题。

我使用的代码如下所示:

# locking; make sure we are alone
lockfile-create /var/lock/mylockfile --retry 3 --quiet
result=$?
if [ ${result} -gt 0 ]
then
    # allready running; bye!
    exit 2
fi
lockfile-touch /var/lock/mylockfile &
lockfiletouch="$!"
trap "{ kill ${lockfiletouch}; lockfile-remove /var/lock/mylockfile; }" EXIT

然而,现在的结果是有时出现以下错误:

/usr/local/scripts/myscript.sh: line 1:  8173 Terminated              lockfile-touch /var/lock/mylockfile

它发生的次数不到脚本运行次数的 1%,但运行的频率相当高。

有人能告诉我是什么原因导致的这个问题以及如何避免这个错误吗?

答案1

根据此,错误只是 lockfile-touch 被你的脚本杀死。

#bash-x 锁.sh
+ lockfile 创建 /var/lock/mylockfile --retry 3 --quiet
+ 结果=0
+'['0-gt0']'
+ 锁定文件触摸=3902
+ trap '{ kill 3902; lockfile-remove /var/lock/mylockfile; }' 退出
+ 杀死 3902
+ lockfile-删除 /var/lock/mylockfile
lock.sh:第 1 行:3902 终止 lockfile-touch /var/lock/mylockfile

相关内容