Usakinishaji unakamilika, brew inasema openvpn iko, na shell hujibu command not found. Faili ya binary ipo, inakaa tu katika saraka ambayo shell haikuwahi kuambiwa. Homebrew huunganisha binary za mtindo wa daemon kwenye saraka ya sbin ya kiambishi awali, na PATH ya kawaida ya macOS kwa kawaida hujumuisha saraka ya bin na si ile ya sbin. Hakuna kilichovunjika, na hakuna usakinishaji upya utakaobadilisha hilo.

Ukaguzi nne huthibitisha utaratibu kabla ya kuhariri faili yoyote ya shell.

Fomula husakinisha nini kwa kweli

Fomula ya openvpn hujenga daemon ya mstari wa amri, kwa hiyo faili yake ya utekelezaji huangukia chini ya sbin badala ya bin. Kisha Homebrew huunganisha binary hiyo kwenye saraka ya sbin ya kiambishi awali, na ndiyo sababu "$(brew --prefix)/sbin/openvpn" --version hufanya kazi wakati wito mtupu haufanyi kazi. Saraka ya Cellar yenye toleo pia huhifadhi nakala, na kuweka njia hiyo katika faili ya kuanzisha ndiyo njia ambayo mashine hubaki imefungwa kwenye ujenzi wa zamani baada ya uboreshaji.

Kiungo cha kiambishi awali ndiyo njia thabiti. Njia ya Cellar ni maelezo ya utekelezaji yenye namba ya toleo ndani yake.

Uliza Homebrew, si mfumo wa faili

Anza na msimamizi wa vifurushi, kwa sababu anajua usakinishaji upi unamiliki fomula: command -v brew, brew --prefix, brew list --versions openvpn, brew --prefix openvpn. Ikiwa wa mwisho huchapisha njia, fomula ipo na swali linahusu utatuzi pekee. Ikiwa hauchapishi chochote, shell inatafuta mahali pasipofaa kifurushi ambacho hakikuwahi kusakinishwa, na hilo ni tatizo lingine lenye suluhisho lingine.

Usakinishaji wa Homebrew mara mbili kwenye mashine moja ndipo hili linapokuwa muhimu zaidi: brew inayojibu si lazima iwe brew iliyosakinisha.

Kwa nini shell haiwezi kuona sbin

Shell ya kuingia hujenga PATH kutoka mipangilio ya kawaida ya mfumo pamoja na kila kitu ambacho faili zako za kuanzisha huongeza. Homebrew bin kwa kawaida huongezwa na Homebrew sbin kwa kawaida haiongezwi, kwa hiyo kila amri hufanya kazi isipokuwa daemon. command -v openvpn isiyorejesha chochote wakati njia yenye kiambishi awali inarejesha toleo ni utambuzi wote katika amri mbili. Thibitisha kuwa saraka kweli ina kiungo kwa ls -l "$(brew --prefix)/sbin/openvpn".

Kiungo kinachokosekana ni hitilafu tofauti na ingizo la PATH linalokosekana, na moja tu kati yao hutatuliwa kwa kuhariri faili ya shell.

Rekebisha njia mara moja, mahali pamoja

Kwa jaribio la haraka katika shell ya sasa, eval "$(brew shellenv)" huweka vigeu vya usakinishaji na kuweka saraka zote mbili mbele. Kwa mpangilio wa kudumu, weka mstari wa shellenv katika faili moja ya kuanzisha ambayo shell yako husoma kwa hali ya kuingia unayotumia, badala ya kutawanya mauzo nje katika faili za bash na zsh.

Kisha fungua terminal mpya na urudie swali la toleo, kwa sababu shell iliyohifadhiwa kwenye akiba huendelea kuripoti PATH ya zamani.

Tenganisha ugunduzi na huduma

Kupata binary si sawa na kuendesha huduma ya VPN. Kuanzisha openvpn kiotomatiki huongeza mahitaji ya wasifu, vitambulisho, haki na mzunguko wa maisha ambayo ugunduzi wa vifurushi haukuwahi kugusa. Tunnelblick pia huleta injini yake mwenyewe, kwa hiyo toleo ulilochapisha sasa hivi linaweza lisihusiane kabisa na toleo ambalo programu hutumia.

Rekodi faili gani ya utekelezaji ilizalisha matokeo ya toleo. Mstari huo mmoja huokoa saa wakati mwingine toleo mbili zisipokubaliana.

Makala zinazohusiana