Homebrew OpenVPN பைனரியை PATH-இல் அல்ல, sbin-இல் வைக்கிறது
இந்த ஃபார்முலா OpenVPN டீமனை sbin கீழ் நிறுவுகிறது, அதை இயல்புநிலை macOS PATH கொண்டிருக்காது. முன்னொட்டை உறுதிசெய்து, பின்னர் ஒரே கோப்பில் தீர்வைச் சரிசெய்யுங்கள்.
நிறுவல் முடிகிறது, brew openvpn உள்ளது என்கிறது, ஆனால் ஷெல் command not found எனப் பதிலளிக்கிறது. பைனரி உள்ளது, ஷெல்லுக்கு ஒருபோதும் சொல்லப்படாத ஒரு கோப்பகத்தில் அது அமர்ந்திருக்கிறது. Homebrew டீமன் வகை பைனரிகளை முன்னொட்டின் sbin கோப்பகத்தில் இணைக்கிறது, இயல்புநிலை macOS PATH பொதுவாக bin கோப்பகத்தைக் கொண்டிருக்கும், sbin அல்ல. எதுவும் உடைந்துவிடவில்லை, எந்த மறுநிறுவலும் அதை மாற்றாது.
எந்த ஷெல் கோப்பையும் திருத்தும் முன் நான்கு சோதனைகள் இந்த வழிமுறையை உறுதிசெய்கின்றன.
ஃபார்முலா உண்மையில் எதை நிறுவுகிறது
openvpn ஃபார்முலா கட்டளை-வரி டீமனை உருவாக்குகிறது, எனவே அதன் இயக்கக்கூடிய கோப்பு bin கீழ் அல்ல, sbin கீழ் வந்து சேர்கிறது. பின்னர் Homebrew அந்த பைனரியை முன்னொட்டின் sbin கோப்பகத்தில் இணைக்கிறது, அதனால்தான் "$(brew --prefix)/sbin/openvpn" --version வேலை செய்கிறது, வெறும் அழைப்பு வேலை செய்யாது. பதிப்பு எண்ணுள்ள Cellar கோப்பகமும் ஒரு நகலை வைத்திருக்கிறது, அந்தப் பாதையைத் தொடக்கக் கோப்பில் வைப்பதே மேம்பாட்டுக்குப் பிறகும் இயந்திரம் பழைய கட்டமைப்பில் பொருத்தப்பட்டிருப்பதற்கான வழி.
முன்னொட்டின் குறியீட்டு இணைப்பு நிலையான பாதை. Cellar பாதை உள்ளே பதிப்பு எண் கொண்ட செயலாக்க விவரம்.
கோப்பு முறைமையிடம் அல்ல, Homebrew-இடம் கேளுங்கள்
தொகுப்பு மேலாளரிடம் தொடங்குங்கள், ஏனெனில் எந்த நிறுவல் ஃபார்முலாவைக் கொண்டுள்ளது என்பதை அது அறியும்: command -v brew, brew --prefix, brew list --versions openvpn, brew --prefix openvpn. கடைசியது ஒரு பாதையை அச்சிட்டால், ஃபார்முலா உள்ளது, கேள்வி தீர்வைப் பற்றியது மட்டுமே. எதுவும் அச்சிடவில்லை என்றால், ஷெல் ஒருபோதும் நிறுவப்படாத தொகுப்பைத் தவறான இடத்தில் தேடுகிறது, அது வேறு தீர்வு கொண்ட வேறு சிக்கல்.
ஒரே இயந்திரத்தில் இரண்டு Homebrew நிறுவல்கள் இருப்பதே இது அதிகம் முக்கியமாகும் இடம்: பதிலளிக்கும் brew நிறுவிய brew ஆகவே இருக்க வேண்டியதில்லை.
ஷெல் sbin-ஐ ஏன் பார்க்க முடியவில்லை
உள்நுழைவு ஷெல் கணினி இயல்புநிலைகள் மற்றும் உங்கள் தொடக்கக் கோப்புகள் சேர்ப்பவற்றிலிருந்து PATH-ஐ உருவாக்குகிறது. Homebrew bin பொதுவாகச் சேர்க்கப்படும், Homebrew sbin பொதுவாகச் சேர்க்கப்படாது, எனவே டீமன்களைத் தவிர ஒவ்வொரு கட்டளையும் வேலை செய்கிறது. command -v openvpn எதையும் திருப்பித் தராதபோது முன்னொட்டுப் பாதை ஒரு பதிப்பைத் திருப்பித் தருவதே இரண்டு கட்டளைகளில் முழு நோயறிதல். கோப்பகத்தில் உண்மையில் இணைப்பு உள்ளதா என ls -l "$(brew --prefix)/sbin/openvpn" மூலம் உறுதிசெய்யுங்கள்.
காணாமல் போன இணைப்பு காணாமல் போன PATH உள்ளீட்டிலிருந்து வேறுபட்ட குறைபாடு, அவற்றில் ஒன்று மட்டுமே ஷெல் கோப்பைத் திருத்துவதால் சரிசெய்யப்படுகிறது.
பாதையை ஒருமுறை, ஒரே இடத்தில் சரிசெய்யுங்கள்
தற்போதைய ஷெல்லில் விரைவான சோதனைக்கு eval "$(brew shellenv)" நிறுவல் மாறிகளை அமைத்து இரண்டு கோப்பகங்களையும் முன்னால் வைக்கிறது. நிரந்தர ஏற்பாட்டுக்கு, நீங்கள் பயன்படுத்தும் உள்நுழைவு முறைக்காக உங்கள் ஷெல் படிக்கும் ஒரே தொடக்கக் கோப்பில் shellenv வரியை வைக்கவும், bash மற்றும் zsh கோப்புகளில் ஏற்றுமதிகளைச் சிதறடிப்பதற்குப் பதிலாக.
பின்னர் புதிய முனையத்தைத் திறந்து பதிப்புக் கேள்வியை மீண்டும் செய்யுங்கள், ஏனெனில் தேக்ககப்படுத்தப்பட்ட ஷெல் பழைய PATH-ஐத் தொடர்ந்து தெரிவிக்கிறது.
கண்டறிதலைச் சேவையிலிருந்து தனியாக வைத்திருங்கள்
பைனரியைக் கண்டறிவது VPN சேவையை இயக்குவதற்குச் சமம் அல்ல. openvpn-ஐ தானாகத் தொடங்குவது தொகுப்புக் கண்டறிதல் ஒருபோதும் தொடாத சுயவிவரம், சான்றுகள், சிறப்புரிமைகள் மற்றும் வாழ்க்கைச் சுழற்சி தேவைகளைச் சேர்க்கிறது. Tunnelblick தனது சொந்த எஞ்சினையும் கொண்டு வருகிறது, எனவே இப்போது அச்சிட்ட பதிப்புக்கு பயன்பாடு பயன்படுத்தும் பதிப்புடன் எந்தத் தொடர்பும் இல்லாமல் இருக்கலாம்.
எந்த இயக்கக்கூடிய கோப்பு பதிப்பு வெளியீட்டை உருவாக்கியது என்பதைப் பதிவு செய்யுங்கள். அந்த ஒரு வரி அடுத்த முறை இரண்டு பதிப்புகள் ஒத்துப்போகாதபோது ஒரு மணி நேரத்தைச் சேமிக்கிறது.