Скрипт мониторинга, запущенный 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 работает, имеет правильное функционирование электронной почты.

  • Время между прогонами процесса иногда слишком велико, как я могу установить максимальное время?
  • Внешнее предельное число используемых ядер процессора
  • Освобождение программного обеспечения linux - совместимость
  • Запуск исполняемого файла как службы на порту
  • Как найти часть кода, который создает анонимную приватную память
  • IP_TRANSPARENT отсутствует в заголовках glibc
  • непрерывное тестирование проекта C ++ на github с разными дистрибутивами Linux
  • Linux Как проверить pivot_root?
  • Вычисление общего использования ЦП в C
  • Почему мой stdbool.h не входит в / usr / include?
  • Построить log4cxx
  • Interesting Posts

    Какой агент GPG использует Elementary Luna?

    Беспроводная связь на моем Dell Latitude E5320 не работает на Ubuntu, а работает на Linux Mint. Что я могу сделать, чтобы он работал?

    различный цвет ввода, чем вывод в терминальной оболочке bash

    как установить globstar для неинтерактивных оболочек

    Как отслеживать использование пользовательского диска в Linux

    Как использовать crontab (Gentoo)?

    Процесс именования в скриптах инициализации

    Как получить второе имя каталога в пути к файлу perforce?

    Предотвращение создания определенных узлов / dev / input / event

    Как расширить имена файлов с помощью Tab, даже если в пути используется переменная оболочки?

    / sys / class / drm структура каталогов

    Как проверить строку в строке с помощью оператора if?

    Как перенаправить и использовать фреймбуфер?

    Пароль root не работает для входа в Gnome с помощью gdm

    Можем ли мы объединить двоичные файлы без какой-либо операции копирования, обратившись к файловой системе?

    Linux и Unix - лучшая ОС в мире.