Есть некая программа barfoo. Крутиться себе потихоньку, но изредка падает. Запустил ее через while true; do barfoo; sleep 5; done &, чтобы перезапускалось автоматом, так оно при падении утягивает за собой и родительский процесс. Если, пока она работает через while true, отправить ей sigkill, то перезапускается нормально. Интересно, почему так - может ли быть какая-то связь с тем что это все живет под OpenVZ? И как еще можно простым способом автоматизировать перезапуск программы в случае ее «нештатного» завершения - запускать как сервис? Или какой-нть watchdog скрипт через крон?
Спасибо.