如何在Mac OS High Sierra上将任何与Ruby相关的设置重置为出厂设置
在我的新笔记本电脑上发生了一系列涉及RVM、Ruby和Rails的不幸之后,我完全不知所措。我卸载了RVM,但所有的路径、版本和权限都乱七八糟 我搜索了一下,没有找到正确的修复方法。感觉每个解决方案都会使问题变得更糟如何在Mac OS High Sierra上将任何与Ruby相关的设置重置为出厂设置,ruby,macos,Ruby,Macos,在我的新笔记本电脑上发生了一系列涉及RVM、Ruby和Rails的不幸之后,我完全不知所措。我卸载了RVM,但所有的路径、版本和权限都乱七八糟 我搜索了一下,没有找到正确的修复方法。感觉每个解决方案都会使问题变得更糟 我想重新开始,而不必将计算机重置为出厂设置。如何在不删除我的计算机的情况下,只重置Ruby相关的东西,如Ruby、Rails等?rm-rf~/.rvm,然后编辑~/.bash\u profile以删除source$HOME/.rvm/scripts/rvm 然后,您可以按照上的详细
我想重新开始,而不必将计算机重置为出厂设置。如何在不删除我的计算机的情况下,只重置Ruby相关的东西,如Ruby、Rails等?
rm-rf~/.rvm
,然后编辑~/.bash\u profile
以删除source$HOME/.rvm/scripts/rvm
然后,您可以按照上的详细安装说明从头开始使用RVM。在开始所有这些操作之前,我会关闭并重新打开您的终端窗口,以确保没有加载任何旧的环境变量 一般事项:
- 运行
,env | grep RUBY
并查找可能已设置的任何剩余环境变量env | grep RVM
- 同样适用于
。有时您会看到env | grep GEM
,GEM\u路径
,等等,但这些不是系统ruby所必需的GEM\u主页
- 查看您的
,~/.bash_配置文件
和~/.bashrc
文件,查看是否添加了任何rvm内容~/.profile
哪个ruby
应该返回/usr/bin/ruby
。如果它没有,你就有别的干扰。贴出那是什么,我们可以把它修好
运行/usr/bin/ruby--version
应返回ruby 2.3.7p456(2018-03-28修订版63024)[universal.x86\u 64-darwin18]
系统ruby的权限:
-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
您还需要检查哪个gem
,并查看它是否报告/usr/bin/gem
。权限应与/usr/bin/ruby
相同/usr/bin/gem——版本
应返回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版本管理器)会产生如下错误(这意味着您正确地重新配置了权限)
您将看到一些教程提到更改这些权限,或者运行sudo安装gems,但我不建议这样做。我最喜欢的ruby版本管理器可能值得一看。您将安装内核和
这会让你更靠近一点。如果您看到任何其他问题,请发布错误。如上所述,我已经卸载了RVM。这不是我的问题-我想完全重置ruby以及与之相关的一切,使其成为“开箱即用”的方式。RVM早已不存在,但其他一些微妙的东西都出了问题。@anothermh建议的方法会很好地工作。什么“微妙”的事情与你有关?我已经做了这些事情,我不确定它们在RVM已经以这种方式卸载时有何帮助。我在路径、权限、bundler等方面遇到了一系列问题和错误。我花了几个小时阅读溢出线程,并在终端上进行了尝试,我相信没有简单的解决方案。这就是为什么我希望在上面的问题上得到帮助。你问题中的详细程度让我相信你可能不知道如何正确地删除RVM,因为你说你删除了它,但是Ruby和Rails(这是一系列的宝石,再次表明你在这方面没有专业知识)仍然存在问题。在Stackoverflow上,您需要具体说明您遇到的问题。“混乱”、“不幸”、“失常”、“困惑”这些词完全没有意义。说问题变得更糟,但不描述问题意味着在你自助之前没有人能帮助你。我是*具体的*-我问了这个问题:“我想重新开始,而不必将我的计算机重置为出厂设置。我如何在不擦除我的计算机的情况下重置与ruby相关的东西(ruby、rails等)我得到的是居高临下、对立,以及对语言与意义的关系本质的一些相当明显的困惑。重新安装操作系统似乎是显而易见的答案。你为什么不想那样做?或者,假设您有备份,将其恢复到进行要撤消的更改之前的状态。我看你没有太多选择。我想这对我来说并不明显,这就是我问你的原因。但是如果没有办法重置ruby等,那么我想我必须这么做。谢谢你的评论。这个问题问得不好。你让我们想象你可以做的每一件事,而不告诉我们任何有用的东西。苹果安装Ruby系统供自己使用;可以针对它运行脚本,但修改它会破坏苹果安装的进程。相反,始终使用诸如rbenv、RVM或asdf之类的沙盒管理器来安装单独的、用户可修改的Ruby。而且,永远不要使用
sudo
,除非您确切知道它的功能和命令的作用sudo
就像外科医生的手术刀,可能会在坏人手中造成重大伤害,尤其是在处理系统文件时。macOS Catalina有非常不同的权限限制,因此我怀疑这不起作用
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.