Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I can't send out emails,

need to look into the logs,

but where is the log?

share|improve this question

migrated from Aug 27 '09 at 16:05

This question came from our site for professional and enthusiast programmers.

Care to let us know what OS you're using? As others have noted below, on most systems it's /var/log/maillog. On Solaris it's /var/adm/maillog. On Debian/Ubuntu it's /var/log/mail.log (note the dot). – Gerald Combs Aug 27 '09 at 16:40
tail -f /var/log/maillog – Thomas Denton Aug 28 '09 at 14:50

Where are the logs?

The default location depends on your linux/unix system, but the most common places are

  • /var/log/maillog
  • /var/log/mail.log
  • /var/adm/maillog
  • /var/adm/syslog/mail.log

If it's not there, look up /etc/syslog.conf. You should see something like this

mail.*         -/var/log/maillog

sendmail writes logs to the mail facility of syslog. Therefore, which file it gets written to depends on how syslog was configured.

If you system uses syslog-ng (instead of the more "traditional" syslog), then you'll have to look up your syslog-ng.conf file. You'll should something like this:

# This files are the log come from the mail subsystem.
destination mail     { file("/var/log/mail.log"); };
destination maillog  { file("/var/log/maillog"); };
destination mailinfo { file("/var/log/"); };
destination mailwarn { file("/var/log/mail.warn"); };
destination mailerr  { file("/var/log/mail.err"); };

Unable to send out emails?

One of the most common reason I've seen for a freshly installed sendmail not being able to send out emails is the DAEMON_OPTIONS being set to listen only on

See /etc/mail/

dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
DAEMON_OPTIONS(`Port=smtp,Addr=, Name=MTA')dnl

If that's your case, remove the "Addr=" part, rebuild your conf file and you're good to go!

DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl

[root@server]$ m4 > /etc/
[root@server]$/etc/init.d/sendmail restart

If you've been making changes to /etc/ manually thus far (instead of the *.m4 file) you can make similar changes in /etc/ The offending line will look like this:

O DaemonPortOptions=Port=smtp,Addr=, Name=MTA

Change it to:

O DaemonPortOptions=Port=smtp, Name=MTA
share|improve this answer
tail -f /var/log/maillog – Thomas Denton Aug 28 '09 at 14:49

check /var/log/maillog or /var/log/messages if you're on *nix

Also, if nothing is going out you may want to check your firewall as follows (be sure to do this as root):

[root@web01 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ms-v-worlds 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:imaps 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:imap 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:pop3 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:smtp 
           tcp  --  anywhere             anywhere            tcp dpt:ssh state NEW recent: SET name: SSH side: source 
DROP       tcp  --  anywhere             anywhere            tcp dpt:ssh state NEW recent: UPDATE seconds: 60 hit_count: 8 TTL-Match name: SSH side: source 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (0 references)
target     prot opt source               destination         
[root@xxxx ~]# 
share|improve this answer
Or, on *nix, look in /etc/syslog.conf to see where else those log messages might be getting sent to. – Liudvikas Bukys Aug 27 '09 at 16:34

Try looking at /var/log/ or /var/log/mail.err

share|improve this answer

also check /var/spool/mqueue for current cached outgoing mail

share|improve this answer
share|improve this answer

For fedora et al. journalctl _COMM=sendmail will show messages from sendmail.

I was directed to this answer via a search. /var/log/mail only contains a 'statistics' file on Fedora. And all other mentioned directories are non-existent.

journalctl is not intuitive enough if you don't know what parameter to use, ymmv. so I've posted this solution.

share|improve this answer

You can create your own log file

[admin@local ~]# killall sendmail
[admin@local ~]# touch /var/log/sendmail.log
[admin@local ~]# sendmail -bd -q15m >> /var/log/sendmail.log

and then

[admin@local ~]# tail -f /var/log/sendmail.log

451 4.0.0 /fake/path/ line 0: cannot open: No such file or directory
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.