XS Troubleshooting

From OLPC
Jump to navigation Jump to search

ejabberd and your hostname

For the ejabberd service to run, the name of the ejabberd server (in our case "schoolserver.example.org") must be resolvable to it's IP address (e.g. DNS server alias records). You will encounter problems if the hostname is not resolved correctly by the upstream authoritative DNS server for your domain, or if it is not resolved at all.

A good test is:

ping `hostname -f `

Hostname has been changed after initial configuration

Note: only for 0.4 and 0.5.x.

If you change the hostname of the XS, ejabberd will break. This is fixed in XS-0.6, where you can just run domain_config and ejabberd will be reconfigured transparently. For earlier releases, do not change the hostname unless you are willing to handle the breakage yourself.

To change the hostname after ejabberd has been started initially, use this process:

  • Stop ejabberd
ejabberdctl stop
  • Use the 'domain_config' utility to set the name
  • Update the fully qualified hostname of the machine by editing /etc/sysconfig/network as follows:
HOSTNAME=schoolserver.newdomain.org
  • Ensure the hostname is what you want and resolves correctly when doing ping `hostname -f`
  • Stop ejabberd
ejabberdctl stop
  • Empty the /var/lib/ejabberd/spool/
rm /var/lib/ejabberd/spool/*
  • Start ejabberd
ejabberdctl start

You now must re-create the 'admin' account and 'Online' group as described in XS_Installing_Software_0.5

See also