Прокси иштеп турганда илинип калган токтотуулар сейрек VPN катасы болот, экранда эң акыркы көрүнгөн нерсе VPN болсо да. Проксинин артындагы колдонмолор жок болуп бара жаткан жолду дагы күтүп турушат, ал эми туннелге ээ болгон юнит аны жабууга али чакырылган жок. Жай кызмат болуп көрүнгөн нерсе адатта тартип маселеси. Тартипке салуу мындай учурларды кандайдыр бир таймаут өзгөртүүсүнөн көп чечет.

Каршы тартипте сыртка карай жүрүңүз: адегенде керектөөчүлөр, анан прокси, акырында туннел — ар бирин аны иштеткен компонент токтотот.

Бир нерсени токтотпой туруп, юниттердин тизмесин түзүңүз

Кадимки иштетүүгө катышкан колдонмо юнитин, прокси юнитин жана VPN ээсин жазып алыңыз. Өзүнүн аяктоосу бар каалаган резолверди же жардамчы компонентти кошуңуз, анткени түнү экиде унутулуп калгандар — ошолор. Ушул тизме жок болсо, терген биринчи токтотуу буйругу курмандыкты туш келди тандайт.

Аттар — алсыз далил. Колдонуучунун проксиси, системалык прокси жана башка аккаунттун туннели атташ болушу мүмкүн, бирок алардын жашоо циклдери такыр байланышсыз.

Адегенде жумушту бүтүрүңүз, анан керектөөчүнү токтотуңуз

Пландалган токтотуу колдонмодон башталат: ага сурамдарын бүтүрүүгө же жокко чыгарууга жол бериңиз, анан проксини анын кызмат юнити аркылуу токтотуңуз. Эгер колдонмо туннел жок болгондон кийин да иштешин улантууга тийиш болсо, аны жок болуп бара жаткан маршрутка байлап койбой, атайын уюштуруңуз.

Токтотуу учурунда учакта болгон сурамдар жазууга кириши керек, анткени кийинки иштетүүдөгү кайталоо бороону так ушундан башталат.

ExecStop жана ExecStopPost — ар башка куралдар

ExecStop= — бул синхрондук токтотуу операциясы; ExecStopPost= — бул ийгиликсиз иштетүүдөн кийин да аткарылуучу тазалоо. Процесске сигнал берип, кайра кайткан токтотуу буйругу керектөөчү дагы эле маалыматын төгүп жатканда systemd'ге андан ары жүрүүгө жол берет. Кандай болбосун болушу керек нерсе пост-вариантка, ал эми токтотууну бөгөттөшү керек нерсе синхрондук вариантка таандык. Пакет файлын ордунда оңдобой, аракеттеги юнитти жана анын drop-in'дерин текшериңиз.

Көз карандылык графиги токтотуу тапшырмаларын тартипке салат. Ал асинхрондук скриптти синхрондукка айландырбайт жана алыскы колдонмону маалыматын бекитүүгө мажбурлабайт.

Токтотууну чектеңиз жана бул чектөөнүн баасын билиңиз

TimeoutStopSec= токтотуу буйругун да, кызматтын өзүнүн аяктоосун да чектейт, ал эми лимит бүткөндө systemd мажбурлап өлтүрүүгө өтөт. Маанини колдонмонун чыныгы төгүү жүрүм-туруму боюнча тандаңыз жана лимит иштегенде эмне жоголушу мүмкүн экенин жазып коюңуз. Машина тезирээк өчүшү керек деп тандалган сан — башка ат менен аталган маалымат жоготуу жөндөөсү.

Токтотуу дагы эле жай болсо, юнитти, анын туунду процесстерин, журнал аралыгын жана таймаут жыйынтыгын жазып алыңыз. Бардык таймауттарды кыскартуу же кеңири өлтүрүүгө умтулуу — таза токтотуулардын кийинки жүктөөдө бузулган абалга айлануу жолу ушул.

Ээси аркылуу ажыратыңыз, анан үч учурду сынаңыз

Керектөөчүлөр токтогондон кийин, туннелге ээ менеджерден ажыратууну сураңыз: systemd инстанциясы, NetworkManager активдүү туташуусу же жеткирүүчүнүн кызматы. Байланышсыз OpenVPN процессин өлтүрүү маршрутту берген сессияны сөзсүз жок кылбайт, ал эми кайра иштетүү саясаты бар прокси сиз жолду бузуп жатканда сурамды кайра түзүшү мүмкүн. Бул саясатты баштаардан мурун пландалган токтотуу менен шайкештештириңиз.

Кадимки токтотууну, активдүү сурамы бар токтотууну жана туннел биринчи иштебей калган токтотууну сынаңыз. Мөөнөтү бар кайталануучу ырааттуулук бир жолу гана иштеген тез өчүрүүдөн артык.

Тектеш макалалар