さくらVPS/CentOS 6.4へのRVMのインストール手順 [Ruby 2.0.0][Railsサーバへの道]


さくらVPS 2GB SSDのCentOS 6.4をセットアップしてイケているRailsサーバに仕上げるまでのシリーズです。第7回はRVM(Ruby Version Management)をインストールする手順です。RVMはRubyのバージョンを管理してくれるしくみでひとつのサーバで複数のバージョンのRubyを使う可能性がある場合に使うとオススメなツールです。


😎 パッケージのインストール

もしまだならEPELリポジトリを追加。

sudo rpm -ivh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm

必要なパッケージをインストール。

sudo yum -y install curl curl-devel gcc gcc-c++ git openssl-devel httpd-devel readline-devel tk-devel make zlib-devel libffi-devel
sudo yum --enablerepo=epel -y install libyaml-devel

🏀 RVMのインストール手順

rvmをインストール。

sudo bash -s stable < <(curl -s https: raw.github.com wayneeseguin rvm master binscripts rvm-installer )< span>
  • sudoをつけるとマルチユーザーにインストール(/usr/local/rvm)
  • sudoを外すと使っているユーザーにインストール(~/.rvm/)

rvmグループを作成してrootを追加する。

sudo usermod -a -G rvm root
sudo gpasswd -a USER_NAME rvm
sudo gpasswd -a apache rvm
  • USER_NAMEにはrvmを使うユーザー(ログインユーザー)を追加。

ここでOSの再起動をしてください。そして、rvmの読込とrvmを最新バージョンに更新。

source /etc/profile.d/rvm.sh
rvm get head

rvm requirements

を実行して、rvmで必要なパッケージをインストール。

OSを再起動。

sudo reboot

Ruby 2.0.0のインストール。

rvm install 2.0.0

Ruby 2.0.0をデフォルトに設定。

rvm use 2.0.0 --default

RVMの設定確認。

rvm list
=* ruby-2.0.0-p247 [ x86_64 ] # <= となっていれば成功< span>

今後.rvmrcが設置されたフォルダでは設定を自動で許可するようにする。
vim /etc/rvmrcに次の内容を追加。

rvm_trust_rvmrcs_flag=1

Bundlerをインストールして動作確認。

gem install bundler --no-ri --no-rdoc
> Successfully installed bundler-1.2.3
> 1 gem installed <= で成功< span>

🎃 エラー対策1: mkdir: ディレクトリ `/usr/local/rvm’ を作成できません

もしmkdir: ディレクトリ/usr/local/rvm’ を作成できません: 許可がありませんPermission denied in /usr/local/rvm`というエラーが発生する場合は、次のコマンドを実行。

sudo rm -rf /usr/local/rvm
sudo rm -rf /etc/rvmrc.

でOSを再起動したほうがよさそう。

sudo reboot

😸 エラー対策2: No space left on device

もし、No space left on deviceというエラーはディスクに書き込める容量がないことを表しています。

ディレクトリ単位での使用量上位20位までを探す場合のコマンドは次のとおり。

du -k / | sort -n | tail -20

100MB以上のファイルを探す場合のコマンドは次のとおりです。

find / -size 100000K -ls

🐯 メモ: RVMを再インストール

何かの理由でRVMを再インストールする場合の削除コマンドは次のとおり。

rvm implode
sudo rm -rf /etc/rvmrc

OSを再起動したほうがよさそう。

sudo reboot

🎳 メモ: ユーザーの所属しているグループを調べる

idコマンドでユーザーの所属しているグループが調べられる

id root
> uid=0(root) gid=0(root) 所属グループ=0(root),501(rvm)

👽 参考リンク

tmaeda hiki - Passenger と RVM で複数 gemset でのアプリケーション運用PassengerWithRvm)

CentOSにRVMをマルチユーザ用にインストール

Installing RVM, Ruby on Rails, and Passenger on Centos 6

CentOS 6.2 に RVM、Ruby、Ruby on Rails をインストール

開発環境: 仮想CentOSでRuby開発めも

グループにメンバーを追加する gpasswd -a user group - ok

ユーザーのユーザーIDやグループIDを調べるには

usermod ユーザのアカウントを変更する - UNIXコマンド辞典:CodeZine(コードジン)

LINUXで、ディスクの空き領域がなくなってきているのですが、サイズの大きいファイルやフォルダを探したいと考えています。

🚌 変更来歴

12/14 20:25タイトルを変更、全体の構成をシリーズものに合わせて編集

12/14 22:10エラー対策、本文を修正(何度がテストして一番いい方法を採用)

12/15 14:30計5回くらいインストールと削除を繰返してやっと設定の流れを理解/修正

09/24 06:45 Ruby 2.0.0対応 & CentOS 6.4対応、記述ミス修正

🍣 検証環境

今回の記事の検証環境は以下のとおりです。

Local/Server:
  Ruby: 2.0.0
  Rails: 4.0.0

Local:
  OS: Mac Mountain Mountain Lion(macOS 10.8.4)

Server(さくらVPS 2G SSD):
    CentOS release 6.4 (Final)

🖥 VULTRおすすめ

VULTR」はVPSサーバのサービスです。日本にリージョンがあり、最安は512MBで2.5ドル/月($0.004/時間)で借りることができます。4GBメモリでも月20ドルです。 最近はVULTRのヘビーユーザーになので、「ここ」から会員登録してもらえるとサービス開発が捗ります!

📚 おすすめの書籍