Сервер чата Openfire: демон не запускается при каждом запуске сервера.

Вопрос или проблема

Мы используем чат-сервер, установленный с помощью Openfire, для локального офисного использования. Каждое утро, когда сервер запускается, служба Openfire не запускается. Я добавил ее в уровни выполнения, используя команду chkconfig. Операционная система, которую мы используем, – это CentOS 6.5 final.

chkconfig --level 0123456 openfire on

Вывод команды chkconfig был следующим:

openfire        0:on    1:on    2:on    3:on    4:on    5:on    6:on

И все равно служба не запускается каждый раз, когда сервер работает. Каждый раз мне приходится запускать службу вручную, используя

/etc/init.d/openfire start

Эта процедура не сработала для меня, поэтому я отредактировал файл rc.local и добавил службу. Она тоже не работает для меня:

vim /etc/rc.local

Я ввел следующее в rc.local:

sh /etc/init.d/openfire start

Если кто-то сталкивается с такой же проблемой, дайте мне знать, как я могу ее исправить.

Вам действительно нужно глубже разобраться, чтобы найти коренную причину. Слепое добавление chkconfig на каждый уровень выполнения не решит проблему.

  1. Проверьте /var/log/messages на предмет проблем/ошибок при запуске.
  2. Добавьте set -x сразу после #!/bin/sh в /etc/init.d/openfire — это позволит отладить сценарий.

У меня такой же вопрос, и я решил его с помощью stackoverflow.

cd /opt/openfire/jre/bin
cp java java.bak
rm java
ln -s /usr/bin/java java
service openfire start

Ответ или решение

Проблема, с которой вы столкнулись, когда Openfire не запускается автоматически при старте сервера на CentOS 6.5, может иметь несколько причин. Вот пошаговое руководство для диагностики и исправления проблемы.

Шаг 1: Проверка системных логов

Первым делом, проверьте системные журналы на наличие сообщений об ошибках, связанных с запуском Openfire. Выполните следующую команду:

tail -f /var/log/messages

Это позволит вам увидеть любые ошибки, которые могут возникать при загрузке системы. Обратите внимание на сообщения, относящиеся к Openfire, и запишите ошибки, если они есть.

Шаг 2: Диагностика скрипта инициализации

Чтобы больше узнать о том, что происходит при запуске Openfire, добавьте команду отладки в файл инициализации. Откройте /etc/init.d/openfire в текстовом редакторе и добавьте следующую строку сразу после #!/bin/sh:

set -x

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

Шаг 3: Проверка запуска Java

Некоторые проблемы могут быть связаны с тем, что Openfire не может найти Java или ее версия неверна. Если вы изменяли или переустанавливали Java, выполните следующие команды:

cd /opt/openfire/jre/bin
cp java java.bak
rm java
ln -s /usr/bin/java java

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

Шаг 4: Перезапуск Openfire

После того как вы проверили логи и внесли изменения в скрипт инициализации, попробуйте снова запустить службу:

service openfire start

Шаг 5: Проверка файла rc.local

Убедитесь, что скрипт в /etc/rc.local выполняется корректно. Если вы добавили строку для запуска Openfire, убедитесь, что она выглядит следующим образом:

/etc/init.d/openfire start

Не забудьте сделать файл исполняемым:

chmod +x /etc/rc.d/rc.local

Шаг 6: Обновление конфигурации

Также убедитесь, что Openfire обновлен до последней версии, так как устаревшая версия может содержать ошибки, которые были исправлены в новых версиях.

Заключение

Следуйте этим шагам, чтобы диагностировать и исправить проблему с автоматическим запуском Openfire. Если после всех выполненных действий проблема сохраняется, будьте готовы предоставить больше информации об ошибках из логов для более глубокой диагностики.

Оцените материал
Добавить комментарий

Капча загружается...