【问题标题】:'sudo ruby setup.rb' won't install Gems on Vagrant box'sudo ruby​​ setup.rb' 不会在 Vagrant box 上安装 Gems
【发布时间】:2016-10-27 03:16:36
【问题描述】:

我刚开始使用 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。

我真的不明白这个......

【问题讨论】:

    标签: ruby rubygems vagrant


    【解决方案1】:

    sudo 不会保留您的 $PATH 环境变量,因此除非 ruby 安装在 root 路径中的某个位置,否则将无法找到它。

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

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

    【讨论】:

      【解决方案2】:

      我建议你使用 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
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-02-13
        • 2015-10-14
        • 2015-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多