在 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 rubygem-rake.noarch
不幸的是,我们留下的 Ruby 版本有些过时了。
[root@CentOS rdc]# ruby -v ruby 2.0.0p648 (2015-12-16) [x86_64-linux] [root@CentOS rdc]#