Distributiviniz paketi silir, menyunuz öz girişini itirir, tunel isə növbəti yenidən yüklənmədən sonra yenə qalxır. Kommersiya VPN klienti paket meneceri heç vaxt izləmədiyi parçalar qoyur, buna görə təmiz silinmə təmiz maşın demək deyil. Həmin parçalardan dördü demək olar ki, hər xəyali bağlantını izah edir: vahid, bağlantı profili, imtiyazlı köməkçi və satıcı deposu. Hər hansı bir şeyi silməzdən əvvəl dördünü də oxuyun, sonra hər birini ona sahib olan komponent vasitəsilə çıxarın.

Silici proqramın heç vaxt qeyd etmədiyi şeylər

Paket meneceri yalnız özünün yazdığı faylları silir, başqa heç nəyi. Onun klientin işləmə vaxtı yaratdığı bağlantı profilinə, quraşdırmadan sonra aktivləşdirilmiş vahidə və ya yüksək hüquqlarla işləyərkən özünü qeydiyyata almış köməkçiyə dair heç bir qeydi yoxdur. Bunların hər biri fərqli alt sistemə aiddir və hər biri paketi bir və ya bir neçə yenidən yükləmə qədər yaşaya bilər. Bu boşluq tunelin sağlam qalmasını, onu yaradan proqramın isə getməsini izah edir.

Qalığın həmişə sahibi var: istər systemd, istər NetworkManager, istər depo konfiqurasiyası, istərsə də hər istifadəçi üçün avtostart girişi. Əvvəlcə sahibi tapmaq təmizliyin yarımkonfiqurasiya edilmiş maşına çevrilməsinin qarşısını alır. Faylları birbaşa silmək adətən sahib onları yenidən yaradanadək işləyir, buna görə aşağıdaki əmrlər sorğularla başlayır.

Dörd sahib, əvvəlcə yalnız oxu

Silməklə deyil, sorğularla başlayın və qaytarılan dəqiq adları qeyd edin. Satıcılar çox vaxt meta-paketin yanında versiyalı paket göndərir, buna görə bir məhsul iki adla görünə bilər. Hər iki siyahıda görünən ad iki sahibi olan tək məhsuldur və hər ikisi silinməlidir. Birinci dəst paketləri və vahidləri əhatə edir; qalıqların çoxu məhz orada görünür.

dpkg -l | grep -i acmevpn
systemctl list-unit-files | grep -i acmevpn
systemctl list-units --type=service --state=running | grep -i acmevpn

İkinci dəst təmizləmədən ən çox sağ çıxan iki komponenti əhatə edir: bağlantı profili və satıcı deposu. Adı deyil, UUID sütununu oxuyun, çünki təkrarlanan adlar adi haldır və silmə əmri identifikatoru gözləyir. Depo sətri bu gün onu silməsəniz belə oxumağa dəyər, çünki ölü satıcı hostu aylar sonra əlaqəsiz quraşdırmanı poza bilər. Siyahıların heç biri heç nəyi dəyişmir; onları ilk işə salmağın mənası da budur.

nmcli -f NAME,UUID,TYPE connection show
nmcli connection show --active
grep -ril acmevpn /etc/apt/sources.list.d/ /etc/apt/sources.list

Təmizləmədən sonra hələ sağ olan proses ya aktiv vahiddir, ya da başqa proqramın övladıdır. Artıq mövcud olmayan xidməti günahlandırmazdan əvvəl proses cədvəlini və onun valideyn zəncirini oxuyun. Hər istifadəçi üçün avtostart girişləri də eyni yoxlamaya ehtiyac duyur və onlar yalnız təzə giriş qabığında görünür, root sessiyasında deyil.

Bir-birini əvəz etməyən üç feli

Dayandırma cari işə salmanı bitirir, deaktivasiya yüklənmə vaxtı keçidlərini silir, maskalama isə vahidi /dev/null ünvanına yönəldir. Yalnız üçüncüsü həmçinin soket, taymer və ya asılılıq vasitəsilə aktivləşdirməni bloklayır və bu onu üçünün ən güclüsü edir. Maşınla nə edəcəyinizə hələ qərar verərkən sıra vacibdir. Maskalama bu qərar zamanı düzgün vəziyyətdir, çünki növbəti yüklənmədə səssizcə başlamaq əvəzinə uca səslə uğursuz olur.

Yenidən quraşdırmadan əvvəl maskanı götürün, əks halda yeni paket heç kimin yazmadığı səbəbdən xarab görünəcək. Eyni ehtiyat qablaşdırma fərqlərinə də aiddir: bir quruluş dayandırıla bilən vahid gətirir, digəri isə heç bir xidmət qoymur. Fel seçməzdən əvvəl hansı qablaşdırmaya sahib olduğunuzu müəyyənləşdirin, çünki təmizləmə yolu onlar arasında fərqlənir.

Yanlış profili silməyin yolu joker işarələrdir

Profili qeyd etdiyiniz UUID ilə silin, heç vaxt joker işarə ilə silməyin. Keyfile qovluğu maşındaki bütün Wi-Fi və Ethernet profillərini də saxlayır, buna görə geniş uyğunluq hələ ehtiyac duyduğunuz şeyləri silir. Əllə silinmiş keyfile hansı siyasətə aiddirsə, onun tərəfindən yenidən yaradıla bilər və bu, silinməni səmərəsiz göstərir.

nmcli connection delete uuid <uuid>

Əgər o profil hələ sahib olduğunuz yeganə nüsxədirsə, əvvəlcə şlüzü və şəxsiyyəti ixrac edin, çünki lokal silmə serverdə heç nəyi ləğv etmir. Depo də eyni qaydaya tabedir: tək satıcı faylını və onun açar halqasını çıxarın, sonra paket siyahılarını yeniləyin və həqiqətən istədiyiniz quraşdırmanı yenidən cəhd edin. Köhnə üçüncü tərəf girişini yerində saxlamaq köhnə asılılığı sabitləyə və ya ümumiyyətlə cavab verə bilməz. Hər iki çıxarma kiçikdir və hər hansı biri saxladığınız nüsxədən geri qaytarıla bilər.

Yenidən yüklənmədən sonra hələ nə işləyir

Qələbə elan etməzdən əvvəl yenidən yükləyin, sonra tətbiqi deyil, artefaktları axtarın. Tunel interfeysi, köhnə bölünmüş marşrut və köhnə klientin qoyduğu hər bağlantı üzrə DNS hər biri öz əmrini tələb edir. Hər üçü bütün paketləri uğurla silmiş təmizləmədən sonra da yaşaya bilər.

ip link
ip route
resolvectl status

Təzə giriş qabığı da açın, çünki avtostart girişi yalnız orada işə düşür. Sonra /etc/NetworkManager/dispatcher.d/ faylını oxuyun: interfeys vəziyyətini dəyişdikcə bağlantını qaldıran skript orada ola bilər və bu, arxasında xidmət olmayan tunelin qayıtmasını izah edir. Əgər nəsə hələ də xaricə zəng edirsə, simptom dayanana qədər fayl silmək əvəzinə prosesi valideyninə qədər izləyin. Maşını təmizləmək və hesabı ləğv etmək ayrı işlər olaraq qalır və yenidən yüklənmə sakit görünəndə onlardan yalnız biri bitmiş olur.

Əlaqəli məqalələr