[Mailman-Developers] Mailman 3 not restarting after reboot

Mark Sapiro mark at msapiro.net
Sat Sep 2 11:50:18 EDT 2017


I have encountered a strange issue on both lists.mailman3.org and
mail.python.org. Namely, Mailman3 is not started upon reboot.

If I reboot the server Mailman 3 is shut down normally but is never
started when the server comes up. A typical mailman.log excerpt is

> Sep 02 10:12:06 2017 (20345) nntp runner caught SIGTERM.  Stopping.
> Sep 02 10:12:06 2017 (20345) %s runner exiting.
> Sep 02 10:12:06 2017 (20342) command runner caught SIGTERM.  Stopping.
> Sep 02 10:12:06 2017 (20342) %s runner exiting.
> Sep 02 10:12:07 2017 (20348) %s runner exiting.
> Sep 02 10:12:07 2017 (20318) Master stopped
> Sep 02 10:21:24 2017 (17278) Master started
> Sep 02 10:21:29 2017 (17306) %s runner started.
> Sep 02 10:21:29 2017 (17301) %s runner started.
> Sep 02 10:21:29 2017 (17311) %s runner started.
> Sep 02 10:21:29 2017 (17299) %s runner started.

(the '%s' should be fixed by
https://gitlab.com/mailman/mailman/merge_requests/311). The entries from
10:12:07 are the normal shutdown from the reboot. The very next thing is
at 10:21:24 when I manually did 'service mailman start'. The
/etc/init.d/mailman3 script is attached as mailman.txt. This has not
changed recently. The only thing that has changed is the
/etc/init.d/qcluster script (attached as qcluster.txt). This existed
before, but was changed to use start-stop-daemon and to add a 'stop'
function.

I also did 'update-rc.d qcluster defaults' to create the rc*.d entries
for qcluster which I had neglected to do before. The entries for
mailman3 are there (unchanged in over a year).

Does anyone have an idea why Mailman 3 is not starting on reboot?

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan
-------------- next part --------------
### BEGIN INIT INFO
# Provides:            GNU Mailman
# Required-Start:      $local_fs $network
# Required-Stop:       $local_fs $network
# Default-Start:       2 3 4 5
# Default-Stop:        0 1 6
# Short-Description:   Mailman Service
# Description:         service control for Mailman
### END INIT INFO

PATH=/opt/mailman/mailman-bundler/bin:/usr/sbin:/usr/bin:/bin:/sbin:
DESC="GNU Mailman service"
DAEMON=/opt/mailman/mailman-bundler/bin/mailman
NAME=mailman
USER=mailman
GROUP=mailman

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

# Load the VERBOSE setting and other rcS variables
. /lib/init/vars.sh

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
. /lib/lsb/init-functions

case "$1" in
  start)
        [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
        # use --force to remove a stale lock.
        sudo -u $USER $DAEMON start --force
        ;;
  stop)
        [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
        sudo -u $USER $DAEMON stop
        ;;
  status)
        sudo -u $USER $DAEMON status
        ;;
  reopen)
        sudo -u $USER $DAEMON reopen
        ;;
  restart)
        log_daemon_msg "Restarting $DESC" "$NAME"
        sudo -u $USER $DAEMON restart
        ;;
  *)
        echo "Usage: $SCRIPTNAME {start|stop|status|reopen|restart}" >&2
        exit 3
        ;;
esac

-------------- next part --------------
### BEGIN INIT INFO
# Provides:            HyperKitty async tasks runner
# Required-Start:      $local_fs $network
# Required-Stop:       $local_fs $network
# Default-Start:       2 3 4 5
# Default-Stop:        0 1 6
# Short-Description:   HyperKitty async tasks runner
# Description:         HyperKitty async tasks runner
### END INIT INFO

PATH=/opt/mailman/mailman-bundler/bin:/usr/sbin:/usr/bin:/bin:/sbin:
DESC="HyperKitty async tasks runner"
DAEMON=/opt/mailman/mailman-bundler/bin/mailman-web-django-admin
NAME=qcluster
USER=mailman
GROUP=mailman
PIDFILE=/var/run/qcluster.pid

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

# Load the VERBOSE setting and other rcS variables
. /lib/init/vars.sh

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
. /lib/lsb/init-functions

case "$1" in
  start)
        log_daemon_msg "Starting $DESC" "$NAME"
        start-stop-daemon --start --quiet \
            --pidfile $PIDFILE --make-pidfile --background \
            --chuid $USER:$GROUP --exec $DAEMON -- qcluster
        ;;
  stop)
        log_daemon_msg "Stopping $DESC" "$NAME"
        start-stop-daemon --stop --pidfile $PIDFILE
        rm $PIDFILE
        ;;
  *)
        echo "Usage: $SCRIPTNAME {start|stop}" >&2
        exit 3
        ;;
esac



More information about the Mailman-Developers mailing list