' sudo ruby​​ setup.rb'不会在Vagrant盒子上安装Gems

时间:2016-10-27 03:16:36

标签: ruby rubygems vagrant

我是使用Vagrant的新手,我正在尝试在其上安装Gems(已经安装了Ruby)。我按照说明here

我已下载最新版本的Gems并将其解压缩。我有" cd' d"进入该文件夹并尝试运行:

ruby setup.rb

但是获得Permission denied错误,所以我尝试sudo:

sudo ruby setup.rb

但这给了我错误:

  

sudo:ruby:命令未找到

有人知道这里发生了什么吗?

修改 - 更多信息

我检查了ruby的版本及其2.3.0p0。

如果我试图检查Gems的版本是说要安装Ruby 1.9.1。

我真的不明白这一点......

2 个答案:

答案 0 :(得分:1)

sudo不会保留您的$PATH环境变量,因此除非ruby安装在 root &#39的某个地方; s路径,它不会被发现。

运行which ruby以找出安装ruby的位置,然后sudo /path/to/ruby setup.rb

另外,更重要的是,这完全没必要。这些说明是。 Rubygems已经内置了ruby很长一段时间了。您链接的网站甚至会说,"如果您使用的是Ruby 1.9。*,那么您不必担心安装Rubygems;它是内置的。"如果您使用的是2.3.0,则不需要安装Rubygems,您已经拥有它。

答案 1 :(得分:0)

我建议您使用RMV安装Ruby和Gem版本。

安装RVM

https://rvm.io/

- gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
- \curl -sSL https://get.rvm.io | bash -s stable
- source /home/vagrant/.rvm/scripts/rvm

安装Ruby

rvm get stable --autolibs=enable
rvm install ruby-2.3.1

使用默认的ruby版本

rvm --default use ruby-2.3.1