Використовуйте сервіс або systemctl для управління демоном openvpn під час завантаження?


11

Я працюю над системою на основі debian і все ще вчуся про systemctl vs сервіс , але намагаюся використовувати мою 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сценарій.

Будемо дуже вдячні за будь-яке розуміння деяких вищезазначених питань.


Який дистриб'ютор ти працюєш?
Сет,

DietPi w / Debian GNU / Linux 8 (jessie) Linux 3.14.79+
doremi

Відповіді:


18

OpenVPN - не найкраще місце для початку, якщо хтось навчається систематизовано, адже OpenVPN - це не проста послуга.

OpenVPN - це шаблонна служба під системою. У блоках обслуговування названі , всі отримані з одного блоку службового файлу з ім'ям . Отже, ви починаєте свій екземплярopenvpn@config.serviceopenvpn@.service/etc/openvpn/server.conf

systemctl start openvpn@server.service
і мати автоматичний запуск на завантажувальній програмі

systemctl включити openvpn@server.service
Очевидно, ви зупиняєте та відключаєте це за допомогою аналогічних команд.

Це не те, на чому працює ваш клієнт OpenVPN. Щоб знайти сервісний блок для цього, можна знайти ім'я блоку з назви групи керування, запустівши

systemd-cgls /

Нешаблон openvpn.serviceпояснюється у коментарі у верхній частині файлу його сервісного блоку. Знову ж таки, це робить ще більш складною справою навчитися як перший досвід початківця системи.

Подальше читання

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.