环境需求
在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4…那就有点麻烦了,譬如:我准备使用redis官方给的工具:redis-trib.rb 这个工具构建redis集群的时候,报错了:“redis requires Ruby version >= 2.2.2”网上搜索了一圈,概括为以下三种方法:
①添加yum源安装:CentOS SCLo Software collections Repository(简单快捷)
②下载tar压缩包安装(略微繁琐)
③RVM(Ruby Version Manager)安装(相对官方)
具体操作:
方法一:换yum源安装
~]# yum install centos-release-scl-rh //会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源
~]# yum install rh-ruby23 -y //直接yum安装即可
~]# scl enable rh-ruby23 bash //必要一步
~]# ruby -v //查看安装版本
续:接上文提到的报错问题:“redis requires Ruby version >= 2.2.2”
~]# gem install redis
然后,redis-trib.rb这个二进制文件就可以使用了,用来构建redis集群,相关内容可以参考之前的文章,见方法二。
方法二:下载tar压缩包安装
1.下载源码包
wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.7.tar.gz
下载失败提示Unable to establish SSL connection.
换种方式,下载成功
curl -O -L https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.7.tar.gz
2.解压并编译安装
tar xf ruby-2.2.7.tar.gz
cd ruby-2.2.7
./configure --prefix=/usr/local/ruby-2.2.7
make && make install
3.创建快捷键
需要先删除旧的快捷方式重新创建
ln -s /usr/local/ruby-2.2.7/bin/ruby /usr/bin/ruby
ruby -v
ruby 2.2.7p470 (2017-03-28 revision 58194) [x86_64-linux]
方法三:RVM 安装
先执行一条官方 https://rvm.io/ 复制来的长命令(...C0E3空格7D2B...):
~]#gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
可能会等待十几秒时间,然后执行下面命令:
~]# \curl -sSL https://get.rvm.io | bash -s stable
~]# source /etc/profile.d/rvm.sh //按照提示,执行该命令
~]# rvm list known // list一下可以安装的版本
~]# rvm install 2.4.1 // 安装ruby 2.4.1 ,直接跟版本号即可
~]# ruby -v //查看验证下已经安装的版本
~]# gem -v
至此,ruby安装完成了。