Depois de um pouco de experimentação, encontrei um pouco mais otimizado
solução para usar o Davmail com a diretiva davmail.server=true
, supondo que você tenha executado uma instalação manual.
[Unit]
Description=DavMail Exchange Gateway
Requires=network.target
After=network.target
[Service]
Type=simple
RemainAfterExit=no
GuessMainPid=yes
Environment=BASE=<< YOUR_MANUAL_INSTALL_PATH_HERE >>
Environment=PROPERTIES=<< PATH_TO_davmail.properties >>
ExecStartPre=/usr/bin/bash -c "for i in ${BASE}/lib/*; do /usr/bin/systemctl set-environment CLASSPATH=${CLASSPATH}:$i ; done"
ExecStart=/usr/bin/java -Xms1G -Xmx1G -XX:ErrorFile=/var/log/davmail_errors.log -XX:-HeapDumpOnOutOfMemoryError -Djava.awt.headless=true -Dsun.net.inetaddr.ttl=60 -cp ${BASE}/davmail.jar:${CLASSPATH} davmail.DavGateway ${PROPERTIES}
ExecReload=/bin/kill -HUP ${MAINPID}
ExecStop=/bin/kill -QUIT ${MAINPID}
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
Para aqueles que fizeram instalações empacotadas, eles podem comentar a linha "ExecStartPre" e, em seguida, definir BASE = / usr / share / java e PROPERTIES = / etc / davmail.properties.
Razões que isso é "melhor" inclui mostrar a saída do console de processo java em seu local syslog padrão ( /var/log/syslog
|| /var/log/messages
|| where), facilitando a depuração quando a situação fica ruim.