Rubyのインストーラといえば RVM や rbenv+ruby-build が有名ですが、最近新たに ruby-install が登場しました。
ruby-install は rvm use
や rbenv local
のような Ruby 環境の切り替えや管理の機能はなく、Ruby のビルドとインストールだけに特化しているようです。また各ユーザ毎にインストールするのが一般的な RVM や rbenv と違い、ruby-install はデフォルトで /usr/local
以下にインストールされるため、システムワイドに使う運用にも適しています。
rbenv の開発者である Sam Stephenson 氏も ruby-install の方針に対して、以下のように好意的な反応を示しています。
@postmodern_mod3 I like the approach you’re taking. Curious to see how it plays out.
— Sam Stephensonさん (@sstephenson) 2013年5月15日
** ruby-install のインストール
ruby-install では普通にアーカイブをダウンロードして make install
することでインストールします。デフォルトでは /usr/local
以下にインストールされます。
>||
$ wget -O ruby-install-0.1.3.tar.gz https://github.com/postmodern/ruby-install/archive/v0.1.3.tar.gz
$ tar -xzvf ruby-install-0.1.3.tar.gz
$ cd ruby-install-0.1.3/
$ sudo make install
||<
ホームディレクトリ以下など、任意のディレクトリにインストールしたい場合は PREFIX
を指定してインストールします。
>||
$ make install PREFIX=$HOME/install
||<
** Ruby のインストール
Ruby のインストールは ruby-install ruby
を実行します。バージョンを指定しない場合は最新安定板がインストールされます。
筆者は CentOS 6.4 で試しましたが、yum-plugin-security をインストールしていないと yum の実行に失敗するようです。この場合は先に yum install yum-plugin-security
を実行しておく必要があります。
>||
$ sudo yum install yum-plugin-security
$ sudo ruby-install ruby
||<
インストールするバージョンを指定したい場合は ruby-install ruby 2.0
のようにします。
>||
$ sudo ruby-install ruby 2.0
||<
利用可能なバージョンのリストはオプション無しで ruby-install
を実行すると表示されます。
>||
$ ruby-install
Supported Rubies:
ruby:
1.8: 1.8.7-p371
1.8.7: 1.8.7-p371
1.9: 1.9.3-p429
1.9.3: 1.9.3-p429
2.0: 2.0.0-p195
2.0.0: 2.0.0-p195
stable: 1.9.3-p429
jruby:
1.7: 1.7.4
stable: 1.7.4
rubinius:
1.2: 1.2.4
2.0: 2.0.0-rc1
2.0.0: 2.0.0-rc1
stable: 2.0.0-rc1
||<
root でインストールした場合、デフォルトでは /opt/rubies
以下に、一般ユーザの場合は ~/.rubies
に Ruby がインストールされます。
インストールした Ruby を使う場合は自分で PATH
を設定しておく必要があります。
>||
$ PATH=/opt/rubies/ruby-2.0.0-p195/bin ruby –version
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-linux]
||<
ruby-install のコマンドラインオプションの詳細は ruby-install --help
や README で確認できます。
** まとめ
ruby-install は Ruby のビルド・インストールのみに特化したインストーラで、システムワイドに使う運用に適しています。使い方は簡単で動作もわかりやすいので、サーバに Ruby をインストールする時に試してみてはいかがでしょうか。
投稿者紹介
- サーバ運用もできるプログラマと化した、2013年入社の元新人エンジニアです。
最近のエントリ
- 勉強会2017.03.10ユニキャストの勉強会のご紹介
- Ruby2014.05.16[ruby-install] Rubyのバージョン切替えスクリプトを書いた
- CentOS2014.05.14OpenLDAPサーバーを構築する
- Ruby2013.12.17AutomaticRubyとChatWorkを連携させる
1件のコメント