Startscript: использование $! создать pidfile – иногда возвращать неправильный pid (выключен одним)

У нас есть три экземпляра redis, запущенных на тестовом сервере. По какой-то причине наш стартовый скрипт, который запускает redis, может записать неправильный pid в файл. Вот что он делает:

su redis -c "redis-server /redis.conf & echo \$! > /var/run/redis_6379" 

Если я объединил redis_6379 start && redis_6380 start && redis_6381 start, а затем я остановлю их так и начну их так, после 10 или 15 итераций я встречу pid в стартовом файле, который отключен на 1.

Кто-нибудь знает, почему это может произойти?

One Solution collect form web for “Startscript: использование $! создать pidfile – иногда возвращать неправильный pid (выключен одним)”

Возможно ли, что redis-server вилки и что PID вы получаете от $! является родительским PID, но вы действительно заинтересованы в дочернем PID?

  • solaris 10 + отображать 2 строки после матча grep?
  • Как передать журнал переменных в качестве аргумента скрипту?
  • Сценарии - Папки с пробелами
  • Скопируйте файлы в папку назначения только в том случае, если файлы уже существуют. но исходные файлы имеют другое расширение файла
  • Как имитировать трубку?
  • Как удалить определенные символы в текстовом файле
  • Как получить имена файлов при использовании find и sed
  • Добавить строку текста в раздел файла правил
  • Как работает вилочная бомба?
  • Что означает двоеточие (':') в синтаксисе разрешения переменной bash?
  • Как использовать inotifywait для просмотра каталога для создания файлов определенного расширения
  • Linux и Unix - лучшая ОС в мире.