lockfile-касание, завершающееся периодически

У меня есть некоторые проблемы с небольшим количеством сценария, который я использую для проверки, что сценарий не работает дважды.

Я использовал это в течение достаточно долгого времени без очень проблем, но это дает мне проблему на сервере, который я просто обновил от 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
задан 24 October 2015 в 12:56
1 ответ

В соответствии с этим, ошибка заключается в том, что ваш скрипт просто убивает lockfile-touch.

# bash -x  lock.sh
+ lockfile-create /var/lock/mylockfile --retry 3 --quiet
+ result=0
+ '[' 0 -gt 0 ']'
+ lockfiletouch=3902
+ trap '{ kill 3902; lockfile-remove /var/lock/mylockfile; }' EXIT
+ kill 3902
+ lockfile-remove /var/lock/mylockfile
lock.sh: line 1:  3902 Terminated              lockfile-touch /var/lock/mylockfile
0
ответ дан 4 December 2019 в 06:58

Теги

Похожие вопросы