システムレベル(マルチユーザー対応)でのRVMインストール(Ubuntu)

Pocket

以前はFedora14またはUbuntu11.04にRVM1.2.9(1.6.5)の導入 | 記録用手帳にてユーザーレベルのインストール方法を取り扱っていましたが、今度はシステムレベルでのrvmの導入の記事を書いてみたいと思います。

事前にgitとcurlのインストールは完了しているものとします。
最小構成のCentOSだとgitは野良ビルドしないといけなかった気がします・・・。
結構大変でしたよ、gitの野良ビルドは・・・。
事前にrootになってください。Ubuntuでrootで作業したい人はこっちを見てください。

RVMインストール

rootになったら以下のコマンドをタイプします。
頻繁にURLが変わるのでrvmのサイトを一旦確認したほうがいいです。

# bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)

現状は/usr/local/rvm/以下にrvmがインストールされます。
一旦ログインし直してください。以下のような表示がでればOKです。

$ su -
[sudo] password for noguchi: 
# type rvm | head -1
rvm は関数です

以上でRVMのインストールは完了です。

RVMからRubyのインストール

Ruby依存パッケージのインストール

rvm notesコマンドを実行すると事前に導入しておくべきパッケージがリストアップされますので、指示にしたがってインストールを進めてください。

# rvm notes
...
# For Ruby (MRI & ree)  you should install the following OS dependencies:
  ruby: /usr/bin/apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev
...

Rubyインストール

いよいよrubyのインストールを行います。欲張って1.9.2も入れてみましょう。

# rvm install 1.8.7
# rvm install 1.9.2

システム全体のデフォルトで使用させたいrubyを指定しましょう。

# rvm --default use 1.9.2

これでrootではruby1.9.2が使えるようになりました。

ユーザーレベルでrvm関係のコマンドを動作させるように設定する

これをしないとユーザーレベルでrubyを動作させることができません。

rubyを使いたいユーザーの~/.bash_profileの末尾に以下の1行を追加します。
ない場合は~/.bash_profileを新規作成して以下のコードをまるごとコピペしてください。
あと、GNOME端末使ってる人はここも参照してください。

if [ -f ~/.bashrc ]; then
  . ~/.bashrc
fi

[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm" # Load RVM function

Ruby on Railsのgemsetを作成する

rvmにはgemsetという概念があります。
gemsetを使うと異なるバージョンのruby、gemのリストをセパレートして管理することができます。
平たくいうと使用するgemのリストを整理してgemの競合がなくせるらしいです。

ここからはrootユーザではなくsudoならぬrvmsudoを使いながら進めます。

gemsetの作成

$ rvmsudo rvm gemset create rails-3.0.3
'rails-3.0.3' gemset created (/usr/local/rvm/gems/ruby-1.9.2-p180@rails-3.0.3).

ここで以下のようにしてしまうとこの時点ではまだrails-3.0.3のgemsetディレクトリが作成されていないのでエラーになります。

$ rvm gemset use rails-3.0.3
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
-bash: /usr/local/rvm/environments/ruby-1.9.2-p180@rails-3.0.3: 許可がありません
mkdir: ディレクトリ `/usr/local/rvm/wrappers/ruby-1.9.2-p180@rails-3.0.3' を作成できません: 許可がありません
^C

rvmsudoでrails関係のgemをgemsetに入れてからにしましょう。

$ rvmsudo gem install rails --version '3.0.3'
$ rvm gemset use rails-3.0.3

これでOKです。

参考

RVM公式サイト
RVM: Ruby Version Manager - RVM Ruby Version Manager - Documentation
Ubuntuでrootになりたい人はこれ
Ubuntuでrootになるには(sudoを使わない方法) | 記録用手帳
RVMのユーザーレベルインストールはこれ
Fedora14またはUbuntu11.04にRVM1.2.9(1.6.5)の導入 | 記録用手帳
2011/05現在rails3を使おうとすると遭遇するであろうエラー
Ubuntu11.04でmysql2のbundle installが失敗する | 記録用手帳

投稿者紹介

株式会社ユニキャスト
私たちは、テクノロジに魅せられた個性あふれるメンバーによって構成された茨城県日立市に本社を構えるベンチャー企業です。
”テクノロジを通して「驚き」と「感動」を創造し、人々の「夢」と「笑顔」を支えます。” の経営理念をモットーに明るい未来を描き、ワクワクする企画提案を続けて参ります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください