Debian exim4 init script will not start exim after update
Simon Day
email at simonday.info
Tue May 13 13:14:58 UTC 2008
Hi all,
I just updated exim over the weekend - here is what is now installed
(sorry not sure what the previous versions were
||/ Name
Version Description
+++-=====================================-=====================================-==========================================================================================
ii exim4
4.69-2 meta-package to ease Exim MTA (v4)
installation
ii exim4-base
4.69-2+b1 support files for all Exim MTA
(v4) packages
ii exim4-config
4.69-2 configuration for the Exim MTA (v4)
ii exim4-daemon-heavy
4.69-2+b1 Exim MTA (v4) daemon with extended
features, including exiscan-acl
The default /etc/init.d/exim4 script now will not start exim.
The error message displayed is: exim: incompatible command-line options
or arguments
After investigation it seems the cause is the 3rd line of the
start_daemon call (commented out below)
start_daemon -p "$PIDFILE" \
"$DAEMON" -bd "-q${QFLAGS}${QUEUEINTERVAL}" \
#"${COMMONOPTIONS}" "${QUEUERUNNEROPTIONS}" "${SMTPLISTENEROPTIONS}"
Because (in my setup) COMMONOPTIONS, QUEUERUNNINGOPTIONS and
SMTPLISTENROPTIONS are empty it means that exim4 is called by
/sbin/start_stop_daemon with args which are empty
Exim says that these are incompatible options
To recreate on the command line run:
exim4 -bd -q30m ''
I suspect the bug itself is that the args passed to start_daemon need to
be sanitised so empty args are not passed. (this is certainly a work around)
However it may be that this is an upstream bug in either
/lib/lsb/init-functions for not sanitising them there or possible in
exim itself for not discarding the empty arguments.
I've worked around this myself by commending out the empty args - but
thought I should let you know
Regards,
Simon Day
More information about the Pkg-exim4-maintainers
mailing list