systemctl-ek dio systemd ez dela PID 1: eta orain zer?
PID 1i buruzko mezua inguruneaz ari da, ez OpenVPN-az. Egiaztatu zer dabilen PID 1 gisa, gaitu systemd onartuta dagoen lekuan, eta irakurri benetako errorea geroago.
Hau exekutatzean: systemctl start openvpn-client@office, eta sistemak systemd-rekin abiarazi ez zela dioen mezua jasotzean, zerbitzuaren hutsegitea dirudi. Ez da inondik inora zerbitzuaren hutsegitea: deitu duzun systemctl horrek ezin du hitz egiteko kudeatzailerik aurkitu, beraz OpenVPN-i buruz ezer ez zen aztertu. sudo ez du kudeatzailerik sortzen, eta unitate-fitxategi bat instalatzeak ere ez du sortzen. Komandoa eta makina bi mundu ezberdinetatik datoz, eta errorea hori agerian geratu zen leku bakarra da.
Hasi galdetuz zein prozesuk duen PID 1 komandoa exekutatzen den tokian, erantzun horrek erabakitzen baitu unitateak existitzen diren ala ez.
Erroreak ingurunea izendatzen du, ez OpenVPN
systemctl bezero bat da, ez kudeatzaile bat. Sistema-kudeatzailera socket baten bidez konektatzen da, eta beste aldean kudeatzailerik ez dagoenean jendeak foroetan itsasten duen mezua inprimatzen du. ps -p 1 -o pid=,comm= erakusten du zer dabilen benetan PID 1 gisa, eta erantzuna sarritan shell bat, init bilgarri bat edo edukiontziaren sarrera-puntua izan ohi da. Egoera horretan unitate-fitxategi bat erabat baliozkoa izan daiteke eta, hala ere, inoiz ez irakurri. Komandoa root gisa errepikatzeak bezeroaren kredentzialak baino ez ditu aldatzen.
Irakurri mezu osoa lehenengo lerroaren aurretik. Kudeatzailearen beraren errore batek, hala nola unitate falta edo baldintza huts egiteak, hara iritsi zarela esan nahi du; errore honek, ordea, ez zarela iritsi.
WSL: systemd gaitzea konfigurazio-aldaketa da
WSL-k systemd onarpena lortu zuen bertsio berriagoetan, baina funtzioa banaketaz banaketa gaitzen da eta instalatutako WSL bertsioak onartzen duen lekuan bakarrik. wsl --version Windows aldean duzuna erakusten du, eta banaketaren /etc/wsl.conf fitxategiak [boot] atala darama, honekin: systemd=true. Editatu fitxategi hori jada dauden atalak kendu gabe, eta gero berrabiarazi WSL instantzia aldaketa indarrean sar dadin. wsl --shutdown exekutatzen ari diren banaketa guztiak gelditzen ditu, beraz, gorde lana lehenago.
Berriro irekita, berretsi kudeatzailea OpenVPN unitatea ukitu aurretik: ps -p 1 -o comm= erakutsi beharko luke systemd. systemd gaitzeak ez du profilik, kredentzialik ezta instantzia-izenik ematen, beraz hurrengo errorea horietako bati buruzkoa izango da, ez PID 1i buruzkoa.
Edukiontziek beren sarrera-puntua exekutatzen dute, ez unitateak
Edukiontzi arrunt batek bere sarrera-puntuak edo komandoak zehazten duena abiarazten du, eta ez da systemd-rekin abiarazitako makina bat, edozein pakete instalatu arren. systemctl irudiari gehitzeak konektatzeko ezer ez duen bezero bat ematen dizu. Community OpenVPN-rako onartutako eredua lehen planoan dabilen prozesu bat izan ohi da, openvpn --config /path/to/client.conf, sarrera-puntuak abiarazia eta kanpotik gainbegiratua. Jabe horrek abiaraztea, seinaleak eta itzaltzea kudeatzen ditu, eta tunela kudeatzen duen gauza bakarra izan beharko luke.
Ez abiarazi inoiz kopia interaktiborik tunel hori jada kudeatzen duen sarrera-puntu baten ondoan, zeren bi prozesuk gailuaren eta bideen alde borrokatuko dute. Edukiontziaren barruko init prozesu minimo batek seme-alabak biltzen eta seinaleak birbidaltzen ditu; ez du irudia unitateak dituen ostalari bihurtzen.
Hedapen batek benetan systemd behar badu edukiontzi baten barruan, horretarako berariaz diseinatutako irudi bat behar du, ez gehitutako pribilegio gehigarriak, harik eta systemctl kexatzeari utzi arte.
Irakurri hurrengo errorea kudeatzailea dagoenean
Benetako kudeatzaile batek zerbitzua abiarazten duenean, errore erabilgarriak hasten dira. Gailu-baimenen hutsegitea, konfigurazioaren analisi-errorea, falta den kredentziala eta iristezina den parekidea lau arazo desberdin dira, eta PID 1i buruzko mezuak ez zituen inoiz probatu. Irakurri itzazu unitateak sortu zituen ordenan, hau erabiliz: journalctl -u openvpn-client@office -n 50 systemd duen ostalari batean, edo bezeroa lehen planoan exekutatuz kudeatzailerik ez dagoen lekuan. Lehen planoan exekutatzea da profilak berak funtzionatzen duela baieztatzeko modurik azkarrena ere.
Eduki bi inguruneak bereizita zure oharretan: tunela exekutatzen duen ostalaria eta komandoak idazten dituzun tokia.