Como reiniciar serviços OpenVPN específicos usando “service”

2

Eu tenho dois servidores OpenVPN diferentes em execução em uma caixa e quero reiniciar um deles (e deixar o outro intocado). Eu sei que posso reiniciar todos os serviços OpenVPN usando service openvpn restart , mas então isso reinicia todos os serviços OpenVPN.

Existe uma maneira de reiniciar um servidor OpenVPN específico usando o comando service ?

    
por serpah 10.06.2011 / 08:02

2 respostas

3

Como o script /etc/init.d/openvpn (que é executado por /usr/sbin/service ) não oferece nenhuma opção para fazê-lo (pelo menos com o ubuntu-10.04), a resposta é não.

Mas, como são todos os scripts, basta editar /etc/init.d/openvpn e adicionar algo como

named-restart)
  log_action_begin_msg "Restarting $DESC $2"
  PIDFILE="/var/run/openvpn.${2}.pid"
  NAME=$2
  log_daemon_msg "  Stopping VPN '$NAME'"
  stop_vpn
  sleep 1
  log_daemon_msg "  Restarting VPN '$NAME'"
  start_vpn
  if test -z "$PIDFILE" ; then
    log_warning_msg "  VPN $2 is not running."
  fi
  ;;

após o

case "$1" in

dirctive. Mais tarde, você pode simplesmente chamar service openvpn named-restart <vpn-name> .

    
por 10.06.2011 / 08:34
2

o cmd "service openvpn restart" não faz distinção, reinicia os serviços. Eu acho que uma solução pode ser recarregar o serviço. Ele não cortará o serviço, mas recarregará o arquivo de configuração. Então pode ser o truque.

Senão eu não acho que você pode reiniciar um de vocês vpn sem reiniciar o outro com o serviço cmd.

    
por 10.06.2011 / 08:25