RVM 混合模式 - 本地 Gem 安装

RVM 混合模式 - 本地 Gem 安装

这事真让我抓狂。

我已经在 CentOS 服务器上安装了 RVM;我完全遵循了混合模式的说明。https://rvm.io/rvm/install/

但是,当我尝试从用户帐户执行“gem install”时,出现以下信息:

您没有 /usr/local/rvm/gems/ruby-1.9.3-p194 目录的写入权限。

据我所知,如果正确设置了 RVM 混合模式,用户可以安装自己的 gem。在这里,让所有 ruby​​ 用户都能够全局安装 gem 是不可行的。

这是我登录后所做的事情:

    # gem install rails
    -bash: gem: command not found
    # rvm use 1.9.3
    Using /usr/local/rvm/gems/ruby-1.9.3-p194
    Running /usr/local/rvm/hooks/after_use
    # gem install rails
    ERROR:  While executing gem ... (Gem::FilePermissionError)
        You don't have write permissions into the /usr/local/rvm/gems/ruby-1.9.3-p194 directory.

好的,我有一个线索(这里出现了一个相关问题)。

我的宝石路径是:

    # echo $GEM_PATH
    /usr/local/rvm/gems/ruby-1.9.3-p194:/usr/local/rvm/gems/ruby-1.9.3-p194@global

看起来不对。

答案1

和往常一样,经过几个小时的斗争后,我提出问题后立即就找到了答案。

由于 RVM 以多种模式工作,因此很容易出现安装失败并不得不重新安装的情况。在执行此操作时,我清除了系统中所有 RVM 的痕迹,包括用户的 .rvmrc 文件。

无论出于什么原因,重新安装时此文件都没有出现。用默认文件替换它修复了 GEM_PATH,现在我可以安装 gems 了。

这是默认的 .rvmrc:

    export rvm_environments_path="${HOME}/.rvm/environments"
    export rvm_gems_path="${HOME}/.rvm/gems"
    export rvm_gems_cache_path="${HOME}/.rvm/gems_cache"
    export rvm_wrappers_path="${HOME}/.rvm/wrappers"

相关内容