Нешто стално покреће OpenVPN јединицу: пронађите извор
Деактивирање јединице није исто као уклањање њеног активирања. Прочитајте инстанцу, мапирање шаблона и обрнуте зависности пре него што избришете профил.
Инстанца OpenVPN се појављује при подизању под именом које не препознајете, и њено заустављање ради до следећег рестартовања. Тај образац значи да сте уклонили процес, али не и активирање. То су два различита објекта и само један од њих је видљив на екрану стања. Проналажење активирања захтева четири команде само за читање и једну одлуку.
Прво именујте тачну јединицу
Почните од имена јединице у journal-у, а не од имена датотеке профила. Инстанца се може звати openvpn@, openvpn-client@, openvpn-server@ или нешто специфично за дистрибуцију, а погађање имена води вас до погрешног шаблона. Излаз стања наводи јединицу која је стварно радила, и то је једино име које је овде важно. Копирајте га тачно, укључујући било који суфикс.
Следеће команде описују ту јединицу без промене било чега. systemctl show пријављује путању фрагмента, путању извора, стање датотеке јединице, евентуалне drop-in-ове и шта ју је активирало. list-dependencies --reverse показује које учитане јединице указују на њу. Обе су само за читање, зато их извршите пре него што направите теорију.
Замените уочено име свуда. Копирано примерно име најчешћи је начин да истражите погрешну услугу и даје самуверене одговоре о јединици која никада није радила.
Прочитајте шаблон да бисте сазнали име датотеке
Јединица инстанце је проширење шаблона, а шаблон одлучује коју конфигурациону датотеку чита. Линија команде која се завршава заменом специфичном за инстанцу разрешава се у име инстанце плус суфикс. Ако је суфикс .conf а инстанца се зове old, датотека је old.conf. Ако инстанцу назовете old.conf, исти шаблон тражи old.conf.conf.
Тај детаљ објашњава класу дупликата. Неко дода другу инстанцу под погрешним именом, прва наставља да ради, а домаћин завршава са два тунела и једним збуњујућим дневником.
Читајте ефективни шаблон, а не датотеку за коју се сећате да сте је уређивали. Drop-in може заменити линију команде, а при подизању ради управо замена.
Пратите како улази у трансакцију подизања
Три пута су уобичајена: wants веза са циља, захтев друге јединице или генерисана јединица из генератора пакета. Списак обрнутих зависности покрива прва два као учитане записе графа. Не покрива тајмер, hook или спољни захтев, зато је списак доказ, а не потпуна ревизија.
Генерисани излаз под /run/systemd/generator је производ, а не извор. Његово уређивање преживљава само до следећег генерисања, зато исправка примењена тамо изгледа успешна и затим се враћа.
Проверите документовани улаз пакета пре него што претпоставите одакле генератор чита. Недокументовано скенирање директоријума уобичајен је разлог зашто се јединица појављује без везе за активирање.
Уклоните активирање, не само процес
Ако је инстанца директно активирана и заиста застарела, systemctl disable --now је зауставља и уклања везу за подизање у једном кораку. Прво проверите да овај тунел није ваш једини административни пут до домаћина. Команда је пример животног циклуса, а не предлог да зауставите сваки VPN на машини. Извршите проверу пре команде, не после.
Две половине су раздвојиве и често се мешају. Деактивирање не зауставља услугу која ради, а заустављање не уклања активирање, зато делимична команда објашњава проблем који се враћа при подизању.
Деактивирана јединица ипак може бити покренута од друге јединице или изричитим захтевом. Када генератор поседује активирање, исправите његов улаз уместо да деактивирате његов излаз. Маскирање блокира више путева, али може покварити зависности, зато не замењује разумевање.
Проверите рестартовањем, а не екраном стања
Поново учитајте systemd ако су се дефиниције јединица или улази генератора променили, затим прегледајте настало стање. Поновно учитавање демона не гура нови профил у тунел који ради, зато су две провере одвојене. Закажите рестартовање и потврдите да инстанца остаје одсутна док жељени тунел још ради.
Задржите стари профил док се његово власништво не разуме, затим га уклоните кроз предвиђени поступак. Успех је одсутна јединица и радни пут приступа, а не неуспела јединица која недостаје на једном екрану.