После перезагрузки сервера (ОС Ubuntu Server 12.04 LTS) перестал запускаться до этого уже настроенный и отлично работающий ejabberd.
В логах появилось следующее:
=ERROR REPORT==== 2013-10-19 13:16:19 ===
E(<0.37.0>:ejabberd_config:554) : Error reading Mnesia database spool files:
The Mnesia database couldn't read the spool file for the table 'config'.
ejabberd needs read and write access in the directory:
/var/lib/ejabberd
Maybe the problem is a change in the computer hostname,
or a change in the Erlang node name, which is currently:
ejabberd@localhost
Check the ejabberd guide for details about changing the
computer hostname or Erlang node name.
=INFO REPORT==== 2013-10-19 13:16:19 ===
application: ejabberd
exited: {bad_return,{{ejabberd_app,start,[normal,[]]},
{'EXIT',"Error reading Mnesia database"}}}
type: temporary
До очередной перезагрузки настройки ejabberd не изменялись. Единственное что делалось с ОС — это ввод домен, некоторые изменения в /etc/hosts
Похожая ситуация описана здесь http://www.ejabberd.im/node/3245 и также дан корректный ответ, необходимо изменить переменную ERLANG_NODE=ejabberd@название_вашего_домена_для_джаббер в файле /etc/default/ejabberd . После перезапуска ejabberd всё заработало.
Причина указана в сообщении лог файла (цитата из текста, расположенного выше):
Maybe the problem is a change in the computer hostname,
or a change in the Erlang node name, which is currently:
ejabberd@localhost
то есть автоматическое определение имени хоста опознало его как localhost.