[英]How to reset anything related to Ruby to factory settings on Mac OS High Sierra
在我的新筆記本電腦上涉及 RVM、Ruby 和 Rails 的許多不幸事件之后,我完全不知所措。 我卸載了 RVM,但所有路徑、版本和權限都亂七八糟。
我進行了搜索,但找不到正確的修復方法。 感覺每個解決方案都會使問題變得更糟。
我想重新開始,而不必將計算機重置為出廠設置。 我怎樣才能只重置與 Ruby、Rails 等 Ruby 相關的東西,而不清除我的計算機?
在你開始所有這些之前,我會關閉並重新打開你的終端窗口,以確保你沒有加載任何舊的環境變量。
一般的東西:
env | grep RUBY
env | grep RUBY
, env | grep RVM
env | grep RVM
並查找您可能已設置的任何剩余環境變量env | grep GEM
env | grep GEM
。 有時您會看到GEM_PATH
、 GEM_HOME
等,但這些對於系統 ruby 不是必需的~/.bash_profile
、 ~/.bashrc
和~/.profile
文件,看看你是否添加了任何 rvm 東西如果您運行的是 macOS Mojave(我正在與我的系統進行比較):
which ruby
應該返回/usr/bin/ruby
。 如果沒有,則說明您有其他干擾因素。 發布那是什么,我們可以解決它。
運行/usr/bin/ruby --version
應該返回ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
系統紅寶石的權限:
-r-xr-xr-x 1 root wheel 52016 Nov 30 02:38 /usr/bin/ruby
如果您的不同,這應該類似於sudo chmod 555 /usr/bin/ruby
來解決這個問題。 如果你有不同的所有者,你需要sudo chown root:wheel /usr/bin/ruby
您還需要檢查which gem
,看看它是否報告/usr/bin/gem
。 權限應與/usr/bin/ruby
相同。 /usr/bin/gem --version
應該返回2.5.2.3
運行/usr/bin/gem env
應該返回類似於下面的內容。 用你的替換jay
(我的電腦用戶)
RubyGems Environment:
- RUBYGEMS VERSION: 2.5.2.3
- RUBY VERSION: 2.3.7 (2018-03-28 patchlevel 456) [universal.x86_64-darwin18]
- INSTALLATION DIRECTORY: /Library/Ruby/Gems/2.3.0
- USER INSTALLATION DIRECTORY: /Users/jay/.gem/ruby/2.3.0 # this doesn't matter much
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/bin
- SPEC CACHE DIRECTORY: /Users/jay/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Library/Ruby/Site
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-18
- GEM PATHS:
- /Library/Ruby/Gems/2.3.0
- /Users/jay/.gem/ruby/2.3.0
- /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/gems/2.3.0
- GEM CONFIGURATION:
- :update_sources => false
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- :sources => ["https://rubygems.org/"]
- "benchmark" => true
- "gem" => "--document=yri"
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /usr/local/bin
- /Users/jay/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /opt/X11/bin
從那里你有兩個你可能想要查看的目錄:
運行ls -al /Library/Ruby/
。 你應該看到這個:
drwxr-xr-x 3 root wheel 96 Aug 17 18:59 Gems
drwxr-xr-x 3 root wheel 96 Aug 17 18:59 Site
您可能需要 chmod/chown 每個目錄(使用-R
遞歸)
完成后,請注意運行/usr/bin/gem install bundler
和gem install bundler
(假設您還沒有安裝新的 ruby 版本管理器)應該會產生如下錯誤(這意味着您重新配置了權限正確)。
Fetching: bundler-1.17.2.gem (100%)
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.
您會看到一些教程提到更改這些權限,或運行 sudo 來安裝 gems,但我不建議這樣做。 我最喜歡的 ruby 版本管理器是asdf ,它可能值得一看。 您將安裝核心和ruby 插件。
這應該讓你更接近一點。 如果您看到任何其他問題,請發布錯誤。
rm -rf ~/.rvm
,然后編輯~/.bash_profile
以刪除source $HOME/.rvm/scripts/rvm
。
然后,您可以按照https://rvm.io/rvm/install上的詳細安裝說明從頭開始使用 RVM 重新啟動。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.