Faça o systemd recarregar apenas um processo openvpn e não o grupo inteiro

5

Estou executando várias instâncias openvpn no meu servidor com o debian stable; também alguns clientes como uma instância do servidor. No momento, quando uma dessas instâncias falha, o systemd parece matar e reiniciar todo o grupo de processos:

May 27 12:09:44 tritone systemd[1]: openvpn@client_uk.service: main process exited, code=exited, status=1/FAILURE
May 27 12:09:44 tritone systemd[1]: Unit openvpn@client_uk.service entered failed state.
May 27 12:10:01 tritone systemd[1]: Stopping OpenVPN connection to client_rhode...
May 27 12:10:01 tritone systemd[1]: Starting OpenVPN connection to client_uk...
May 27 12:10:01 tritone systemd[1]: Stopping OpenVPN connection to client_ukraine...
May 27 12:10:01 tritone systemd[1]: Stopping OpenVPN connection to server_udp...
May 27 12:10:01 tritone systemd[1]: Stopping OpenVPN service...
May 27 12:10:01 tritone systemd[1]: Starting OpenVPN service...
May 27 12:10:01 tritone systemd[1]: Started OpenVPN service.
...

Isso é tão indesejado quanto o imho supérfluo. Reiniciar o único serviço com falha seria suficiente. Esta é a configuração do systemd de /etc/systemd/system/multi-user.target.wants/openvpn.service :

[Unit]
Description=OpenVPN service
After=network.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/true
ExecReload=/bin/true
WorkingDirectory=/etc/openvpn

[Install]
WantedBy=multi-user.target

Eu tenho visto configs, onde o ExecReload foi definido como kill -HUP $MAINPID , e também meu servidor parece fazer isso, como diz o status do systemctl:

  Process: 5893 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)

Então o que eu não entendo, onde está este comando kill definido, se a configuração do systemd ExecReload realmente diz o contrário? Além disso, por que o serviço está sendo reiniciado, mesmo se Type=oneshot estiver definido? Estou olhando para o arquivo correto?

E como deve ser o comando de reinicialização? Kill não funciona, já que o processo já está morto.

Editar: Encontrei /lib/systemd/system-generators/openvpn-generator e /lib/systemd/system/[email protected] agora, mas ainda não está claro quando são executados ou executados. O gerador parece falhar, pois nenhum dos links foi criado, provavelmente devido a restrições de selinux. No entanto, este arquivo parece ser usado para o init. Então, eu me pergunto, por que o arquivo simulado /etc/systemd/system/multi-user.target.wants/openvpn.service foi criado?

    
por Michael 27.05.2015 / 13:57

1 resposta

0

você pode tentar systemctl restart [email protected] se você usar CONFIGNAME como seu nome de arquivo de configuração para o seu arquivo .conf ...

    
por 09.08.2018 / 03:57