Палітыка перазапуску, дададзеная для аднаго тунеля, пачынае ўжывацца да кожнага тунеля на машыне. Гэта не памылка systemd; гэта розніца паміж drop-in асобніка і drop-in шаблона. Шлях, пад якім вы запісваеце файл, вызначае, колькі службаў яго атрымаюць у спадчыну.

Выбірайце абсяг да налады. Два каталогі выглядаюць амаль аднолькава, і толькі адзін з іх абмежаваны выбраным асобнікам.

Сімптом: адна праўка, усе тунелі

Drop-in канкрэтнага асобніка знаходзіцца ў каталозе, названым поўным імем асобніка, напрыклад [email protected]. Drop-in шаблона знаходзіцца ў [email protected], з сімвалам @ і без імені асобніка паміж імі. Першы прымяняецца толькі да office. Другі прымяняецца да кожнай службы, створанай з гэтага шаблона.

Форма шаблона не дасягае асобнага шаблона [email protected] і не дасягае незвязаных службаў з openvpn у назве.

Выберыце каталог, які адпавядае абсягу

Абодва каталогі знаходзяцца ў /etc/systemd/system/. Калі адкінуць апошні кампанент system, ствараецца шлях, які systemd не чытае як сістэмнае перавызначэнне, а гэта ціхі спосаб прымусіць правільна выглядаючы файл нічога не рабіць. Запішыце поўны шлях адзін раз і паўторна выкарыстоўвайце яго.

Drop-in таксама патрабуе правільнага загалоўка раздзела. Налады службы належаць пад [Service]. Файл з наладамі, але без раздзела, ігнаруецца або адхіляецца, і юніт працягвае паводзіць сябе як раней, пакуль файл ляжыць і выглядае аўтарытэтна.

Трымайце мэту ў назве файла, калі дадаяце больш за адзін drop-in. Лексікаграфічны парадак вызначае аб’яднанне, і назва, якая гаворыць, што робіць файл, робіць гэты парадак чытэльным.

Прачытайце аб’яднаны юніт перад запісам

Прачытайце аб’яднаны юніт, перш чым нешта запісваць. systemctl cat [email protected] друкуе асноўны юніт і кожны drop-in, які прымяняецца, у парадку аб’яднання. Параўнайце яго з другім асобнікам, калі разглядаеце змену шаблона. Гэтае параўнанне дакладна паказвае, якія службы атрымаюць праўку ў спадчыну.

Файл асобніка не сцірае налады шаблона. Абодва аб’ядноўваюцца, таму значэнне шаблона, пра якое вы забыліся, можа ўсё яшчэ дзейнічаць.

Іншыя названыя drop-in, налады часу выканання і канфігурацыя ад пакетаў таксама ўдзельнічаюць. Не мяркуйце, што файл, які вы праўвалі апошнім, і ёсць увесь юніт. Аб’яднаны вывад і ёсць юніт.

Трымайце палітыку юніта па-за профілем

Трымайце палітыку юніта і канфігурацыю VPN асобна. Дырэктыва профілю не робіцца сапраўдным сінтаксісам systemd толькі таму, што знаходзіцца пад [Service]. Налада перазапуску таксама не належыць у файл .ovpn.

Гэтае раздзяленне — таксама прычына, чаму палітыка перазапуску — не тое ж самае, што OpenVPN уласнае аднаўленне сувязі з іншымі вузламі. Вырашыце, якія паводзіны вам патрэбны, перш чым выбіраць абсяг.

Прымяніце і праверце асобнік

Пасля змены перазагрузіце вызначэнні менеджара праз systemctl daemon-reload. Гэтая перазагрузка не перазапускае тунель; яна толькі перачытвае файлы юнітаў. Затым прымяніце патрэбнае дзеянне жыццёвага цыкла да дакладнага асобніка.

Праверце, зноў прачытаўшы загружаны юніт і назіраючы за змененымі паводзінамі. Перазапуск, які нясе актыўную працу, заслугоўвае планаванага перапынку, а не хуткага тэсту на прадукцыйным тунелі. Запішыце мэту і абсяг перавызначэння побач з разгортваннем, каб наступны чалавек ведаў, ці файл меў быць агульным.

Калі палітыка сапраўды агульная, перанясіце яе ў шаблон свядома і праверце другі асобнік, перш чым лічыць справу завершанай.Даведнік па юнітах systemd апісвае прыярытэт drop-in і парадак аб’яднання.

Падобныя артыкулы