Nigel Metheringham edited this page Nov 29, 2012 · 2 revisions
Clone this wiki locally



Exim is not working. What is wrong? How can I check what it is doing?


Exactly how is it not working? Check the more specific questions in the other sections of this FAQ. Some general techniques for debugging are:

  1. Look for information in Exim's log files. These are in the log directory in Exim's spool directory, unless you have configured a different path for them. Serious operational problems are reported in paniclog.

  2. If the problem involves the delivery of one or more messages, try forcing a delivery with the -M option and also set the -d option, to cause Exim to output debugging information. For example:

    exim -d -M 0z6CXU-0005RR-00

    The output is written to the standard error stream. You need to have admin privileges to use -M and -d.

  3. If the problem involves incoming SMTP mail, try using the -bh option to simulate an incoming connection from a specific host, for example:

    exim -bh

    This goes through the motions of an SMTP session, without actually accepting a message. Information about various policy checks is output. You will need to know how to pretend to be an SMTP client.

    • Try "-bhc" instead of just "-bh" if you use callouts.
  4. If the problem involves lack of recognition or incorrect handling of local addresses, try using the -bt option with debugging turned on, to see how Exim is handling the address. For example,

    exim -d -bt z6abc

    shows you how it would handle the local part z6abc.

  5. If the above looked promising but didn't output enough debugging information, try "-d+all" instead of just "-d". See the exim man page for help on this.