Intereting Posts
Iptables разрешить входящий FTP Распечатайте результаты из bash-скрипта с большим количеством продолжений Новая строка в переменной Фильтр одиночного чтения csv на основе значений 1-го столбца Запуск много последовательных exes с вином, быстрый rsync'ing несколько пар {src, dest} Использование виртуального процессора (многоядерный процессор) – определение процесса Как найти количество байтов, переписанных в иерархию папок? Отказано в доступе к эхо (пытается использовать команду echo вместо команды ls в сценарии оболочки) Веб-сайт активен, но доменное имя не отображается в поиске WhoIs из командной строки Linux Как установить файл-ролик для CentOS 6 для использования в Gnome? Как собираются данные в / proc / * и насколько они надежны? WiFi-ретранслятор с одним адаптером WiFi в Debian Есть разрешение группы, но не удается создать файл Попытка перезапустить apache с помощью Vagrant – «Ошибка конфигурации apache2»

Использовать утилиты lockfile-progs

Есть другой вопрос, который связан, но на самом деле он отличается, потому что я спрашиваю, почему поведение lockfile-create & lockfile-touch отличается от текущего содержимого страницы руководства.

У меня есть этот скрипт, чтобы узнать и понять утилиты lockfile-progs. Я тестировал его и работал хорошо. Но я считаю, что строки, связанные с lockfile-touch, не нужны. Мой скрипт должен запускать только один экземпляр xterm на одном компьютере для каждого пользователя. Я сделаю все, что удалит линии lockfile-touch? Кто-то знает, если у меня возникнут проблемы с измененным скриптом?

#!/bin/bash function atexit { kill $LOCKFILE_TOUCH_PID lockfile-remove $DOTLOCK_FILENAME echo atexit! exit } DOTLOCK_FILENAME=/tmp/xterm-one-instance-$UID lockfile-create --retry 0 --use-pid $DOTLOCK_FILENAME || exit lockfile-touch $DOTLOCK_FILENAME & LOCKFILE_TOUCH_PID=$! echo lockfile-touch running, PID=$LOCKFILE_TOUCH_PID trap atexit EXIT HUP INT TERM xterm 

Мой измененный скрипт:

 #!/bin/bash function atexit { lockfile-remove $DOTLOCK_FILENAME echo atexit! exit } DOTLOCK_FILENAME=/tmp/xterm-one-instance-$UID lockfile-create --retry 0 --use-pid $DOTLOCK_FILENAME || exit trap atexit EXIT HUP INT TERM xterm 

все еще предотвращает другой экземпляр xterm после 5 м 33 секунд. Я нашел это поведение запутанным после прочтения на странице руководства, что мне нужно прикоснуться к файлу блокировки каждые пять минут.

Источник говорит:

  * Without a pid in the lockfile, the lock * is valid if it is newer than 5 mins. 

Похоже, вам не нужен lockfile-touch если вы используете --use-pid .