Paul Lauzon wrote:
> PostFix does not seem to work anymore.
There are an infinite number of ways for something to fail but only
exactly one correct way for it to work.
In addition to the other comments I see this:
> # service postfix status
> ? postfix.service - Postfix Mail Transport Agent
> Loaded: loaded (/lib/systemd/system/postfix.service; disabled; vendor
> preset: enabled)
Why is it disabled? Is that the problem? That it is not running? Try
enabling it.
Since you are running systemd the systemd way to enable it is:
systemctl enable postfix.service
> Oct 9 05:35:00 ...: Postfix is running with backwards-compatible default
> settings
> Oct 9 05:35:00 ...: See http://www.postfix.org/COMPATIBILITY_README.html
> for details
> Oct 9 05:35:00 ...: To disable backwards compatibility use "postconf
> compatibility_level=2" and "postfix reload"
The above might be a notification of a change but it is not going to
be "the problem" you are chasing down. I see you updated it with the
following but I would have recommended to ignore it for the moment.
> Do I really need to do these?
> postconf compatibility_level=2
> postfix reload
Before doing this I would have asked what was the state of field 5 in
the master.cf file. If it is 'y' or 'n' then the above will not
change anything. But if it is '-' then note that the default changed
from "no" previously to "yes" now in the newer version. Running the
above switches to using the new "yes" default instead of the previous
"no" default.
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - y - - smtpd
> Oct 9 05:35:04 ...: warning: symlink leaves directory:
> /etc/postfix/./makedefs.out
> Oct 9 05:35:04 ...: warning:
> /var/spool/postfix/etc/ssl/certs/ca-certificates.crt and
> /etc/ssl/certs/ca-certificates.crt differ
> Oct 9 05:35:05 ...: warning:
> /var/spool/postfix/lib/i386-linux-gnu/libnss_systemd.so.2 and
> /lib/i386-linux-gnu/libnss_systemd.so.2 differ
> Oct 9 05:35:05 ...: postfix/postqueue[...]: warning: Mail system is down
> -- accessing queue directly
The theory goes that in Debian when the init script starts it runs a
helper script /usr/lib/postfix/configure-instance.sh which will update
all files that are needed for running inside the chroot. If those
files are out of sync then that is an indication that the init did not
run that script and therefore did not run correctly. Since you are
running systemd (Lasciate ogne speranza, voi ch'intrate.) then the
start process would be something like this.
systemctl is-enabled postfix.service
systemctl enable postfix.service
systemctl start postfix.service
systemctl status postfix.service
Note that in the systemd architecture systemctl isn't the process that
does the starting. It simply sends a message to the running systemd.
Therefore it never reports on the status of any action. One must
always remember to follow any action with a status request in order to
know the success or failure of the previous action.
Bob