Avvio di Dovecot

14 agosto 2022 by Roberto Puzzanghera 0 commenti

Ho modificato lo startup script distribuito da Dovecot e l'ho salvato come /usr/local/bin/dovecotctl:

#!/bin/bash

### BEGIN INIT INFO
# Provides:          dovecot
# Required-Start:    $local_fs $remote_fs $network $syslog $time
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Should-Start:      postgresql mysql slapd winbind
# Should-Stop:       postgresql mysql slapd winbind
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Dovecot init script
# Description:       Init script for dovecot services
### END INIT INFO

# Example /etc/init.d/dovecot script. Change DAEMON if necessary.
# License is public domain.

DAEMON=/usr/local/dovecot/sbin/dovecot

# Uncomment to allow Dovecot daemons to produce core dumps.
#ulimit -c unlimited

test -x $DAEMON || exit 1
set -e

base_dir=`$DAEMON config -h base_dir`
pidfile=$base_dir/master.pid

if test -f $pidfile; then
  running=yes
else
  running=no
fi

case "$1" in
  start)
    echo -n "Starting Dovecot"
    $DAEMON
    echo "."
    ;;
  stop)
    if test $running = yes; then
      echo "Stopping Dovecot"
      kill `cat $pidfile`
      echo "."
    else
      echo "Dovecot is already stopped."
    fi
    ;;
  reload)
    if test $running = yes; then
      echo -n "Reloading Dovecot configuration"
      kill -HUP `cat $pidfile`
      echo "."
    else
      echo "Dovecot isn't running."
    fi
    ;;
  restart|force-reload)
    echo -n "Restarting Dovecot"
    if test $running = yes; then
      kill `cat $pidfile`
      sleep 1
    fi
    $DAEMON
    echo "."
    ;;
  *)
    echo "Usage: dovecotctl {start|stop|reload|restart|force-reload}" >&2
    exit 1
    ;;
esac

exit 0
wget -O /usr/local/bin/dovecotctl https://notes.sagredo.eu/files/qmail/dovecot/dovecotctl
chmod +x /usr/local/bin/dovecotctl

Avviamo Dovecot e questo è quello che si dovrebbe vedere :

> dovecotctl
Usage: dovecotctl {start|stop|reload|restart|force-reload}

> dovecotctl start
Starting Dovecot.

> ps axfu
root       164  0.0  0.0   4692  2940 ?        Ss   Jul29   0:06 /usr/local/dovecot/sbin/dovecot 
dovecot    167  0.0  0.0   4356  1148 ?        S    Jul29   0:01  \_ dovecot/anvil 
root       168  0.0  0.0   4616  2968 ?        S    Jul29   0:01  \_ dovecot/log 
root       169  0.0  0.0   7888  4796 ?        S    Jul29   0:06  \_ dovecot/config 
dovecot    344  0.0  0.0   6084  3112 ?        S    Jul29   0:04  \_ dovecot/stats 
vpopmail 16052  0.0  0.0   8760  6900 ?        S    17:26   0:00  \_ dovecot/imap-login 
dovecot  16053  0.0  0.0  10820  7744 ?        S    17:26   0:00  \_ dovecot/auth 
dovecot  16054  0.0  0.0  10836  7452 ?        S    17:26   0:00  \_ dovecot/auth -w 
vpopmail 16055  0.0  0.0  44276  9340 ?        S    17:26   0:00  \_ dovecot/imap

Lanciare Dovecot al boot

Per lanciare Dovecot all'avvio del server è sufficiente aggiungere una riga come questa nel file rc.local

/usr/local/bin/dovecotctl start &

In caso, come è molto probabile, ti trovi in un sistema basato su systemd, il file rc.local è salvato in /etc/rc.local e dovrai istruire systemd affinchè esso venga eseguito all'avvio della macchina. Per ricordare come si fa sei invitato a leggere questo commento (grazie a GoofY).

E' importante settare il proprio rc.local perchè da ora in poi tutti i servizi verranno lancoati all'avvio da questo script e non da daemontools.

Dovecot sotto daemontools

Se si vuole far girare Dovecot sotto daemontools leggere le indicazione spoegate in questo commento.

Aggiungi un commento

Ultimi commenti
Vedi anche...
Articoli recenti

RSS feeds