Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
system:flock [2016/01/27 09:51] – создано mirocowsystem:flock [2016/01/27 10:46] (текущий) mirocow
Строка 1: Строка 1:
 +{{tag>system bash}}
 +
 ====== flock ====== ====== flock ======
  
 +Простая защита от двойного запуска заданий cron.
 +Эта комманда запустит /root/myscript.sh и создаст lock-файл для данного процесса. Пока он активен, новый вызов данного скрипта не произойдет.
 +После завершения программы, блокировка файла снимается и процесс может быть снова запущен.
 +Параметр -w 600 определяет время ожидания комманды flock на освобождение lock-файла.
 +Для моментальной отмены выполнения процесса используйте параметр -w 0, для ожидания же бесконечно долгого времени параметр нужно опустить.
 +
 +===== Принимаются следующие параметры: =====
 +
 +  * **-s  --shared**     Устанавливает общую блокировку
 +  * **-x  --exclusive**  Устанавливает эксклюзивную блокировку
 +  * **-u  --unlock**     Снимите блокировку
 +  * **-n  --nonblock**   
 +  * **-w  --timeout**    Время ожидания блокировки
 +  * **-o  --close**      Закрывет дескриптор файла перед запуском команд
 +  * **-c  --command**    Запуск командной строки одного через оболочки
 +
 +
 +===== Пример использования: =====
 +
 +==== crontab ====
 +
 +<code>
 +* * * * * /usr/bin/flock --lockfile=/tmp/myapp.locked -- /path/to/myapp
 +</code>