gpt4 book ai didi

ruby - 为什么在安装 gem 时出现 "permission denied"错误?

转载 作者:数据小太阳 更新时间:2023-10-29 06:21:54 24 4
gpt4 key购买 nike

我正在尝试安装 Jekyll。运行 gem install jekyll 后我得到这个错误:

ERROR:  While executing gem ... (Errno::EACCES)
Permission denied - /usr/local/lib/ruby/gems/2.0.0/gems/jekyll-1.0.3/CONTRIBUTING.md

当我运行 gem list 时,我可以看到 Jekyll 已经安装了,所以我很困惑:

*** LOCAL GEMS ***

bigdecimal (1.2.0)
classifier (1.3.3)
colorator (0.1)
commander (4.1.3)
directory_watcher (1.4.1)
fast-stemmer (1.0.2)
highline (1.6.19)
io-console (0.4.2)
jekyll (1.0.3)
json (1.7.7)
kramdown (1.0.2)
liquid (2.5.0)
maruku (0.6.1)
minitest (4.3.2)
posix-spawn (0.3.6)
psych (2.0.0)
pygments.rb (0.5.1)
rake (0.9.6)
rdoc (4.0.0)
rubygems-update (2.0.3)
safe_yaml (0.7.1)
syntax (1.0.0)
test-unit (2.0.0.0)
yajl-ruby (1.1.0)

过去我的用户路径有很多问题,所以我想知道这个错误是否与此有关?

这是 gem env 的输出:

RubyGems Environment:
- RUBYGEMS VERSION: 2.0.3
- RUBY VERSION: 2.0.0 (2013-02-24 patchlevel 0) [x86_64-darwin12.3.0]
- INSTALLATION DIRECTORY: /usr/local/Cellar/ruby/2.0.0-p0/lib/ruby/gems/2.0.0
- RUBY EXECUTABLE: /usr/local/Cellar/ruby/2.0.0-p0/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/Cellar/ruby/2.0.0-p0/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-12
- GEM PATHS:
- /usr/local/Cellar/ruby/2.0.0-p0/lib/ruby/gems/2.0.0
- /Users/me/.gem/ruby/2.0.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/

这是我的“.bash_profile”:

export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
PATH=$PATH:above/path/to/gems

source ~/.rvm/scripts/rvm

有人可以帮我安装 Jekyll,或者至少解决这个权限错误吗?

最佳答案

您的 Ruby 安装在 /usr/local/Cellar/ruby/... 中。

这是一个受限制的路径,只有在您使用提升的权限时才能写入,无论是通过以 root 身份运行还是通过使用 sudo。我不建议您以 root 身份运行,因为您不了解路径和权限的工作原理。您可以使用sudo gem install jekyll,这将暂时提升您的权限,为您的命令提供写入该目录所需的权限。

但是,我建议您认真考虑不要这样做,而是使用您的 RVM 将 Ruby 安装到您自己的主目录中,这样您就可以在没有权限问题的情况下自动安装 Rubies 和 gems。请参阅“Single-User installations”中有关安装到本地 RVM 沙箱的说明。

因为你的 ~/.bash_profile 中有 RVM,但它没有出现在你的 Gem 环境列表中,我怀疑你没有按照说明正确安装 RVM,或者你还没有使用最重要的命令:

rvm use 2.0.0 --default

配置一个默认的 Ruby。

对于大多数用户来说,“单用户安装”是可行的方法。如果您必须在该配置中使用 sudo,那么您做错了什么。

关于ruby - 为什么在安装 gem 时出现 "permission denied"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17550903/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com