在 CentOS Linux 上配置 Ruby

Ruby 是一门非常适合 Web 开发和 Linux 管理的语言。Ruby 提供了前面讨论过的所有语言中的许多优点:PHP、Python 和 Perl。

要安装 Ruby,最好通过 rbenv 进行引导,这样管理员就可以轻松安装和管理 Ruby 环境。

安装 Ruby 的另一种方法是使用标准的 CentOS 软件包。建议使用 rbenv 方法,充分利用其所有优点。对于不熟悉 Ruby 的人来说,CentOS 软件包会更容易。

首先,让我们获取 rbenv 安装程序所需的一些依赖项。

  • git-core
  • zlib
  • zlib-devel
  • gcc-c++
  • patch
  • readline
  • readline-devel
  • libyaml-devel
  • libffi-devel
  • openssl-devel
  • make
  • bzzip2
  • autoconf
  • automake
  • libtool
  • bison
  • curl
  • sqlite-devel

根据安装 CentOS 时选择的选项和角色,这些软件包中的大多数可能已经安装。最好安装所有我们不确定的软件包,因为这样在安装需要依赖项的软件包时可以减少麻烦。

[root@CentOS]# yum -y install git-core zlib zlib-devel gcc-c++ patch readline
readline-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf
automake libtool bison curl sqlite-devel

方法 1 − rbenv 用于动态 Ruby 开发环境

现在作为将使用 Ruby 的用户 −

[rdc@CentOS ~]$ git clone https://github.com/rbenv/rbenv.git
[rdc@CentOS ~]$ https://github.com/rbenv/ruby-build.git

ruby-build 将为 rbenv 提供安装功能 −

注意 −在运行 install.sh 之前,我们需要切换到 root 或管理员用户。

[rdc@CentOS ruby​​-build]$ cd ~/ruby-build
[rdc@CentOS ruby​​-build]# ./install.sh

让我们为 rbenv 设置 shell,并确保我们安装了正确的选项。

[rdc@CentOS ~]$ source ~/rbenv/rbenv.d/exec/gem-rehash.bash

[rdc@CentOS ruby-build]$ ~/rbenv/bin/rbenv  
rbenv 1.1.0-2-g4f8925a 
Usage: rbenv <command> [<args>]

一些有用的 rbenv 命令是 −

命令 操作
local 设置或显示本地特定于应用程序的 Ruby 版本
global 设置或显示全局 Ruby 版本
shell 设置或显示特定于 shell 的 Ruby 版本
install 使用 ruby​​-build 安装 Ruby 版本
uninstall 卸载特定Ruby 版本
rehash 重新哈希 rbenv shim(安装可执行文件后运行)
version 显示当前 Ruby 版本及其来源
versions 列出 rbenv 可用的所有 Ruby 版本
which 显示可执行文件的完整路径
whence 列出包含给定可执行文件的所有 Ruby 版本

现在让我们安装 Ruby −

[rdc@CentOS bin]$ ~/rbenv/bin/rbenv install -v 2.2.1

编译完成后 −

[rdc@CentOS ~]$ ./ruby -v
ruby 2.2.1p85 (2015-02-26 修订版 49769) [x86_64-linux]
[rdc@CentOS ~]$

我们现在有一个可用的 Ruby 环境,其中包含更新且可用的 Ruby 2.X 分支版本。

方法 2 − 从 CentOS 软件包安装 Ruby

这是最简单的方法。但是,它可能受到 CentOS 打包的版本和 gem 的限制。对于严肃的开发工作,强烈建议使用 rbenv 方法安装 Ruby。

安装 Ruby、所需的开发包和一些常用 gem。

[root@CentOS rdc]# yum install -y ruby​​.x86_64 ruby​​-devel.x86_64 ruby​​-
libs.x86_64 ruby​​-gem-json.x86_64 ruby​​gem-rake.noarch

不幸的是,我们留下的 Ruby 版本有些过时了。

[root@CentOS rdc]# ruby -v 
ruby 2.0.0p648 (2015-12-16) [x86_64-linux]
[root@CentOS rdc]#