У меня есть экземпляр VPS, работающий под управлением Ubuntu Server версии 10.04 LTS (Lucid Lynx).
Я установил мунин и мунин-узел. Он правильно настроен. Работает нормально.
Проблема в том, что мне нужно запустить команду sudo service munin-node start
для ее запуска.
Если я перезагружаю систему (либо с помощью sudo reboot now
, либо с помощью веб-панели управления), эта служба не запускается. Мне нужно запустить команду выше, чтобы начать.
Я попытался «все» для устранения неполадок, но безуспешно.
1) СЛЕДУЕТ просто запустить столько же программ, которые я установил в этом VPS, используя aptitude (ProFTPd, NginX, MySQL, monit, Icecast, Postfix и многие другие). Это не так.
2) Я попытался добавить service munin-node start
в /etc/rc.local
, как я успешно сделал, чтобы запустить другой сервис. Он не запускается!
3) Я выполнил команду update-rc.d munin-node defaults
. Похоже, все было хорошо! После перезагрузки ... она не запускается!
4) Я запустил grep -r munin *
, чтобы увидеть все, что связано с munin, на /var/log
За несколько лет работы системным администратором у меня было никогда не был таким невежественным , как это время.
Что действительно впечатляет, так это простое service munin-node start
(или эквивалентное), когда система запущена и работает ... и служба запускается нормально.
Идеи? Предложения?
Я собираюсь попробовать этот совет из другого вопроса , если все остальное не поможет ...
Ну, возможно, я не нашел точно почему , но я нашел решение.
Я изменил пару строк из конфигурационного файла /etc/init/munin-node.conf
upstart , и теперь munin-node запускается автоматически при перезагрузке, как я и хотел.
Я заменил существующие предложения « start on » и « stop on » на те, которые находятся в конфигурационном файле выскочки MySQL по адресу /etc/init/mysql.conf
ниже. это мой модифицированный фрагмент из /etc/init/munin-node.conf
, который теперь работает для меня:
#start on (filesystem and net-device-up IFACE=lo)
#stop on runlevel [!2345]
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [016]
Я только что прокомментировал исходные строки «start on» и «stop on» и добавил строки «start on» и «stop on» из mysql.conf.
Было бы здорово, если бы какой-то эксперт объяснил нам значение этих строк ...
Спасибо.
По моему мнению, лучший способ запустить службу munin-node - это иметь в вашем /etc/init/munin-node.conf следующую строку:
start on (net-device-up IFACE!=lo and local-filesystems)
Это потому, что вам нужно интерфейс (отличный от lo), на котором прослушивается munin-узел, и вам также необходимо смонтировать локальные файловые системы для доступа к данным статистики.
Вы можете использовать директиву runlevel, но это не рекомендуется:
Разница в том, использовать ли более общий 'runlevel' или более явные local-> filesystems (7) и события сетевого устройства должны руководствоваться поведением вашей работы. Если> ваша служба будет работать без действительного сетевого интерфейса (например, она привязывается к> 0.0.0.0 или использует setsockopt (2) SO_FREEBIND), то событие runlevel предпочтительнее, поскольку> ваша служба запустится немного раньше и начать параллельно с другими службами.
Однако, если ваша служба требует, чтобы по какой-то причине был настроен интерфейс без обратной связи (т. Е. Он не запустится без возможностей широковещательной передачи), тогда явно> сказать «как только устройство с обратной связью появится» может справка.
i>
Из готовой книги Ubuntu: http://upstart.ubuntu.com/cookbook/#start-on