Amazon Linuxでユーザ共通で使えるパスにrbenvを入れてrubyをインストールした

rbenvを普通に導入するとカレントディレクトリの~/.rbenvにrubyをインストールする事になると思いますが、Amazon Linuxでglobalなrubyの環境を指定したくてユーザが共通で使える場所に入れることにしたのでメモ。

rubyのビルドに必要なパッケージを入れる

$ yum install -y git gcc make readline-devel openssl-devel

rbenvを入れる

$ cd /usr/local
$ git clone git://github.com/sstephenson/rbenv.git rbenv
$ mkdir rbenv/{shims,versions} 
$ chgrp -R ec2-user rbenv
$ chmod -R g+rwxXs rbenv
$ mkdir /usr/local/rbenv/plugins
$ cd /usr/local/rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git
$ chgrp -R ec2-user ruby-build
$ chmod -R g+rwxs ruby-build

ユーザの環境設定

$ echo 'export RBENV_ROOT=/usr/local/rbenv' >> /etc/bashrc
$ echo 'export PATH="$RBENV_ROOT/bin:$PATH"' >> /etc/bashrc
$ echo 'eval "$(rbenv init -)"' >> /etc/bashrc
$ source ~/.bashrc
  • /etc/bashrcにはどのユーザも読み込まれる設定を書いておく

rubyをインストールしてglobalのバージョンに設定する

$ rbenv install 1.9.3-p0 && rbenv global 1.9.3-p0

これで/usr/local/rbenv以下のrubyを使えるようになりましたー

$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]

$ which ruby
/usr/local/rbenv/shims/ruby
$ which gem
/usr/local/rbenv/shims/gem