支持
RVM 由志愿者社区维护,请将问题报告到 RVM 问题追踪器。
如果您能提供帮助或希望成为维护者之一 - 请开始帮助。 您可以在 RVM Github 组织。 找到更多与 RVM 相关的项目。
赞助商
Carbon Ads

安装 RVM

RVM 支持大多数类 UNIX 系统和 Windows(使用 CygwinWindows 上的 Ubuntu 上的 Bash)。 基本要求是 bashcurlgpg2 和整体 GNU 版本的工具 - 但 RVM 会尝试自动检测它并安装任何需要的工具。

安装 GPG 密钥

第一步是安装用于验证安装包的 GPG 密钥

gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

如果您遇到问题,请查看 安全

基本安装

Ubuntu

RVM 有专门的 Ubuntu 包,因此请按照此处发布的说明操作: https://github.com/rvm/ubuntu_rvm

如果您需要不同(更新)版本的 RVM,在安装基本版本的 RVM 后,请查看 升级 部分。

任何其他系统

安装 RVM(开发版本)

\curl -sSL https://get.rvm.io | bash

安装带有 ruby 的稳定版 RVM

\curl -sSL https://get.rvm.io | bash -s stable --ruby

另外还有 rails(穷人的 railsinstaller

\curl -sSL https://get.rvm.io | bash -s stable --rails

或者使用 jruby、rails 和 puma

\curl -sSL https://get.rvm.io | bash -s stable --ruby=jruby --gems=rails,puma

要安装不带 rubygems-bundler 和 rvm gem(并从 global.gems 和 default.gems 中删除这些 gem)

\curl -sSL https://get.rvm.io | bash -s stable --without-gems="rvm rubygems-bundler"

要安装带有 hirb gem(并将其添加到 global.gems)

\curl -sSL https://get.rvm.io | bash -s stable --with-gems="hirb"

要安装带有 rails 和 haml gem(并将其添加到 default.gems)

\curl -sSL https://get.rvm.io | bash -s stable --with-default-gems="rails haml"

不带 autolibs

\curl -sSL https://get.rvm.io | bash -s -- --autolibs=read-fail

在下载 RVM/Rubies 时显示进度条

echo progress-bar >> ~/.curlrc

需要注意的是,curl 前面有一个反斜杠。 这样可以防止在 ~/.curlrc 文件中配置别名时出现错误行为。

如果您是现有的 RVM 用户,并且不希望 RVM 尝试设置您的 shell 以加载 RVM,您可以在安装时通过导出 `rvm_ignore_dotfiles=yes` 来选择退出,或者通过在您的 `rvmrc` 中设置此选项来永久退出。

您也可以


安装说明

有三种不同的方法来安装和配置 RVM。

  1. 单用户安装 (推荐) - 用于用户 $HOME 中的隔离安装,不适用于 root。
  2. 多用户安装 - 适用于 服务器管理员 - 用于系统上所有用户都可以使用的安装 - 请注意,单用户安装优先于多用户安装。这以前也称为系统范围安装。 在不知道 umask 工作原理的情况下使用这种类型的安装存在很大的安全风险。
  3. 混合模式安装 - 用于系统上所有用户都可以使用的安装 - 并在用户 $HOME 中隔离 ruby/gemset。安装说明与多用户安装完全相同,区别在于用户环境。

get.rvm.io 是对 https://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer 的重定向。您也可以使用安装程序的完整路径。

\curl https://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer | bash -s stable

安装

我建议您自己 阅读安装脚本。这将让您有机会在安装之前了解它在做什么,并让您在运行它时感到更舒适。

1. 下载并运行 RVM 安装脚本

安装稳定版本

\curl -sSL https://get.rvm.io | bash -s stable

获取最新开发版本

\curl -sSL https://get.rvm.io | bash

指示 RVM 不要更改 shell 初始化文件 'rc' / 'profile'

\curl -sSL https://get.rvm.io | bash -s -- --ignore-dotfiles

请注意,从这一点开始,用户有责任将 RVM 源代码添加到相应的文件中。

对于多用户安装,您将执行以下操作

\curl -sSL https://get.rvm.io | sudo bash -s stable

注意:多用户安装说明必须sudo 命令 为前缀。但是,一旦安装完成,并且按照添加用户到 rvm 组的说明进行操作后,就不再需要使用 sudorvmsudosudo 命令仅用于临时提升权限,以便安装程序可以完成其工作。如果您在安装完成后需要使用 sudorvmsudo,则安装说明的某些部分没有正确执行。这通常是因为人们 root 身份执行安装,而不是从非特权用户帐户执行安装说明。

安装特定版本

\curl -sSL https://get.rvm.io | bash -s -- --version latest
\curl -sSL https://get.rvm.io | bash -s -- --branch [owner/][repo]

当然,如果您希望将此应用于多用户安装,请在 'bash' 部分之前加上 'sudo'。请随时查看我们的 升级文档,以获取有关分支格式的更多详细信息。

调试安装过程

\curl -sSL https://get.rvm.io | bash -s -- --trace

如果 rvm 安装脚本抱怨证书,您需要按照显示的说明进行操作。

单用户安装位置:~/.rvm/

如果安装脚本以标准非 root 用户身份运行,RVM 将安装到当前用户的 home 目录中。

用户配置文件(*rc / *profile)的修改 - RVM 默认情况下会修改用户启动文件,虽然不建议您这样做,但您可以禁用自动过程并手动执行此操作

\curl -sSL https://get.rvm.io | bash -s -- --ignore-dotfiles
echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile

多用户安装位置:/usr/local/rvm

如果安装脚本以 sudo 为前缀运行,RVM 将自动安装到 /usr/local/rvm 中。请参阅故障排除页面,了解有关 多用户安装的重要说明

请参阅常见问题解答页面,了解有关 仅 root 安装的重要说明

外部教程

请注意,任何外部教程受支持,无论它们是否有效。教程很棒,但是我们在调试安装过程上花费了大量的人力。请仅使用本网站的安装过程,因为这是唯一支持的安装类型和方法。

更新现有 RVM 安装

只需重新运行安装脚本即可安全更新,或者您可以按照升级文档进行操作。

2. 将 RVM 加载到您的 shell 会话中作为函数

单用户

如果您以单用户身份安装,则 rvm 函数将自动为系统上的每个用户配置。阅读安装程序的输出以检查修改了哪些文件。

多用户

如果您使用 sudo 安装,则 rvm 函数将自动为系统上的每个用户配置。这是通过在登录时加载/etc/profile.d/rvm.sh来实现的。大多数 Linux 发行版默认情况下会解析 /etc/profile,其中包含加载位于/etc/profile.d/目录中的所有文件的逻辑。将您希望能够使用 RVM 的用户添加到 rvm 组后,这些用户必须注销并重新登录以获得 rvm 组成员资格,因为组成员资格仅在初始登录时由操作系统评估。Zsh 并不总是源自/etc/profile,因此您可能需要在/etc/**/zprofile中添加它

source /etc/profile

混合模式(用户 gemsets)

这些用户创建的 Gemsets 将托管在他们的 HOME 目录中。无法从系统使用全局 Gemsets,除非使用手动链接目录等技巧,并且不应在混合模式下使用它们。请记住,在此上下文中,“系统”不指您的发行版的 Ruby 包,而是指 RVM 多用户安装。

您有两种管理 RVM 的方法。第一种是将管理员添加到 rvm 组。第二种是使用单独的管理员以及 rvmsudo 和权限提升。请注意,从混合模式用户使用 rvmsudo 不安全。两者可以混合使用,不会产生任何副作用。但是,非常重要的是不要为管理员启用混合模式 Gemsets 或 Rubies。RVM 在安装 Gemsets、Rubies、更新自身等操作时使用自定义 umask (umask u=rwx,g=rwx,o=rx)。这不会影响您的系统。但是,如果您希望避免 RVM 干扰您的 umask,可以在 /etc/rvmrc 中注释掉 umask 行。

此模式也应该适用于 Passenger,请遵循 Passenger 指令。

3. 重新加载 Shell 配置并测试

关闭当前 Shell 或终端会话,并打开一个新的会话(首选)。您可以使用以下命令加载 RVM

source ~/.rvm/scripts/rvm

如果安装和配置成功,RVM 现在应该在您每次打开新 Shell 时加载。可以通过执行以下命令进行测试,该命令应该输出 rvm is a function,如下所示。

type rvm | head -n 1
rvm is a function

注意:在报告问题之前,请检查 rvm notes,因为它可能包含重要信息。

恭喜!您已成功安装 RVM。

试用您的新 RVM 安装

以下是一些在 RVM 下安装和使用 Ruby 的示例。

显示所有 已知 Rubies 的列表。注意:RVM 可以安装更多未列出的 Rubies。

rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-p374]
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p320]
[ruby-]1.9.3[-p545]
[ruby-]2.0.0-p353
[ruby-]2.0.0[-p451]
[ruby-]2.1[.1]
[ruby-]2.1-head
ruby-head
...

安装一个版本的 Ruby(例如 2.1.1

rvm install 2.1
Checking requirements for opensuse.
Requirements installation successful.
Installing Ruby from source to: /home/mpapis/.rvm/rubies/ruby-2.1.1, this may take a while depending on your cpu(s)...
...
Install of ruby-2.1.1 - #complete
Using /home/mpapis/.rvm/gems/ruby-2.1.1

使用新安装的 Ruby

rvm use 2.1
Using /home/mpapis/.rvm/gems/ruby-2.1.1

检查是否正常工作

ruby -v
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-linux]

which ruby
/home/mpapis/.rvm/rubies/ruby-2.1.1/bin/ruby

可以选择将一个版本的 Ruby 设置为新 Shell 的默认版本。请注意,这会覆盖“系统”Ruby

rvm use 2.1 --default

尽情使用 RVM!

接下来做什么?

如果您是 RVM 的新手,我建议您阅读 基础页面。在基础页面的末尾,还有更多关于入门的链接。

安装故障排除