MaksimovEvgeny
@MaksimovEvgeny

Почему systemd запускает OpenVPN раньше готовности интерфейсов определенных в /etc/network/interfaces?

Приветствую!

После обновления до Ubuntu 16.04 не стартует OpenVPN.
Проблема в том, что systemd пытается запустить службу в момент, когда интерфейс br0 определенный в /etc/network/interfaces еще не готов:
...
auto br0
iface br0 inet static
    bridge_ports p9p1
    bridge_fd 0
    address 192.168.1.1
    netmask 255.255.255.0
...

В свою очередь, OpenVPN при старте выполняет скрипт:
#!/bin/bash
#
ifconfig $1 up
brctl addif br0 $1

который при неготовности моста br0 завершается с ошибкой и не дает запуститься службе.

Подскажите, как заставить systemd запускать OpenVPN только после полной готовности интерфейсов или как корректно в скрипте этой готовности подождать (sleep не предлагать ибо костыль)?

Спасибо!
  • Вопрос задан
  • 555 просмотров
Решения вопроса 1
@younghacker
Проверьте файл (это федора на убунте может быть в другом месте) /lib/systemd/system/openvpn@.service

[Unit]
Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I
After=network.target

[Service]
PrivateTmp=true
Type=forking
PIDFile=/var/run/openvpn/%i.pid
ExecStart=/usr/sbin/openvpn --daemon --writepid /var/run/openvpn/%i.pid --cd /etc/openvpn/ --config %i.conf

[Install]
WantedBy=multi-user.target
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы