参考サイトが多く、いつもタブをたくさん開いてしまうのでまとめておく。
rbenv公式:sstephenson/rbenv · GitHub
作業ユーザーを追加
作業ユーザーを追加する。
すでに作成してある場合はスキップ。
# useradd rbuser
# passwd rbuser
ユーザーをwheelグループに追加
作成したユーザーでsudoを使うためにwheelグループに追加する。
# gpasswd -a rbuser wheel
sudoers の設定
rbenvをシステムワイドにインストールする で紹介されている例に倣ってデフォルトの設定ファイルではなく、個別のファイルを作成します。
# visudo -f /etc/sudoers.d/00_base
以下を記述する。
%wheel ALL=(ALL) ALL
Defaults !secure_path
Defaults env_keep += "PATH RBENV_ROOT"
- 1行目
- wheelグループに所属するユーザーがsodoできるようにする
- 2行目
- sudo時のPATHの初期値を設定する secure_path を無効化
- 3行目
- 操作ユーザーのPATHとRBENV_ROOTを引き継ぐ
sudoが使えるようになりましたので、これ以降は一般ユーザーで操作します。
rbenv, ruby-build のインストール
作業用の環境変数設定。
$ export RBENV_ROOT=/usr/local/rbenv
$ export PATH=${RBENV_ROOT}/bin:${PATH}
gitでrbenvとruby-buildを取得。
以後、バージョンアップする場合はそれぞれのディレクトリに移動して sudo git pull
すれば最新版にできる。
$ sudo git clone git://github.com/sstephenson/rbenv.git ${RBENV_ROOT}
$ sudo git clone git://github.com/sstephenson/ruby-build.git ${RBENV_ROOT}/plugins/ruby-build
rbenvを初期化。
$ sudo rbenv init -
設定ファイルにrbenv用の設定追加。
$ sudo bash -c 'cat << \_EOT_ > /etc/profile.d/rbenv.sh
export RBENV_ROOT="/usr/local/rbenv"
export PATH="${RBENV_ROOT}/bin:${PATH}"
eval "$(rbenv init -)"
_EOT_'
シェルを再起動
$ exec ${SHELL} -l
Rubyインストール
$ sudo rbenv install 2.1.2
$ sudo rbenv global 2.1.2
$ sudo rbenv rehash
rbenv install -l
で利用可能なrubyの一覧を表示できる。
パッケージが足りない場合
$ sudo yum -y --enablerepo=remi,epel install zlib zlib-devel readline readline-devel openssl openssl-devel libxml2 libxml2-devel libxslt libxslt-devel
Ruby 2.2.0 の場合
Ruby 2.2.0 をインストールしたときにビルドエラーが発生しました。
こちらの記事を参考にして対応。
$ sudo yum install libffi-devel
bundlerインストール
$ sudo gem install bundler --no-ri --no-rdoc
$ sudo rbenv rehash
bundlerインストール後はプロジェクトごとにGemを管理するのが良いとのこと。