Я пишу скрипт Bash для отслеживания процесса и обнаружения, когда он разбился. Для этого я контролирую каталог/proc;Linux - когда есть/proc/PID?
start_my_process;
my_process_id=$!;
until [[ ! -d "/proc/$my_process_pid" ]]; do
# alert the process is dead and restart it...
done
Могу ли я гарантировать, что запись процесса в/Proc/будет создан ДО Bash завершает выполнение команды, чтобы начать процесс? Или возможно, что со временем мой чек выше будет выполнен, запись для start_my_process может еще не создаваться?
EDIT: В итоге я фактически пошел против пользовательского решения и выбрал monit, который является прекрасным инструментом сторожевого таймера.
Действительно ли ваш вопрос «как определить, сохраняется ли фоновый процесс?» –
Возможно. Выше было то, как я решил это сделать. Я хочу обнаружить, что процесс мертв. КАК КАК он мертв. – Boon
@ Включайте много общих шаблонов, чтобы сделать это, например monit, вы попробовали? – Anatoly