OpenConnect kwenye macOS: kifurushi, kumbukumbu ya toleo au nakala ya git
Homebrew hutoa faili ya binary na skripti ya mtandao; mti wa chanzo hautoi yoyote hadi uyazalishe na uyafanyie kazi. Jua ni ipi muunganisho wako unatumia.
Njia tatu zinakupa mteja wa OpenConnect kwenye Mac, na zinaacha vitu tofauti kwenye diski. Fomula ya Homebrew inasakinisha faili ya binary iliyokompilwa na skripti ya mtandao inayoweka njia na DNS. Kumbukumbu ya toleo inakupa msimbo wa chanzo pamoja na mfumo wa ujenzi uliozalishwa. Nakala ya git inakupa msimbo wa chanzo bila huo. Kuchagua isiyofaa ndiyo sababu watu hukutana na configure inayokosekana dakika chache baada ya kuanza mafunzo.
Mashine mbili tofauti chini ya jina moja
Njia ya kifurushi ni amri moja, na ndiyo chaguo sahihi la msingi kwa yeyote ambaye kazi yake ni kuunganisha badala ya kuendeleza.
brew install openconnect
Kinachosakinisha ni muhimu zaidi kuliko amri. Unapata faili ya binary ya mteja, na pia unapata vpnc-script ambayo mteja anaita ili kupanga kiunganishi, njia na kitatuzi. Vyote viwili hufanya kazi kama jozi: faili ya binary humaliza kipindi cha TLS na kukabidhi kiunganishi kilichotokea kwa skripti, na skripti ndiyo sehemu inayojua jinsi mfumo huu wa uendeshaji unataka mtandao wake ubadilishwe.
Mgawanyiko huo unaeleza tabaka zima la ripoti zenye mkanganyiko. Mteja anayeunganisha, anaripoti mafanikio kisha anatuma trafiki kwenye njia isiyofaa huwa na tatizo la skripti, si la handaki, na kusakinisha tena fomula hurekebisha hilo kwa sababu tu skripti pia inasakinishwa tena. Angalia usaidizi wa sasa wa fomula kwa macOS na usanifu wa CPU kabla ya kupanga kwa msingi wake; Mac inayofanya shell kikamilifu inaweza kuwa bado haina kifurushi cha sasa kilichojengwa kwa ajili yake.
Njia ya chanzo hufanya nini kwa kweli
Kumbukumbu ya toleo huja na mfumo wa ujenzi uliozalishwa, kwa hiyo ./configure inayojulikana ipo tangu mwanzo. Nakala ya git haina, kwa sababu faili zilizozalishwa ni matokeo ya ujenzi na si vitu ambavyo mradi huhifadhi. Hiyo ndiyo sababu yote kwa nini ./autogen.sh inaonekana katika maelekezo ya nakala na si kumbukumbu za toleo.
./autogen.sh
./configure
make
make install
Kila mstari hufanya jambo maalum, na kujua ni upi ulioshindwa huokoa makisio mengi. Hatua ya autogen huendesha autotools ili kuzalisha configure. Hatua ya configure huchunguza kompaila, maktaba na vichwa vinavyohitajika na mteja, kisha huandika makefile zinazoakisi kilichopatikana. Hatua ya make hukompila. Hatua ya install hunakili matokeo mahali fulani kwenye njia yako.
Ni kwenye mstari huo wa mwisho ambapo ushauri mara nyingi hukosea. Usakinishaji si uthibitisho kwamba ujenzi ulifanya kazi, na kuuendesha katika folda yoyote ya upakuaji kwa ruhusa za juu ni njia nzuri ya kutawanya faili ambazo hutazikumbuka baadaye. Ikiwa configure inashindwa kwa sababu ya maktaba inayokosekana, matokeo yenye manufaa ni kosa la kwanza lililochapishwa, si mistari ishirini ya mwisho ya kumbukumbu.
Kipindi na usanidi wa mtandao ni tofauti
Tofauti hii huamua ikiwa muunganisho unachukua trafiki kweli. Kuanzisha kipindi cha TLS kunakupa kiunganishi upande wa mteja. Kutumia njia, anwani na vitatuzi vya DNS ni hatua ya pili inayofanywa kupitia skripti ya mtandao, na ujenzi uliozalisha faili ya binary bila skripti una nusu ya mteja.
Mgawanyiko huo huo unaeleza kwa nini mashine mbili zenye wateja sawa zina tabia tofauti: skripti hushauriana na usanidi wa mtandao wa mfumo, na usanidi huo unajumuisha kila kitu kingine kilichodai njia. Handaki iliyogawanywa inapotuma trafiki mahali panapotarajiwa, handaki inafanya kazi yake, na uamuzi wa uelekezaji ndio unaopaswa kuchunguzwa.
Kwa hiyo unapotafuta hitilafu, uliza tabaka gani limeshindwa. Kipindi ambacho hakiwezi kuanzishwa kamwe ni itifaki, cheti au vitambulisho. Kipindi kinachoanizishwa na hakipitishi chochote ni kiunganishi na skripti. Mteja aliyesakinishwa anayefanya kazi kutoka mtandao mmoja na si mwingine ni ufikikaji, na hakuna kiasi cha kujenga upya kinachobadilisha hilo.
Jua ni faili gani ya binary unayoiendesha
Ujenzi uliosakinishwa kwa mkono na faili ya binary iliyofungashwa zinaweza kuishi pamoja kwa amani, na ipi inayoendesha inategemea njia yako na si nia zako. Gundua hilo kabla ya kuripoti nambari ya toleo kwa mtu yeyote.
which -a openconnect
openconnect --version
brew list --versions openconnect
Amri ya kwanza huorodhesha kila nakala ambayo shell yako inaiona, kwa mpangilio ambayo ingeizijaribu. Ya pili inakuambia ipi ilijibu. Wakati hilo haliendani na unachotarajia, unaendesha ujenzi kutoka jaribio la zamani, na hakuna mabadiliko ya usanidi yatakayoihamisha.
Kusakinisha mteja si kuidhinisha lango
Faili ya binary inayofanya kazi haifanyi usambazaji uwe sambamba. Thibitisha itifaki ya lango, mtiririko wake wa uthibitishaji na hitaji lolote la kifaa kinachosimamiwa na watu wanaolimiliki, kwa sababu hayo ni ukweli wa sera na tabaka la programu ambayo ujenzi hauwezi kutoa.
Maelekezo ya ujenzi ya mradi yanashughulikia kwa undani zaidi mfululizo wa autotools na hitaji la skripti ya mtandao, na ndiyo ya kufuata badala ya chapisho la blogu lililozeeka kuliko toleo lako la macOS. Ikiwa lengo ni kuunganisha tu, chukua kifurushi, weka skripti, na uache kompaila nje.