nordvpn ütleb, et deemon pole kättesaadav: socket, grupp või unit?
Tunnel võib täiesti korras olla; CLI lihtsalt kaotas oma socketi nordvpnd juurde. Liikuge käsust uniti juurde, siis socketi õigusteni, ja peatuge esimese tõrke juures.
nordvpn-i käivitamine ja teade kättesaamatu deemoniga on kitsas kaebus, mis tuleb tavaliselt siis, kui olete juba hiljaks jäänud. See ei ütle midagi selle kohta, kas tunnel töötab, sest CLI on ainult esiots: see räägib taustaprotsessiga Unix-socketi kaudu ja teade tähendab, et seda vestlust ei toimunud. Liikuge käsust väljapoole ja peatuge esimese asja juures, mis osutub valeaks.
Alustage sealt, kus viga ilmub
Kaasatud on kaks protsessi ja just nende segamine teeb selle mõistatuslikuks. Deemon omab tunnelit ja kuulab socketil asukohas /run/nordvpn/. Käsk, mille te kirjutasite, ühendub selle socketiga, selle asemel et ise liideseid puutuda.
Kui socket puudub või keeldub ühendusest, ei ole CLI-l kelleltki küsida, seega teatab see sama kaebuse kasutaja-deemoni või süsteemi-deemoni variandi. Üks neist variantidest nimetab tee otse, ja see on kogu vestluse kõige kasulikum lause.
Kontrollige unitit enne kõike muud
Küsige teenusehaldurilt, kas deemon töötab, ja kui ei, käivitage ning lubage see ühe sammuga:
systemctl status nordvpnd
sudo systemctl enable --now nordvpnd
nordvpn version
Kui unit on olemas, kuid mitteaktiivne, käivitab enable --now selle ja korraldab ka järgmise alglaadimise. Kui unitit pole, ei ole pakett see, mida te eeldate, ja paigaldatud nimi loeb rohkem kui märkmetes olev nimi. See kõlab pedantse eristusena, kuni kulutate kakskümmend minutit teenuse lubamisele, mida selle sildi all kunagi paigaldatud ei olnud. Lugege, mis on olemas, ja tegutsege selle järgi.
Unitifailide loetlemine lahendab selle ühe käsuga ja seda tasub teha enne, kui paigalduse kohta midagi järeldate:
systemctl list-unit-files 'nordvpn*'
service --status-all
Väljaanded on teenust tarninud rohkem kui ühe uniti nime all, seega ehitus, mis kasutab nordvpn asemel nordvpnd, toodab selle vea täpse koopia, samal ajal kui terve teenus töötab kohe kõrval.
Socket ja selle grupp otsustavad juurdepääsu
Isegi töötava deemoniga võidakse ühendus õiguste tõttu tagasi lükata. Paigaldaja loob grupi nordvpn ja socket kuulub vastavalt, seega väljaspool seda gruppi olev kasutaja lükatakse tagasi, samal ajal kui teenus on täiesti terve.
sudo usermod -aG nordvpn "$USER"
newgrp nordvpn
Grupi liikmelisus loetakse sessiooni alguses, mistõttu tundub muudatus selles terminalis, kus te selle tegite, mitte toimivat. Vaja on uut sisselogimiskesta või newgrp enne, kui jooksev sessioon uut gruppi näeb. Katsetage uues kestas, mitte selles, mis käsu just käivitas. Muidu järeldate, et parandus ebaõnnestus, kuigi see on lihtsalt veel rakendamata.
Socketi enda omand on selle kontrolli teine pool. Võrrelge socketil olevat gruppi gruppidega, mida teatab CLI-d käivitav kest, ja õiguste küsimus on vastatud ühe sammuga, mitte ümberpaigaldamisega:
ls -l /run/nordvpn
id
Elav protsess ei ole tõestus õigest socketist. Teise halduri käivitatud deemon või vana pakett, mis sidus teisiti nimetatud socketi, teatavad samamoodi. Kataloogiloend eristab neid juhtumeid ühe reaga, seepärast on see ümberpaigaldamisest parem.
Kasutajapõhine protsess vanemal pakendil
Mõned pakendid käivitavad sisselogitud kasutaja kontekstis teise protsessi, mida töölauaintegratsioon loodab leida. Kui süsteemi algskript käivitab selle ilma sellesse kontosse laskumata, otsib CLI deemonit, mida ükski sessioon ei oma.
Ilma systemd-ta init-is jagab dokumenteeritud lahendus rollid: süsteemiteenus töötab ühe nime all ja kasutajapoolne protsess sihtkontol käsuga chpst -u <user>. Kontrollige, millist lahendust teie paigaldus tegelikult kasutab, enne kui lisate käivituskripti, mis eeldab teist.
Kuidas teada, et olete valmis
Tavaline päästik on uuendus, sest uus binaarfail ootab teenuse olekut, mida vana kunagi ei jätnud. Peatamine, uuesti lubamine ja käivitamine selles järjekorras puhastab selle:
sudo systemctl stop nordvpnd
sudo systemctl enable --now nordvpnd
sudo systemctl start nordvpnd
nordvpn version
Viimane käsk on vastuvõtutest. Trükitud versioon tähendab, et socket vastab, mis viib iga järelejäänud rikke sisselogimise, plaani või ühenduvuse valdkonda ja sellest artiklist välja. Kui see vastab, lõpetage siin lugemine ja minge vaadake hoopis kontot.
Kui socket on endiselt puudu, lugege uniti logiraamatut, et näha, miks see lõppes, seejärel kontrollige, et /run/nordvpn on olemas ja et teenusekonto saab sinna kirjutada. Protsess, mis tõuseb ja kohe sureb, märgib oma põhjuse sellesse logiraamatusse, ja üht rida on kiirem lugeda kui ümberpaigaldust teha.