Ekzekutimi i nordvpn dhe marrja e një mesazhi për një daemon të paarritshëm është një ankesë e ngushtë që zakonisht vjen kur jeni tashmë me vonesë. Ai nuk thotë asgjë për atë nëse tuneli funksionon, sepse CLI është vetëm pjesa e përparme: flet me një proces në sfond përmes një socket Unix, dhe mesazhi do të thotë që ajo bisedë nuk ndodhi. Ecni nga komanda drejt jashtë dhe ndaloni te gjëja e parë që rezulton e pavërtetë.

Filloni aty ku shfaqet gabimi

Këtu përfshihen dy procese, dhe ngatërrimi i tyre është ajo që e bën këtë misterioze. Daemon-i zotëron tunelin dhe dëgjon në një socket nën /run/nordvpn/. Komanda që shtypët lidhet me atë socket në vend që të prekë vetë ndërfaqet.

Kur socket mungon ose refuzon lidhjen, CLI nuk ka kë të pyesë, kështu që raporton variantin «daemon i përdoruesit» ose «daemon i sistemit» të së njëjtës ankesë. Njëri prej atyre varianteve e emërton shtegun drejtpërdrejt, dhe kjo është fjalia më e dobishme në të gjithë shkëmbimin.

Kontrolloni unit-in para çdo gjëje tjetër

Pyetni menaxherin e shërbimit nëse daemon-i është duke punuar, dhe nëse jo, nisni dhe aktivizoni atë në një hap:

systemctl status nordvpnd
sudo systemctl enable --now nordvpnd
nordvpn version

Nëse unit-i ekziston por është joaktiv, enable --now e nis dhe përgatit nisjen tjetër në të njëjtën kohë. Nëse unit-i nuk ekziston, paketa nuk është ajo që supozoni, dhe emri i instaluar ka më shumë rëndësi se emri në shënimet tuaja. Kjo tingëllon si një dallim pedant derisa të kaloni njëzet minuta duke aktivizuar një shërbim që nuk është instaluar kurrë nën atë etiketë. Lexoni çfarë ekziston dhe veproni sipas tij.

Renditja e skedarëve të unit-it e zgjidh këtë me një komandë të vetme, dhe ia vlen të bëhet përpara se të nxirrni ndonjë përfundim për instalimin:

systemctl list-unit-files 'nordvpn*'
service --status-all

Publikimet e kanë dërguar shërbimin nën më shumë se një emër unit-i, kështu që një build që përdor nordvpn në vend të nordvpnd do të prodhojë një kopje të përsosur të këtij gabimi ndërsa një shërbim i shëndoshë punon pikërisht pranë.

Socket-i dhe grupi i tij vendosin aksesin

Edhe me daemon-in duke punuar, lidhja mund të refuzohet për shkak të lejeve. Instaluesi krijon një grup nordvpn, dhe socket-i zotërohet në përputhje me të, kështu që një përdorues jashtë atij grupi refuzohet ndërsa shërbimi është plotësisht i shëndoshë.

sudo usermod -aG nordvpn "$USER"
newgrp nordvpn

Anëtarësia në grup lexohet kur fillon një sesion, dhe për këtë arsye ndryshimi duket se nuk funksionon në terminalin ku e bëtë. Nevojitet një shell i ri hyrjeje ose newgrp përpara se sesioni në punë të shohë grupin e ri. Testoni në një shell të ri, jo në atë që sapo ekzekutoi komandën. Përndryshe do të arrini në përfundimin se rregullimi dështoi kur thjesht nuk është zbatuar ende.

Zotërimi i vetë socket-it është gjysma e dytë e atij kontrolli. Krahasoni grupin në socket me grupet që raporton shell-i që ekzekuton CLI, dhe pyetja e lejeve përgjigjet në një hap në vend të riinstalimit:

ls -l /run/nordvpn
id

Një proces i gjallë nuk është provë e socket-it të saktë. Një daemon i nisur nga një menaxher tjetër, ose një paketë e vjetër që lidhi një socket me emër tjetër, raportojnë në të njëjtën mënyrë. Lista e drejtorisë i dallon ato raste në një rresht, dhe për këtë arsye ia kalon riinstalimit.

Procesi për përdorues në paketimin më të vjetër

Disa paketime ekzekutojnë një proces të dytë në kontekstin e përdoruesit të identifikuar, të cilin integrimi i desktopit pret ta gjejë. Nëse një skript init i sistemit e nis pa zbritur në atë llogari, CLI kërkon një daemon që asnjë sesion nuk e zotëron.

Në një init pa systemd, rregullimi i dokumentuar i ndan rolet: shërbimi i sistemit punon nën një emër dhe procesi në anën e përdoruesit nën llogarinë e synuar me chpst -u <user>. Kontrolloni cilën rregullim përdor vërtet instalimi juaj përpara se të shtoni një skript nisjeje që supozon tjetrin.

Si të dini se keni mbaruar

Shkaku i zakonshëm është përditësimi, sepse binari i ri pret një gjendje shërbimi që ai i vjetri nuk e la kurrë. Ndalimi, riaktivizimi dhe nisja në atë rend e pastrojnë atë:

sudo systemctl stop nordvpnd
sudo systemctl enable --now nordvpnd
sudo systemctl start nordvpnd
nordvpn version

Komanda e fundit është testi i pranimit. Një version i printuar do të thotë që socket-i përgjigjet, gjë që e zhvendos çdo defekt të mbetur në territorin e hyrjes, planit ose lidhjes dhe e nxjerr nga ky artikull. Nëse përgjigjet, ndaloni së lexuari këtu dhe shkoni të shikoni llogarinë.

Nëse socket-i mungon ende, lexoni regjistrin e unit-it për të parë pse u ndal, më pas kontrolloni që /run/nordvpn ekziston dhe që llogaria e shërbimit mund të shkruajë atje. Një proces që ngrihet dhe vdes menjëherë e regjistron arsyen e tij në atë regjistër, dhe një rresht lexohet më shpejt sesa kryhet një riinstalim.

Artikuj të ngjashëm