さくら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 |
🏀 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 |
USER_NAME
にはrvmを使うユーザー(ログインユーザー)を追加。
ここでOSの再起動をしてください。そして、rvmの読込とrvmを最新バージョンに更新。
source /etc/profile.d/rvm.sh |
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 |
今後.rvmrc
が設置されたフォルダでは設定を自動で許可するようにする。vim /etc/rvmrc
に次の内容を追加。
rvm_trust_rvmrcs_flag=1 |
Bundlerをインストールして動作確認。
gem install bundler --no-ri --no-rdoc |
🎃 エラー対策1: mkdir: ディレクトリ `/usr/local/rvm’ を作成できません
もしmkdir: ディレクトリ
/usr/local/rvm’ を作成できません: 許可がありませんか
Permission denied in /usr/local/rvm`というエラーが発生する場合は、次のコマンドを実行。
sudo rm -rf /usr/local/rvm |
で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 |
OSを再起動したほうがよさそう。
sudo reboot |
🎳 メモ: ユーザーの所属しているグループを調べる
idコマンドでユーザーの所属しているグループが調べられる
id root |
👽 参考リンク
tmaeda hiki - Passenger と RVM で複数 gemset でのアプリケーション運用PassengerWithRvm)
Installing RVM, Ruby on Rails, and Passenger on Centos 6
CentOS 6.2 に RVM、Ruby、Ruby on Rails をインストール
グループにメンバーを追加する gpasswd -a user group - ok
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)