Такое подсечно-огневой тактики может привести к непредсказуемым результатам в других приложениях. Так что похоже, что это известная ошибка. К сожалению в askubuntu вопрос ответ предложил создать upstart-сценарий. В Ubuntu 15.04 и Debian уже приняли systemd и больше не использовать выскочка. @DJClayworth, что последний вывод, что я могу сделать в этой ситуации для финансового учета? @Хоббс, что это неоправданно пренебрежительное и абсолютно бесполезный комментарий. Все, возможно, действительно думают, что они должны платить больше, но некоторые из "всех" могут быть более правы, полагая, что способ, чем другие, так что ваше утверждение "Вы ничем не отличаются, чем кто-либо" может быть полностью ложной.

Проверки/перезапуска обычно выполняется путем написания скрипта проверки вдоль этих линий:

#!/Бен/ш
если ! pgrep -L имя-из-исполняемый файл >/dev/нуль 2>&1; затем
/etc/init.d/your-startup-script.sh
интернет

и прибегать к нему каждые Н минут в хрон вот так:

*/Н * * * * /usr/local/bin/checker-script.sh

Если вы хотите реально контролировать в Хаскелл процесс, как она работает (так что вы можете захватить его выходе код или мгновенно умирает), то вам понадобится более изощренные оболочки. Обычно я использовать Python для этого, его подпроцесс модуль имеет все инструменты, необходимые для запуска и наблюдения за запуск подпроцесса.