很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装Ruby,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装。本文主要简单介绍如果离线安装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 的方式是使用 yum 或 apt-get。在命令提示符中输入以下的命令,即可在您的计算机上安装 Ruby。

 $  sudo yum install ruby    # CentOS, Fedora, 或 RHEL 系统

 或

 sudo apt-get install ruby-full # Debian 或 Ubuntu 系统

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

 $ brew install ruby

三、Ruby离线安装

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

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

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

  通过命令进行解压

 & tar -zxvf ruby-2.4..tar.gz

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

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

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

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

安装ruby

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

 $ruby -v
ruby 2.4.……

成功安装如图所示

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

 /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `mkdir': Permission denied @ dir_s_mkdir - /usr/local/ruby (Errno::EACCES)
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `fu_mkdir'
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `block ( levels) in mkdir_p'
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `reverse_each'
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `block in mkdir_p'
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `each'
from /home/cmfchina/ruby/ruby-2.4./lib/fileutils.rb::in `mkdir_p'
from ./tool/rbinstall.rb::in `makedirs'
from ./tool/rbinstall.rb::in `prepare'
from ./tool/rbinstall.rb::in `block in <main>'
from ./tool/rbinstall.rb::in `block in <main>'
from ./tool/rbinstall.rb::in `each'
from ./tool/rbinstall.rb::in `<main>'
make: *** [do-install-all] Error

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

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

命令:

$ which ruby

如果没有找,则需要进行环境变量的设置,有则无需设置了,后面内容就不用去看了,啦啦啦~~~~。。

方法一、

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

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

如图所示:

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

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

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

$ vi /etc/profile

如图所示:

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

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

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

$ source /etc/profile

特别说明:

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

$ echo $PATH 

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

至此,Ruby安装完成!

PS:如有问题,请留言,未经允许不得私自转载,转载请注明出处http://www.cnblogs.com/xuliangxing/p/7132656.html

Linux 安装Ruby详解(在线和离线安装)的更多相关文章

  1. Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)

    一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...

  2. Linux离线安装Ruby详解

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

  3. 【终极指南】图文详解Chrome插件离线安装方法

    Chrome插件离线安装背景介绍 因为无法访问Google所以国内用户目前大多只能通过第三方比如我们Chrome插件网下载插件,然后离线安装.Chrome官方自67版本后,只允许用户通过谷歌应用商店安 ...

  4. linux常用命令详解 (一) 安装和登录命令

    Linux必学的60个命令   Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作.文件存   Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取. ...

  5. nginx在线与离线安装

    1.场景描述 项目要部署到新的服务器上,需要安装nginx,刚好安全部门通知了nginx存在安全漏洞(Nginx整数溢出漏洞,nginx1.13.2之后的版本无问题),就下载最新的nginx进行了安装 ...

  6. Oracle11g R2客户端安装图文详解过程

    转: Oracle11g R2客户端安装图文详解过程 2018-06-17 13:30:26 大话JAVA的那些事 阅读数 4129更多 分类专栏: Oracle   版权声明:本文为博主原创文章,遵 ...

  7. Linux 离线安装Rubygems详解

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

  8. linux PHP 编译安装参数详解

    linux PHP 编译安装参数详解 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc -- ...

  9. 【转】postgresql 9.4 在linux环境的安装步骤详解

    本文章来为各位介绍一篇关于postgresql 9.4 在linux环境的安装步骤详解,希望文章能够对各位新手朋友带来帮助的哦. 环境说明系统:centos 6.4 64位软件:postgresql ...

随机推荐

  1. com.ibm.msg.client.jms.DetailedJMSSecurityException: JMSWMQ2013: 为队列管理器提供的安全性认证无效

    com.ibm.msg.client.jms.DetailedJMSSecurityException: JMSWMQ2013: 为队列管理器“zm_queue_manager”提供的安全性认证无效, ...

  2. MySql:charset和collation的设置

    From: http://www.2cto.com/database/201302/189920.html MySql:charset和collation的设置   charset 和 collati ...

  3. YII2 搭建redis拓展

    安装redis扩展: 1.通过composer进行安装,到项目根目录cmd运行(推荐) php composer.phar require --prefer-dist yiisoft/yii2-red ...

  4. ubuntu安装mongo数据库

    安装mongo数据库,在shell下输入 sudo apt-get install mongodb 如果需要在Python中使用mongo数据库,还需要额外安装Python封装库 pip instal ...

  5. IOS_多线程

    苹果的Cocoa框架支持的多线程机制有三中NSThread.GCD.NSOperation. NSThread:是官方推荐的也是最主要的线程创建方式,可是须要开发这自己去管理线程的生命周期比如线程同步 ...

  6. 安卓开发笔记——Fragment+FragmentTabHost组件(实现新浪微博底部菜单)

    记得之前写过2篇关于底部菜单的实现,由于使用的是过时的TabHost类,虽然一样可以实现我们想要的效果,但作为学习,还是需要来了解下这个新引入类FragmentTabHost 之前2篇文章的链接: 安 ...

  7. 【WP8】图片压缩处理

    最近在做图片上传功能,类似于微信朋友圈的功能,现在的手机像素都比较高,手机上的图片一般都比较大(几M),对于大图,在上传之前,我们需要对图片进行压缩(分辨率和质量),再上传到服务器,以减少网路流量传输 ...

  8. 【LFM】隐语义模型

    模型解释: http://blog.csdn.net/harryhuang1990/article/details/9924377

  9. git恢复本地删除的文件夹取消增加的文件

    git项目中有时候会在本地增加或者删除了一些文件或者文件夹,但是又不想提交,一般情况下,我们取消本地所有修改: git checkout . 取消指定文件修改: git checkout filena ...

  10. django test模块

    今天试了试django自带的test模块,断点执行到一下代码中时发现一点儿小问题: def _create_test_db(self, verbosity, autoclobber): "& ...