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

systemd зависимость экземпляра OpenVPN

Получил экземпляр X OpenVPN, для которого требуется запуск прокси-сервера Dante на том же компьютере (поскольку он будет использовать прокси-сервер для подключения к своей цели). Я хотел бы установить зависимость в systemd для openvpn@X.service (и только в этом случае) ждать danted быть запущенным.

Как я могу это сделать?

Предполагая, что ваш danted служба также запускается через systemd и определяется как danted.service, вы можете использовать два [Unit] параметры Requires и After.

  • Requires= перечислит другие службы, которые необходимы для запуска вашего фактического обслуживания. В вашем случае это было бы danted. Кроме того, когда openvpn@X.service запущен, danted.service также запускается автоматически.
  • After= гарантирует, что openvpn служба запускается после danted. Requires только запустит две службы одновременно, что, вероятно, приведет к сбою вашей службы openvpn.

Чтобы прикрепить это к вашему openvpn@X.service только, лучше всего было бы использовать systemctl edit openvpn@X.service. Откроется редактор (см. man systemctl и SYSTEMD_EDITOR), в который вы можете просто добавить свои изменения.

[Unit]
Requires=danted.service
After=danted.service

Это создаст файл /etc/systemd/system/openvpn@X.service.d/override.conf который будет содержать изменения / дополнения. Любые изменения / дополнения в этом override.conf файл будет иметь приоритет над настройками в /lib/systemd/system.
Таким образом, вы также можете создать каталог и путь вручную.

После сохранения изменений запустите systemctl daemon-reload чтобы активировать изменения.


Вы также можете взглянуть на другие доступные зависимости для systemd единицы, которые описаны в man systemd.unit.