很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装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 离线安装Rubygems详解

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

  2. Linux 安装Ruby详解(在线和离线安装)

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

  3. Android SDK离线安装方法详解(加速安装) 转

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助! 离线安装包下载地址:http://dl.vmall.com/c ...

  4. Android SDK离线安装方法详解(加速安装)

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助 一,首先下载SDK的安装包,android-sdk_r10-wi ...

  5. linux下安装apache详解

    下载httpd-2.2.6.tar.bz2  把httpd-2.2.6.tar.bz2放到/soft 下[root@localhost ~]#cd /soft[root@localhost soft] ...

  6. Linux pip安装使用详解

    简介 pip是Python有它自己的包管理工具,与yum和apt-get相似. 安装步骤: 1.下载get-pip.py:https://bootstrap.pypa.io/get-pip.py 2. ...

  7. VS2019 离线安装方法详解

    本文详细介绍了 VS2019 离线安装的相关步骤,以桌面开发为主下载 C++桌面开发..NET 桌面开发相关的工作负载.MFC 可选组件及帮助查看器. 工作负载(Workload) 离线安装需要先根据 ...

  8. linux下安装gcc详解

    1.了解一下gcc 目前,GCC可以用来编译C/C++.FORTRAN.JAVA.OBJC.ADA等语言的程序,可根据需要选择安装支持的语言.我自己linux上是4.1.2版本,是不支持openMP的 ...

  9. linux centos7安装phpMyAdmin详解,以及解决各种bug问题

    使用php和mysql开发网站的话,phpmyadmin和navicat是目前非常好的mysql管理工具,但是phpmyadmin最主要是免费开源,目前很多集成的开发环境都会自带phpmyadmin, ...

随机推荐

  1. Ultimus BPM 房地产与建筑行业应用解决方案

    Ultimus BPM 房地产与建筑行业应用解决方案 行业应用需求 房地产与建筑行业客户业务特点是集团化管控,多区域.多项目.多业态管理,而行业业务往往项目周期长,涉及专业复杂,客户越来越重视管理和跟 ...

  2. meta标签属性总结

    一.常见name属性.不同参数含义 meta标签的name属性语法格式是: <meta name="参数" content="具体的参数值"> 其中 ...

  3. 用R语言对一个信用卡数据实现logit,GBM,knn,xgboost

    Prepare the data 数据来自UCIhttp://archive.ics.uci.edu/ml/machine-learning-databases/credit-screening,一个 ...

  4. NetFramework各个版本的特性笔记

    公式记忆: .Net 2.0=CLR+BCL+C#(VB.Net)+Win Form+Web Form .Net 3.0=.Net 2.0+WCF+WPF+WF+WCS .Net 3.5=.Net 3 ...

  5. java中文件操作《一》

    在日常的开发中我们经常会碰到对文件的操作,在java中对文件的操作都在java.io包下,这个包下的类有File.inputStream.outputStream.FileInputStream.Fi ...

  6. RabbitMQ系列教程之一:我们从最简单的事情开始!Hello World

    一.简介      RabbitMQ是一个消息的代理器,用于接收和发送消息,你可以这样想,他就是一个邮局,当您把需要寄送的邮件投递到邮筒之时,你可以确定的是邮递员先生肯定会把邮件发送到需要接收邮件的人 ...

  7. Webpack新手入门教程(学习笔记)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 30.0px Helvetica; color: #000000 } ...

  8. javaCV开发详解之6:本地音频(话筒设备)和视频(摄像头)抓取、混合并推送(录制)到服务器(本地)

    javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...

  9. Bottle源码阅读笔记(二):路由

    前言 程序收到请求后,会根据URL来寻找相应的视图函数,随后由其生成页面发送回给客户端.其中,不同的URL对应着不同的视图函数,这就存在一个映射关系.而处理这个映射关系的功能就叫做路由.路由的实现分为 ...

  10. winform中的 datagriview 字段自动填充长度

    在winfrom 的 datagridview 中 绑定字段 经常回在最后面空出一部分来,显得不美观, 现在教大家如何让它自适应宽度 public static void Autogrid(DataG ...