Linux离线安装Ruby详解

huangzonggui 2017-07-07

很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装Ruby,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装。本文主要简单介绍如果离线安装Ruby

Linux离线安装Ruby详解

安装之前我们简单介绍下Ruby

一、Ruby简介

Ruby是一种纯粹的面向对象编程语言。它由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)创建于1993年。

您可以在 www.ruby-lang.org 的 Ruby 邮件列表上找到松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)的名字。在 Ruby 社区,松本也被称为马茨(Matz)。

Ruby 是"程序员的最佳朋友"。

Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk 一样,是一个完美的面向对象语言。使用 Ruby 的语法比使用 Smalltalk 的语法要容易得多。

二、Ruby在线安装

如果您的计算机已经连接到 Internet,那么最简单安装 Ruby 的方式是使用 yumapt-get。在命令提示符中输入以下的命令,即可在您的计算机上安装 Ruby。

1 $ sudo yum install ruby # CentOS, Fedora, 或 RHEL 系统 
2 
3 或 
4 
5 sudo apt-get install ruby-full # Debian 或 Ubuntu 系统

如果你是苹果系统,可以使用 brew 命令安装:

1 $ brew install ruby

三、Ruby离线安装

去官网下载:http://www.ruby-lang.org/en/downloads/ 最新的版本为2.4.1

在安装之前,请确保你Root权限,将下载的Ruby安装包上传到服务器当中,创建一个文件夹进行存放,我们可以随便设置一个文件名,例如:ruby

我们可以通过命令创建文件夹和拷贝,这里我偷懒下,通过xtfp5工具进行上传和文件夹的创建,如下图所示:

Linux离线安装Ruby详解

通过命令进行解压

1 & tar -zxvf ruby-2.4.1.tar.gz

Linux离线安装Ruby详解

我们可以通过命令:ls 查看当前目录,可以发现已经解压成功,看到了解压后的文件夹ruby-2.4.1

Linux离线安装Ruby详解

如图所示,在当前解压的目录下,编辑配置并编译源代码进行安装

1 $ ./configure –-prefix=/usr/local/ruby -prefix是将ruby安装到指定目录,也可以自定义 
2 $ make && make install

我们将ruby安装到了/usr/local/ruby目录下,设置配置文件如图所示

Linux离线安装Ruby详解

安装ruby

Linux离线安装Ruby详解

安装后,通过在命令行中输入以下命令来确保一切工作正常:

1 $ruby -v 
2 ruby 2.4.1……

成功安装如图所示

Linux离线安装Ruby详解

后续:如果安装的过程当中出现如下错误

1 /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:226:in `mkdir': Permission denied @ dir_s_mkdir - /usr/local/ruby (Errno::EACCES) 
2 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:226:in `fu_mkdir' 
3 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:207:in `block (2 levels) in mkdir_p' 
4 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:205:in `reverse_each' 
5 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:205:in `block in mkdir_p' 
6 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:191:in `each' 
7 from /home/cmfchina/ruby/ruby-2.4.1/lib/fileutils.rb:191:in `mkdir_p' 
8 from ./tool/rbinstall.rb:194:in `makedirs' 
9 from ./tool/rbinstall.rb:306:in `prepare' 
10 from ./tool/rbinstall.rb:344:in `block in <main>' 
11 from ./tool/rbinstall.rb:822:in `block in <main>' 
12 from ./tool/rbinstall.rb:819:in `each' 
13 from ./tool/rbinstall.rb:819:in `<main>' 
14 make: *** [do-install-all] Error 1

这个问题是你没有权限在/usr/local/ruby目录下创建文件,这个时候你可以手动去ruby安装目录文件,或者更改安装目录,这之前在上面设置prefix就可以了。

四、Ruby环境变量配置(需要root权限)

方法一、

直接在当前的根目录下,就是ruby的安装目录。输入命令vi .bashrc,然后在其末尾加入如下语句:export PATH=/usr/local/ruby/bin:$PATH

设置PATH路径,把安装的ruby放在系统PATH前面,避免调用操作系统自带的ruby

如图所示:

Linux离线安装Ruby详解

保存退出就可以了(按ESC键,然后输入:wq保存退出)

方法二、(推荐第二种,因为第一种bashrc是系统级的环境变量)

输入命令vim /etc/profile,在文件当中PATH当中加入安装Ruby的bin目录路径。然后保存执行命令:source /etc/profile

$ vi /etc/profile

如图所示:

Linux离线安装Ruby详解

在文件的最后面PATH添加Ruby的bin路径,如图所示

Linux离线安装Ruby详解

保存退出就可以了(按ESC键,然后输入:wq保存退出),其中设置PATH路径,把安装的ruby放在系统PATH前面,避免调用操作系统自带的ruby

最后需要执行命令:source /etc/profile 才能立即生效

$ source /etc/profile

Linux离线安装Ruby详解

特别说明:

一般需要重新注销系统才能生效,最后可以通过echo命令测试一下:

$ echo $PATH

看看输出里面是不是已经有了/usr/local/ruby/bin这个路径了。

至此,Ruby安装完成!

相关推荐