Að keyra nordvpn og fá skilaboð um óaðgengilegan daemon er þröng kvörtun sem kemur venjulega þegar þú ert þegar farinn að dragast aftur úr. Hún segir ekkert um hvort göngin virki, því CLI er aðeins framendi: hann talar við bakgrunnsferli um Unix-socket, og skilaboðin þýða að þetta samtal hafi ekki átt sér stað. Gakktu út frá skipuninni og staldraðu við fyrsta hlutinn sem reynist rangur.

Byrjaðu þar sem villan birtist

Tvö ferli koma við sögu, og rugla þau saman er það sem gerir þetta dulráðið. Daemoninn á göngin og hlustar á socket undir /run/nordvpn/. Skipunin sem þú skrifaðir tengist þeim socket í stað þess að snerta viðmótin sjálf.

Þegar socket vantar eða neitar tengingu hefur CLI engan til að spyrja, svo hann tilkynnir „notanda-daemon“ eða „kerfis-daemon“ útgáfuna af sömu kvörtun. Ein þessara útgáfa nefnir slóðina beint, og það er gagnlegasta setningin í öllu samtalinu.

Athugaðu unit fyrst af öllu

Spurðu þjónustustjórann hvort daemoninn sé í gangi, og ef ekki skaltu ræsa og virkja hann í einu skrefi:

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

Ef unit er til en óvirkt ræsir enable --now það og sér um næstu ræsingu á sama tíma. Ef unit er ekki til er pakkinn ekki sá sem þú gerir ráð fyrir, og uppsetta nafnið skiptir meira máli en nafnið í minnispunktunum þínum. Þetta hljómar eins og smámunasamur greinarmunur þangað til þú eyðir tuttugu mínútum í að virkja þjónustu sem var aldrei sett upp undir því merki. Lestu það sem er til og breyttu samkvæmt því.

Upptalning unit-skjalanna leysir þetta með einni skipun, og það er þess virði áður en þú ályktar nokkuð um uppsetninguna:

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

Útgáfur hafa sent þjónustuna undir fleiri en einu unit-nafni, svo build sem notar nordvpn í stað nordvpnd framleiðir fullkomið afrit af þessari villu á meðan heilbrigð þjónusta gengur rétt við hliðina.

Socketið og hópurinn ákvarða aðgang

Jafnvel með daemoninn í gangi er hægt að hafna tengingunni vegna heimilda. Uppsetningarforritið býr til hóp nordvpn, og socketið er í eigu í samræmi við það, svo notanda utan þess hóps er hafnað á meðan þjónustan er fullkomlega heilbrigð.

sudo usermod -aG nordvpn "$USER"
newgrp nordvpn

Hópmeðlimir eru lesnir þegar lota hefst, þess vegna virðist breytingin ekki virka í skjáheiminum þar sem þú gerðir hana. Nýr innskráningarskel eða newgrp þarf til áður en lotan sem er í gangi sér nýja hópinn. Prófaðu í nýjum skel, ekki í þeim sem rannskipunina rétt í þessu. Annars muntu álykta að lagfæringin hafi mistekist þegar hún hefur einfaldlega ekki verið notuð enn.

Eignarhald á socketinu sjálfu er seinni helmingur þeirrar athugunar. Berðu saman hópinn á socketinu við hópana sem skelin sem keyrir CLI tilkynnir, og heimildarspurningunni er svarað í einu skrefi í stað enduruppsetningar:

ls -l /run/nordvpn
id

Lifandi ferli er ekki sönnun fyrir réttu socketi. Daemon sem annar stjóri ræsti, eða gamall pakki sem bindi socket með öðru nafni, tilkynna á sama hátt. Möppulistinn greinir þessi tilvik á einni línu, þess vegna er hann betri en enduruppsetning.

Ferlið fyrir hvern notanda í eldri pökkun

Sumar pökkun keyra annað ferli í samhengi innskráðs notanda, sem skjáborðssamþættingin væntir að finna. Ef kerfis-init skrifta ræsir það án að fara niður í þann reikning leitar CLI að daemon sem engin lota á.

Á init án systemd skiptir skjalfesta fyrirkomulagið hlutverkum: kerfisþjónustan gengur undir einu nafni og ferlið á notendahlið undir markreikningnum með chpst -u <user>. Athugaðu hvaða fyrirkomulag uppsetningin þín notar í raun áður en þú bætir við ræsiskriftu sem gerir ráð fyrir hinu.

Hvernig þú veist að þú ert búinn

Uppfærsla er venjulega kveikjan, því nýja tvíundarforritið væntir þjónustustöðu sem það gamla skildi aldrei eftir. Stöðvun, endurvirkjun og ræsing í þeirri röð hreinsar það:

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

Síðasta skipunin er samþykktarprófið. Prentuð útgáfa þýðir að socketið svarar, sem færir hverja göll sem eftir er í svið innskráningar, áskriftar eða tengingar og út úr þessari grein. Ef það svarar skaltu hætta að lesa hér og fara í staðinn að skoða reikninginn.

Ef socketið vantar enn skaltu lesa unit-journalið til að sjá hvers vegna það hætti, og athugaðu þá að /run/nordvpn sé til og að þjónustureikningurinn geti skrifað þar. Ferli sem rís og deyr undir eins skráir ástæðu sína í það journal, og ein lína er fljótlegri að lesa en enduruppsetning er að framkvæma.

Tengdir greinar