Mae Homebrew yn rhoi deuaidd OpenVPN yn sbin, nid yn eich PATH
Mae'r fformiwla'n gosod daemon OpenVPN o dan sbin, nad yw PATH rhagosodedig macOS yn ei gynnwys. Cadarnhewch y rhagddodiad, yna trwsiwch y datrysiad mewn un ffeil.
Mae'r gosodiad yn gorffen, mae brew yn dweud bod openvpn yno, ac mae'r plisgyn yn ateb command not found. Mae'r deuaidd yn bodoli; mae mewn cyfeiriadur na chafodd y plisgyn wybod amdano erioed. Mae Homebrew yn cysylltu deueiddiau ar ffurf daemon i mewn i gyfeiriadur sbin y rhagddodiad, ac mae PATH rhagosodedig macOS fel arfer yn cynnwys y cyfeiriadur bin ac nid yr un sbin. Nid oes dim wedi torri, ac ni fydd ail-osod yn newid hynny.
Mae pedwar gwiriad yn cadarnhau'r mecanwaith cyn i chi olygu unrhyw ffeil blisgyn.
Yr hyn y mae'r fformiwla yn ei osod mewn gwirionedd
Mae'r fformiwla openvpn yn adeiladu daemon llinell orchymyn, felly mae ei ffeil weithredu yn glanio o dan sbin yn hytrach na bin. Yna mae Homebrew yn cysylltu'r deuaidd hwnnw i mewn i gyfeiriadur sbin y rhagddodiad, a dyna pam mae "$(brew --prefix)/sbin/openvpn" --version yn gweithio tra nad yw galwad noeth yn gwneud. Mae'r cyfeiriadur Cellar fersiynog hefyd yn cadw copi, a rhoi'r llwybr hwnnw mewn ffeil gychwyn yw'r ffordd y mae peiriant yn aros wedi'i binio i adeiladwaith hen ar ôl diweddariad.
Cysylltiad symbolaidd y rhagddodiad yw'r llwybr sefydlog. Mae llwybr Cellar yn fanylyn gweithredu gyda rhif fersiwn ynddo.
Gofynnwch i Homebrew, nid i'r system ffeiliau
Dechreuwch gyda'r rheolwr pecynnau, oherwydd ef sy'n gwybod pa osodiad sy'n berchen ar y fformiwla: command -v brew, brew --prefix, brew list --versions openvpn, brew --prefix openvpn. Os yw'r olaf yn argraffu llwybr, mae'r fformiwla yn bresennol a'r cwestiwn yn gyfan gwbl am ddatrysiad. Os nad yw'n argraffu dim, mae'r plisgyn yn chwilio yn y lle anghywir am becyn na chafodd ei osod erioed, ac mae hynny'n broblem wahanol gyda thrwsgl gwahânol.
Dau osodiad Homebrew ar un peiriant yw'r man lle mae hyn yn bwysicaf: nid yw'r brew sy'n ateb o reidrwydd yr brew a osododd.
Pam na all y plisgyn weld sbin
Mae plisgyn mewngofnodi yn adeiladu PATH o ragosodiadau'r system ynghyd â phopeth y mae eich ffeiliau cychwyn yn ei ychwanegu. Mae Homebrew bin fel arfer yn cael ei ychwanegu ac nid yw Homebrew sbin fel arfer, felly mae pob gorchymyn yn gweithio ac eithrio'r daemonau. command -v openvpn yn dychwelyd dim tra mae'r llwybr â rhagddodiad yn dychwelyd fersiwn yw'r diagnosis cyfan mewn dau orchymyn. Cadarnhewch fod y cyfeiriadur yn dal y cysylltiad mewn gwirionedd gyda ls -l "$(brew --prefix)/sbin/openvpn".
Mae cysylltiad ar goll yn fai gwahanol i gofnod PATH ar goll, a dim ond un ohonynt sy'n cael ei drwsio drwy olygu ffeil blisgyn.
Trwsiwch y llwybr unwaith, mewn un man
Ar gyfer prawf cyflym yn y plisgyn presennol, mae eval "$(brew shellenv)" yn gosod y newidynnau gosod ac yn rhoi'r ddau gyfeiriadur ar y blaen. Ar gyfer trefniant parhaol, rhowch y llinell shellenv yn yr un ffeil gychwyn y mae eich plisgyn yn ei darllen ar gyfer y modd mewngofnodi a ddefnyddiwch, yn lle gwasgaru allforion ar draws ffeiliau bash a zsh.
Yna agorwch derfynell newydd ac ailadroddwch yr ymholiad fersiwn, oherwydd mae plisgyn wedi'i storio yn parhau i riportio'r PATH hen.
Cadwch ddarganfod ar wahân i'r gwasanaeth
Nid yw dod o hyd i ddeuaidd yr un peth â rhedeg gwasanaeth VPN. Mae cychwyn openvpn yn awtomatig yn ychwanegu gofynion proffil, tystlythyrau, breintiau a chylch bywyd na chyffyrddodd darganfod pecynnau byth â nhw. Mae Tunnelblick hefyd yn bwndelu ei beiriant ei hun, felly efallai nad oes gan y fersiwn a argraffwyd gennych unrhyw beth i'w wneud â'r fersiwn y mae'r rhaglen yn ei ddefnyddio.
Cofnodwch pa ffeil weithredu a gynhyrchodd allbwn y fersiwn. Mae'r un llinell honno'n arbed awr y tro nesaf y bydd dau fersiwn yn anghytuno.