Я работаю над системой на основе Debian и все еще изучаю systemctl vs service , но пытаюсь использовать мою openvpn
конфигурацию в качестве сценария использования для проработки этого.
В моей текущей настройке я действительно не понимаю, как openvpn
выглядит запуск при загрузке и как им управлять.
При загрузке это openvpn
процессы, которые были запущены:
> ps aux | ag 'openvpn'
nobody 952 0.0 0.0 5800 1108 ? Ss 13:29 0:00 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --config /etc/openvpn/server.conf
root 1537 0.0 0.1 6088 2544 ? Ss 13:30 0:00 /usr/sbin/openvpn --daemon --auth-nocache --config /root/.vpn_conf/pia.ovpn
Я до сих пор не знаю, что контролирует их, чтобы начать при загрузке.
Первый процесс - это сервер (который я хочу отключить), а другой - клиент, который я хочу сохранить и продолжать использовать.
Насколько я понимаю, можно использовать systemctl
для перечисления всех услуг:
> systemctl list-unit-files --type=service | ag 'openvpn'
openvpn.service disabled
openvpn@.service disabled
Каковы различия между этими двумя? Эти две службы контролируют процессы, описанные выше? Если они отключены, почему они все еще запускаются при загрузке?
Если я пытаюсь использовать service
статус openvpn
, я получаю:
> service openvpn status
● openvpn.service - OpenVPN service
Loaded: loaded (/lib/systemd/system/openvpn.service; disabled)
Active: active (exited) since Sun 2017-02-19 13:29:51 PST; 18min ago
Process: 936 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 936 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/openvpn.service
Feb 19 13:29:51 systemd[1]: Started OpenVPN service
Что побуждает меня спросить:
Если в systemctl есть две записи для openvpn, как вызывается вторая при использовании service openvpn_2nd? status
?
На всякий случай есть /etc/init.d/openvpn
скрипт.
Любое понимание некоторых из вопросов выше будет принята с благодарностью.
Ответы:
OpenVPN - не лучшее место для начала, если вы изучаете systemd, потому что OpenVPN - не простой сервис.
OpenVPN - это шаблонный сервис под systemd. В блоках обслуживания названы , все полученные из одного блока служебного файла с именем . Итак, вы начинаете свой экземпляр с
и иметь его автозапуск при загрузке с Очевидно, вы останавливаете и отключаете его с помощью аналогичных команд.openvpn@config.service
openvpn@.service
/etc/openvpn/server.conf
Это не то, что работает на вашем OpenVPN-клиенте. Чтобы найти сервисный модуль для этого, можно найти имя модуля из имени группы управления, запустив
Нешаблонном
openvpn.service
объясняется в комментариях в верхней части его блок обслуживания файла. Это еще что-то, что опять же делает эту вещь более сложной для изучения, как первый опыт systemd новичка.дальнейшее чтение
источник