Iniciei uma conexão VPN com sudo openvpn --daemon --config connection.ovpn
. Existe uma maneira de encerrar essa conexão sem usar ps
para procurar o processo e depois kill
eu mesmo?
Iniciei uma conexão VPN com sudo openvpn --daemon --config connection.ovpn
. Existe uma maneira de encerrar essa conexão sem usar ps
para procurar o processo e depois kill
eu mesmo?
Como o OpenVPN não parece oferecer nenhuma função própria para isso, você provavelmente está procurando por
pkill <process-name>
, que procurará todos os processos correspondentes ao nome fornecido e os eliminará.Se você tiver várias instâncias em execução, mas gostaria de eliminar apenas uma específica, a
-f
opção permite que você corresponda à chamada de processo completa, incluindo parâmetros, por exemplo,pkill -f "openvpn --config connection.ovpn"
.Veja a saída de
ps x
oupgrep -lf <process-name>
(igual apkill
, mas não os mata, portanto, essencialmente semelhante aps | grep <name>
) para descobrir com quais parâmetros o daemon foi iniciado.De https://openvpn.net/community-resources/how-to/
Controlando um processo OpenVPN em execuçãoExecutando no Linux/BSD/Unix
O OpenVPN aceita vários sinais:
Use a diretiva writepid para gravar o PID do daemon OpenVPN em um arquivo, para que você saiba para onde enviar o sinal (se estiver iniciando o openvpn com um initscript, o script pode já estar passando uma diretiva –writepid na linha de comando openvpn).
Portanto, você deve usar o comando kill e iniciar o openvpn com arg -writepid.
Não, você precisará matar o processo. Para ser justo, um script de gerenciamento de daemon faria exatamente isso. Você pode usar pgrep ou pkill para facilitar sua vida.
Substitua cliente pelo nome correspondente. Isso encerrará a sessão.