Eng OpenVPN-Installatioun, déi ënner Chocolatey mat engem Ënnerschrëft- oder Schlësselfehler stierft, ass normalerweis kee Downloadproblem. De Pak léisst e Verifikatiounsschrëtt lafen, deen gpg oprufft, an Windows léist deen nackte Numm iwwer PATH. Wann Git for Windows als éischt installéiert gouf, steet säin agebaute gpg.exe virun der GnuPG-Versioun, déi OpenVPN erwaart, an dat falscht Programm äntwert op den Opruff. D'Feeler, déi Dir gesitt, ass dat, iwwer wat dat anert Programm decidéiert huet ze klagen, an dofir ernimmt et ni déi richteg Ursaach.

D'Reiefolleg vum PATH entscheet, wéien gpg leeft

Windows huet keng zentral Registrierung vun ausféierbaren Nimm. Wann e Prozess gpg ouni vollstännegen Wee verlaangt, geet de Lueder d'PATH-Andräg an der Rei duerch an ausféiert déi éischt Iwwereneestëmmung. Git for Windows liwwert eng minimal GnuPG-Versioun an sengem usr/bin-Verzeechnis, fir datt ënnerschriwwen Committe funktionéieren, an säin Installer setzt dëst Verzeechnis normalerweis no beim Ufank vum PATH vum Benotzer.

GnuPG installéiert sech a säin eegent Verzeechnis, meeschtens C:\Program Files (x86)\GNU\GnuPG\pub, an deen Andrag kann méi spéit an der Lëscht sinn oder ganz aus dem PATH vum Benotzer fehlen. Déi zwee Programmer deelen en Numm an e groussen Deel vun enger Kommandozeilen-Uewerfläch, awer net hiren Zoustand: d'Git-Versioun sicht eng Schlësselrank soss enger Plaz, ka vun enger anerer Versioun sinn an akzeptéiert vläicht net d'Optiounen, déi den Installer weidergëtt. Dee Mëssverhältnis weist sech als Ënnerschrëft- oder Schlësselfehler, wat e richtegen Rapport iwwer dat ass, wat dat falscht Binär gesinn huet. Näischt an der Noriicht weist op de Lueder, well de Lueder genau dat gemaach huet, wat him gesot gouf.

Firwat d'Shell, aus där Dir start, d'Resultat entscheet

D'Erfgeregel ass den Deel, deen et wäert ass sech anzeprägen. E Kandprozess kritt d'Ëmfeld vun der Shell, déi en lancéiert huet, also ass d'Reiefolleg déi zielt déi am Ablack, wéi Chocolatey start, an net déi no Ärer Korrektur.

Dofir ännert d'Änneren vun PATH an engem Astellungsfënster an d'Neiopléise vun der Installatioun am selwechten Terminal dacks näischt: den Terminal huet dat aalt Ëmfeld behalen. Start no all Ännerung eng nei Shell a bestätegt mat where.exe gpg an där neier Shell, ier Dir et nach eng Kéier versicht. Et ass och firwat en Andrag op Maschinnenniveau eng Ännerung op Benotzerniveau ka schloen, well een Installer virun den PATH vun der Maschinn setzt an Maschinnen-Andräg virun Benotzer-Andräg bewäert ginn. Wann zwéin Niveauen en GnuPG-Wee enthalen, entscheet wéien Dir tatsächlech ënnerhält.

Éischt Korrektur: réiëlt d'Andräg ëm

Déi präzis Korrektur ass, dat gewënscht GnuPG-Verzeechnis gewënnen ze loossen. Maacht d'Ëmfeldvariablen vum Benotzer op, ännert Path a réiëlt d'GnuPG-pub-Verzeechnis iwwer d'Git-Andräg. Da maacht en neit PowerShell-Fënster op, well dat wat leeft nach ëmmer déi al Lëscht hält.

D'Alternativ ass en temporärt propper Ëmfeld fir d'Installatioun: huelt d'Git-Andräg eraus, maacht eng nei Shell op, féiert choco install openvpn aus an da setzt se erëm zréck.

Béid Approchen funktionéieren aus demselwechte Grond, an den zweete ass nëmme sécher, wann Dir d'Andräg tatsächlech zrécksetzt. D'Entferne vum Git sengem usr/bin aus PATH brécht ënnerschriwwen Committe fir ëmmer, an dat nächst Tool, dat en funktionéierende gpg erwaart, schléit mat senger eegener Noriicht feel, déi näischt mat OpenVPN ze dinn huet. Wann Dir de temporäre Wee hëlt, behält den originelle Wäert vun Path am Ticket, sou datt d'Zrécksetzen en Asetze ass an net en Neiopbau. D'Andräg ze ordnen ass déi dauerhaft Korrektur; se ze läschen ass eng Ëmgeeung mat engem Ofleefdatum.

Iwwerpréift, da setzt et zréck

Iwwerpréift virun an no am selwechte Benotzerkontext, deen Chocolatey benotze wäert. where.exe gpg lëscht all Iwwereneestëmmung an der Opléisungsreiefolleg op, also ass déi éischt Linn déi, déi leeft; Get-Command gpg -All gëtt déi selwecht Äntwert mat méi Detailen am PowerShell. Duerno bestätegt gpg --version, wéi eng Versioun geäntwert huet.

Wann where.exe nach ëmmer d'Git-Kopie als éischt lëscht, ass d'Ëmreihung net an déi Sessioun komm, an egal wéi oft nei installéiert gëtt, et hëlleft net. Préift souwuel de Maschinnen- wéi de Benotzer-PATH mat [Environment]::GetEnvironmentVariable('Path','Machine') an dee selwechten Opruff mat 'User', well déi effektiv Lëscht aus béide zesummegesat gëtt. No enger erfollegräicher Installatioun préift nach eng Kéier mat openvpn --version a start de Service oder de GUI eng Kéier, well e Pak propper installéiere kann an trotzdem e Service hannerloosst, deen net start.

Wann e richteg geordneten PATH nach ëmmer feel schléit, ass déi reschtlech Variabel d'Pak-Versioun. E fixéierte Chocolatey-Pak erwaart vläicht eng bestëmmt GnuPG-Versioun oder en Installatiounswee, deen Är Maschinn net huet.

Liest dem Pak säin eegene Log, ier Dir eppes anescht ännert. C:\ProgramData\chocolatey\logs\chocolatey.log schreift d'Kommandozeil, déi feelgeschloen ass, an d'Verzeechnis op, aus deem se gelaf ass, wat Iech seet, ob den Opruff eng Ënnerschrëftpréifung, eng Extraktioun oder e Skript no der Installatioun war. Dee Grëff entscheet, ob Dir nach iwwerhaapt gpg debuggt.

D'Gewunnecht, déi eng Widderhuelung verhënnert, ass PATH als gedeelten Zoustand mat enger dokumentéierter Reiefolleg ze behandelen an net als en Sack voll Verzeechnisser. Wann Dir en Tool installéiert, deen en heefegt Binärnumm bréngt, préift, wat et an der nächster Shell, déi Dir opmaacht, iwwerschatt. Schreift duerno d'Reiefolleg op, op déi Dir Iech festgeluecht hutt, well den nächsten Installer wäert dobäi setzen an déi nächst Persoun wäert sech froen, firwat eng Ënnerschrëftpréifung op enger Maschinn feel schléit, op där sech näischt geännert huet. Een eenzege where.exe virun der Installatioun spuert déi ganz Schleif.

Ähnlech Artikelen