VPN klijent se pokreće iz menija aplikacija, tunel se povezuje, a ikona se nikada ne pojavi nakon prijave na jednom računaru, dok se isti paket ponaša ispravno na drugom. Tri zapažanja se stapaju u jednu žalbu: da li se program pokrenuo, da li je njegovo sučelje vidljivo i da li je tunel aktivan. Pokretačem upravlja unos radne površine s ključevima za filtriranje, a taj unos nema nikakve veze s VPN protokolom. Pređite priručnik redom i zaustavite se kada se jedno od tih troje jasno izdvoji.

Tri odvojene činjenice: pokretanje, ikona, tunel

Unos radne površine pokreće program. On ne može instalirati implementaciju sistemske trake i ne može učiniti da se indikator pojavi na panelu koji ne podržava protokol koji aplikacija koristi. Ako proces već radi, pitanje pokretanja je riješeno i umjesto toga gledate problem integracije.

Tunel je opet treća činjenica. Ikona koja nedostaje nije dokaz da je veza prekinuta, a ubijanje i ponovno pokretanje klijenta da bi se ikona “popravila” jeste način na koji se ispravan tunel prekida bez razloga. Korisnici prijavljuju ikonu koja nedostaje i pokvaren tunel u istoj rečenici, i upravo zato te dvije stvari treba razdvojiti na papiru.

Razdvojite ih prije nego što bilo šta promijenite. Provjerite postoji li proces, zatim podržava li panel indikator, a zatim izvještava li sučelje o vezi. Svaki odgovor upućuje na drugi sloj i drugog vlasnika.

Pronađite unos koji sesija zaista čita

Unosi za automatsko pokretanje žive u korisničkom direktoriju i sistemskom direktoriju, a kada se imena datoteka poklapaju, pobjeđuje korisnička kopija. Čitanje pogrešnog unosa najčešći je razlog zašto promjena izgleda bez učinka. Izlistajte oba direktorija prije nego što bilo šta uredite i zabilježite koju će datoteku sesija zaista učitati.

ls -l ~/.config/autostart/ /etc/xdg/autostart/
echo "$XDG_CURRENT_DESKTOP"
grep -H -E '^(OnlyShowIn|NotShowIn|TryExec|Hidden|Exec)=' ~/.config/autostart/*.desktop /etc/xdg/autostart/*.desktop

Varijabla okruženja ispisuje naziv sesije s kojim se upoređuju ključevi za filtriranje, a to je obično lista razdvojena dvotačkama. Uporedite je doslovno s vrijednostima u unosu, jer su ti nazivi detalji konfiguracije osjetljivi na velika i mala slova, a ne opis sesije. Vrijednost GNOME ne odgovara gnome, a nastala tišina nema pridruženu poruku o grešci. Ispišite je umjesto da je pretpostavljate.

Ako isto ime datoteke postoji u oba direktorija, važna je korisnička kopija. Uređivanje sistemske datoteke i pitanje zašto se ništa nije promijenilo vrlo je čest izgubljen sat.

Pročitajte ključeve za filtriranje, redom

Ilustrativni unos ispod prikazuje ključeve koji odlučuju hoće li sesija pokrenuti program. To je fragment, a ne potpuni pokretač, i vrijednosti pripadaju izmišljenoj putanji.

[Desktop Entry]
Type=Application
Name=Example VPN
Exec=/opt/example-vpn/client --minimized
TryExec=/opt/example-vpn/client
OnlyShowIn=GNOME;

OnlyShowIn ograničava unos na navedena okruženja, a NotShowIn isključuje navedena. Specifikacija ne definira korisno ponašanje kada se oba pojave u jednom unosu, zato datoteku koja sadrži oba tretirajte kao defekt, a ne kao pametnu kombinaciju. Uklonite ključ koji vam ne treba umjesto da dodajete drugi i nadate se pravilu prioriteta.

TryExec pita postoji li izvršna datoteka prije nego što je sesija pokrene. Zato putanja zaostala od starije instalacije potiskuje automatsko pokretanje iako novi paket radi kada se pokrene iz menija, a taj kvar izgleda točno kao filter radne površine.

Nadjačajte na korisničkom nivou, ne na sistemskom

Kada je filter zaista pogrešan za ovaj računar, kopirajte sistemski unos u korisnički direktorij i promijenite kopiju. Prema pravilima automatskog pokretanja XDG, korisnički unos s istim imenom ima prednost, a Hidden=true onemogućuje unos bez brisanja sistemske datoteke.

mkdir -p ~/.config/autostart
cp /etc/xdg/autostart/example-vpn.desktop ~/.config/autostart/
sed -i '/^OnlyShowIn=/d' ~/.config/autostart/example-vpn.desktop
desktop-file-validate ~/.config/autostart/example-vpn.desktop

Provjerite rezultat prije odjave, jer se neispravan unos tiho zanemaruje i sljedeći test vam ništa ne govori. Ponovna instalacija paketa neće ukloniti vaše nadjačavanje, što je poanta i ujedno razlog da zabilježite da postoji. Zapišite putanju datoteke u tiketu kako bi sljedeća osoba pronašla nadjačavanje umjesto da ga iznova izvodi.

Preferirajte ovo umjesto uređivanja zajedničkih sistemskih pokretača, koje mijenja ponašanje za svakog korisnika na računaru i nije podložno istoj vrsti pregleda. Nadjačavanje na korisničkom nivou vidljivo je na jednom mjestu, povratno brisanjem jedne datoteke i lako objašnjivo u tiketu. Sistemska datoteka ostaje onakva kakvom ju je dobavljač isporučio, pa ažuriranje paketa ne poništava tiho vaše zaključivanje.

Potvrdite pokretanje bez diranja tunela

Odjavite se i ponovo prijavite, zatim potvrdite da proces postoji prije nego što pogledate panel. Uspješno pokretanje i vidljiva ikona dva su različita rezultata, i samo drugi zahtijeva rad na integraciji s radnom površinom. Miješanje tih dvaju šalje vas da ponovo instalirate paket koji je cijelo vrijeme radio.

pgrep -af example-vpn
systemctl --user status example-vpn.service
journalctl --user -b --no-pager | grep -i example-vpn | tail -20

Ako procesa nema, ponovo pročitajte unos radi preostalog filtera ili zastarjele TryExec putanje. Ako je prisutan, pokretač je radio i ikona koja nedostaje odvojen je problem s podrškom za indikator na panelu, a ne s unosom koji ste upravo uredili.

Zabilježite tri zapažanja u tiketu: pokrenuto, vidljivo, povezano. Taj zapis sprječava sljedeću osobu da ponovi istu trostruku zbrku i pokazuje kojem sloju još treba rada.

Povezani članci