Запустить скрипт при запуске после всего остального

Хорошо, так что есть служба (nagios), работающая в окне Debian, которая работает отлично, за исключением одной очень конкретной проблемы, которая возникает только после перезапуска окна. Проблема легко устраняется путем повторного запуска службы вручную. Сама проблема настолько специфична и настолько запутанна, что у меня нет времени ее запускать (одна проверка из 500+ возвращается с ошибкой, но только тогда, когда она управляется nagios).

Следующее лучшее, что было бы, – это заставить его перезапустить службу при запуске, поэтому никто не должен делать это вручную каждый раз. До сих пор я пытался это сделать следующим образом:

  • «Нет такого файла или каталога» в существующих файлах?
  • Как заблокировать все порты, кроме некоторых?
  • Одновременное редактирование нескольких файлов с помощью vim / gedit
  • Запустить банку при запуске во всех системах на основе * nix
  • Не удается запустить x11vnc без подключенного монитора
  • Расширение Debian запрашивает пароль root для установки дисков usb после обновления
  • Добавляя «/etc/init.d/nagios restart» в /etc/rc.local, это выполняется от просмотра журналов, но не устраняет проблему (все равно нужно делать вручную)

    Перемещение времени для начала nagios до самого конца (update-rc.d nagios defaults 99 10)

    Вернувшись к исправлению rc.local, на этот раз добавив строку «sleep 20», это ничего не делает, кроме задержки на запуск коробки на 20 секунд.

    Что еще я могу попробовать / посмотреть?

  • Почему backports называют backports?
  • Запуск приложения без оформления заголовка и окна
  • Как установить статический DNS с dhclient, в то время как resolv.conf продолжает переписываться?
  • Почему нет транспорта https для инструмента debian apt?
  • не удалось перемонтировать файловую систему в режим «только для чтения» после обновления пакета
  • Debian: Какой брандмауэр для новичка?
  • 2 Solutions collect form web for “Запустить скрипт при запуске после всего остального”

    Проверьте, есть ли сценарий инициализации, который вы хотите отложить, блок комментариев вроде этого:

     ### BEGIN INIT INFO # Provides: scriptname # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable service provided by daemon. ### END INIT INFO 

    Этот блок, как указано в вики Debian's LSBInitScripts, сообщает подсистеме init, что некоторые другие объекты должны быть обязательными для запуска до запуска скрипта nagios.

    Затем все, что вам нужно сделать, это указать, почему ваш скрипт nagios init необходимо перезапустить, из-за того, что сеть еще не установлена? Это потому, что веб-сервер все еще запускается? Или nfs еще не синхронизированы?

    Это зависит от вас, чтобы узнать, почему вам нужно каждый раз перезапускать nagios, но этот подход является лучшим изящным решением вашего дела.

    Если перезапуск должен выполняться вручную, ваш чек может зависеть от некоторых переменных, которые устанавливаются при входе в систему.

    Проверьте, не запускается ли service nagios restart вручную, также устраните проблему или /etc/init.d/nagios restart ее /etc/init.d/nagios restart .

     # Required-Start: $all 

    будет способ гарантировать, что все другие службы будут запущены до запуска вашего скрипта. Но я думаю, что rc.local работает после того, как все службы запускаются в любом случае, так что это не поможет.

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