Ruby学习笔记之升级ruby的版本
升级ruby版本,有时候安装ruby的版本过低,需要进行升级,例如安装在centos6.7安装fpm需要ruby版本在1.9以上。
0x00 主机环境如下
[root@test ~]# cat /etc/redhat-release
CentOS release 6.7 (Final) [root@test ~]# uname -r 2.6.32-573.el6.x86_64
0x01 使用yum安装ruby
[root@web ~]# yum install rubygems ruby-devel
0x02 查看ruby的版本
[root@web ~]# ruby -v ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
0x03 升级ruby1.9.3版本
1)删除原来的rubygems仓库
[root@web ~]# gem sources --remove http://rubygems.org/
2)添加aliyun的rubygems仓库
[root@web ~]# gem sources -a http://mirrors.aliyun.com/rubygems/
3)查看rubygems仓库
[root@web ~]# gem sources -l *** CURRENT SOURCES *** http://mirrors.aliyun.com/rubygems/
4)使用RVM进行升级ruby
a:在rvm官方网址:https://rvm.io/执行如下命令:
[root@web ~]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB gpg: requesting key D39DC0E3 from hkp server keys.gnupg.net gpg: requesting key 39499BDB from hkp server keys.gnupg.net gpg: key D39DC0E3: "Michal Papis (RVM signing) <mpapis@gmail.com>" not changed gpg: key 39499BDB: public key "Piotr Kuczynski <piotr.kuczynski@gmail.com>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 2 gpg: imported: 1 (RSA: 1) gpg: unchanged: 1
b:接着执行如下命令:
[root@web ~]# \curl -sSL https://get.rvm.io | bash -s stable Downloading https://github.com/rvm/rvm/archive/1.29.3.tar.gz curl: (35) SSL connect error Could not download 'https://github.com/rvm/rvm/archive/1.29.3.tar.gz'. curl returned status '35'. Downloading https://bitbucket.org/mpapis/rvm/get/1.29.3.tar.gz Downloading https://bitbucket.org/mpapis/rvm/downloads/1.29.3.tar.gz.asc curl: (7) couldn't connect to host Could not download 'https://bitbucket.org/mpapis/rvm/downloads/1.29.3.tar.gz.asc'. curl returned status '7'. Creating group 'rvm' Installing RVM to /usr/local/rvm/ Installation of RVM in /usr/local/rvm/ is almost complete: * First you need to add all users that will be using rvm to 'rvm' group, and logout - login again, anyone using rvm will be operating with `umask u=rwx,g=rwx,o=rx`. * To start using RVM you need to run `source /etc/profile.d/rvm.sh` in all your open shell windows, in rare cases you need to reopen all shell windows.
c:执行上述命令 * To start using RVM you need to run `source /etc/profile.d/rvm.sh`
[root@web ~]# source /etc/profile.d/rvm.sh
0x04 查看RVM可安装的ruby的版本
[root@web ~]# rvm list known # MRI Rubies [ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p648] [ruby-]2.1[.10] [ruby-]2.2[.7] [ruby-]2.3[.4] [ruby-]2.4[.1] ruby-head # for forks use: rvm install ruby-head-<name> --url https://github.com/github/ruby.git --branch 2.2 # JRuby jruby-1.6[.8] jruby-1.7[.27] jruby[-9.1.13.0] jruby-head # Rubinius rbx-1[.4.3] rbx-2.3[.0] rbx-2.4[.1] rbx-2[.5.8] rbx-3[.84] rbx-head # Opal opal # Minimalistic ruby implementation - ISO 30170:2012 mruby-1.0.0 mruby-1.1.0 mruby-1.2.0 mruby-1[.3.0] mruby[-head] # Ruby Enterprise Edition ree-1.8.6 ree[-1.8.7][-2012.02] # Topaz topaz # MagLev maglev[-head] maglev-1.0.0 # Mac OS X Snow Leopard Or Newer macruby-0.10 macruby-0.11 macruby[-0.12] macruby-nightly macruby-head # IronRuby ironruby[-1.1.3] ironruby-head
0x05 安装ruby-2.2版本
[root@web ~]# rvm install 2.2 Searching for binary rubies, this might take some time. Found remote file https://rvm_io.global.ssl.fastly.net/binaries/centos/6/x86_64/ruby-1.9.3-p551.tar.bz2 Checking requirements for centos. Installing requirements for centos. Installing required packages: libffi-devel, readline-devel, sqlite-devel, zlib-devel, libyaml-devel, openssl-devel...........| Requirements installation successful. ruby-1.9.3-p551 - #configure ruby-1.9.3-p551 - #download % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 10.2M 100 10.2M 0 0 188k 0 0:00:55 0:00:55 --:--:-- 223k ruby-1.9.3-p551 - #validate archive ruby-1.9.3-p551 - #extract ruby-1.9.3-p551 - #validate binary ruby-1.9.3-p551 - #setup ruby-1.9.3-p551 - #gemset created /usr/local/rvm/gems/ruby-1.9.3-p551@global ruby-1.9.3-p551 - #importing gemset /usr/local/rvm/gemsets/global.gems................................... ruby-1.9.3-p551 - #generating global wrappers........ ruby-1.9.3-p551 - #gemset created /usr/local/rvm/gems/ruby-1.9.3-p551 ruby-1.9.3-p551 - #importing gemsetfile /usr/local/rvm/gemsets/default.gems evaluated to empty gem list ruby-1.9.3-p551 - #generating default wrappers........
0x06 查看ruby是否升级成功
[root@web ~]# ruby -v ruby 2.2.7p551 (2014-11-13 revision 48407) [x86_64-linux]
至此,ruby版本升级成功