Назад | Перейти на главную страницу

Как перезапустить определенные службы OpenVPN с помощью «службы»

У меня есть два разных сервера OpenVPN, работающих на компьютере, и я хочу перезапустить один из них (и оставить другой нетронутым). Я знаю, что могу перезапустить все службы OpenVPN, используя service openvpn restart, но затем перезапускаются все службы OpenVPN.

Есть ли способ перезапустить определенный сервер OpenVPN с помощью service команда?

Как /etc/init.d/openvpn скрипт (который выполняется /usr/sbin/service) не предлагает никаких вариантов для этого (по крайней мере, с ubuntu-10.04), ответ - нет.

Но поскольку это все сценарии, вы можете просто отредактировать /etc/init.d/openvpn и добавить что-то вроде

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
  ;;

после

case "$1" in

директива. Позже вы можете просто позвонить service openvpn named-restart <vpn-name>.

cmd "service openvpn restart" не делает различия, он перезапускает службы. Я думаю, что решением может быть перезагрузка службы. Это не остановит выполнение службы, а перезагрузит файл конфигурации. Так что это может помочь.

Иначе я не думаю, что вы можете перезапустить один из вас vpn без перезапуска другого с помощью служебной команды.