Скрипт мониторинга, запущенный rc.local

У нас есть программа на C, которая запускается с использованием rc.local '. Мы добавили следующую строку:

 /usr/local/bin/pc 

в файл rc.local . pc – скомпилированная программа на C. В настоящий момент все работает нормально. Мы беспокоимся о pc . Если это так, есть ли способ контролировать это и перезапустить программу автоматически?

2 Solutions collect form web for “Скрипт мониторинга, запущенный rc.local”

Если вы используете rc.local вы, вероятно, используете какой-то sysV init? Вы можете добавить строку

 pc:2345:respawn:/usr/local/bin/pc 

в /etc/inittab . Эта строка означает, что программа будет запущена для уровней выполнения 2,3,4 и 5 и будет автоматически перезапущена при ее завершении, то есть сбой.

Использование rc.local как предложено user1129682, кажется хорошей идеей. Если вам нужен быстрый (и грязный) способ проверить, была ли запущена ваша программа (повторно), вы можете изменить свою программу, чтобы отправить вам по электронной почте по мере ее запуска. Для этого установите пакет mailutils и запустите программу C следующим образом:

 #include <stdlib.h> int main(int argc, char *argv[]) { system("echo | mail -s \"pc started\" your@email.addr"); return orginal_main(argc, argv); } 

это предполагает, что машина pc работает, имеет правильное функционирование электронной почты.

  • Динамический компоновщик "недоступна информация о версии"
  • mod_rewrite: undefined symbol: lstat error
  • Проблема зависимостей с automake
  • Отправка сигнала SIGINT для обработки при выполнении системного вызова или скрипта killall -SIGINT
  • Использование strace для файла C
  • Отправлять сообщения журнала в другое место
  • / usr / bin /, который возвращает загадочную ошибку ", которая: no ls in ((null))"
  • некоторые символы показывают после размещения объектов на amazon s3
  • Можно ли записать в другие файловые дескрипторы в C?
  • Как скомпилировать файлы вручную .1
  • Сделать отступ от отступов GNU длинными комментариями
  • Linux и Unix - лучшая ОС в мире.