Linux(CentOS)の環境が用意できたら、さっそくRubyをインストールしてみましょう。
この記事では、「rbenv」とよばれるツールを使って、Rubyのインストールを進めていきます。
「rbenv」の導入や使い方はそこまで難しくないのですが、Linux初心者にはハマりやすいポイントがいくつかあるので、丁寧に解説していきますね。
ちゃちゃっとRubyをインストールして、プログラミングできる環境を手に入れましょう!
もくじ
RubyをLinux(CentOS)にインストールする理由
WindowsやMacに直接Rubyをインストールすることもできるのですが、僕はLinux(CentOS)環境にインストールすることをおすすめします。
理由は、以下の2つです。
- Linuxの中なら壊してもリスクがない
- 実際の業務ではLinux環境が圧倒的に多い
WindowsやMacで開発を続けていると、何かの操作がキッカケで問題が起きたときに、元に戻すのが大変だったりします。
ですが、自分で作ったLinux環境なら、いつでも簡単にLinux自体を作り直すことができるので、リスクは少ないのです。
また、実際の現場ではLinux環境が圧倒的に多いので、早いうちから慣れるためにも、Linuxの中でRubyを扱えるようになったほうがメリットがあるのです。

rbenvとは
rbenvとは、Rubyの「インストール」と「バージョン切替」を簡単におこなえるようにするためのツールです。
通常、RubyをLinuxにインストールする場合、指定した1つのバージョンのRubyしかインストールできません。
そのため、新しいバージョンにアップデートしたり、1つ前のバージョンに戻したりすると、Linuxの中にあるRubyシステムすべてに影響してきますし、この作業も思っている以上に面倒です。
rbenvなら、Linuxの中にバージョンが異なる複数のRubyをインストールし、どのバージョンを使うのかをRubyシステムごとに切り替えることができます。
もちろん、1つのアプリしか入っていかったとしても、簡単にバージョンを切り替えられるメリットもあるので、導入して損をすることはありません。
rbenvのインストール
では、さっそく「rbenv」をインストールしてみましょう。
以下の手順で進めていきますね。
- Gitのインストール
- rbenvのインストール
- rbenvの設定
- rbenvの確認
- ruby-buildのインストール
1. Gitのインストール
rbenvは「Git」を使ってインストールします。
まだ、LinuxにGitをインストールしていない方は、「yum(ヤム)」を使ってインストールしましょう。
$ sudo yum install -y git
インストール後に、「Complete!」と表示されていればOKです。
yumコマンドについて詳しく知りたい方は、以下の記事をお読みください。

2. rbenvのインストール
Gitを使って、rbenvをLinuxにインストールします。
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
上のコマンドでは、rbenvのGitリポジトリをclone(複製)して、ホームディレクトリの下に配置しています。


3. rbenvの設定
rbenvをインストールしただけでは、まだ使えません。
rbenvコマンドを使えるようにするためには、以下のコマンドを実行して設定を完了させる必要があります。
# 「~/.rbenv/bin」を環境変数に追加するための記述を「~/.bash_profile」に追記
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
# rbenvを初期化する記述を「~/.bash_profile」に追記
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
# ~/.bash_profileを再読み込み
$ exec $SHELL -l
「>>」は、左にあるコマンドの実行結果を右のファイルに追記するというコマンド。
「~/.bash_profile」はログインされたときに、自動で読み込まれるファイルになります。
つまり、ここでは「ログインするたびにrbenvで必要な設定を読み込ませる」という作業をしているのです。
環境変数「PATH」については、以下の記事でも解説しています。

4. rbenvの確認
rbenvが使えるようになったか確認してみましょう。
$ rbenv --version
rbenv 1.1.2
バージョンによって表示結果は多少違いますが、上のようにrbenvのバージョンが表示されていれば大丈夫です。
「-bash: rbenv: command not found」と表示された場合は、rbenvの設定が間違っている可能性がありますので、「vi」コマンドで修正しましょう。
$ vi ~/.bash_profile

5. ruby-buildのインストール
rbenvを実行させるために必要なプラグイン「ruby-build」をインストールします。
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenvの使い方(Rubyのインストール)
これで、rbenvの準備は整いました!
ここからは、実際にRubyをインストールするための「rbenvの使い方」を紹介していきます。
Rubyのバージョンリストを表示
インストールできるRubyのバージョンを表示します。
$ rbenv install --list
Available versions:
1.8.5-p52
1.8.5-p113
1.8.5-p114
:
2.6.0
2.6.1
2.6.2
:
Rubyのインストール
バージョンを指定して、Rubyをインストールしましょう。
$ rbenv install -v 2.6.2
上のコマンドを実行すると、以下のようなエラーメッセージが出る場合があります。
configure: error: no acceptable C compiler found in $PATH
これは「C言語のコンパイラが$PATHにないからわからないよ!(つまりインストールされてない)」って怒っているので、Cコンパイラ(gcc)をyumでインストールしましょう。
$ sudo yum -y install gcc
「gcc」のインストールが終わったら、もう一度さきほどのRubyのインストールコマンドを実行しましょう。
すると、今度は違うエラーで処理が止まってしまうはずです。
The Ruby openssl extension was not compiled.
The Ruby readline extension was not compiled.
The Ruby zlib extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Try running `yum install -y openssl-devel readline-devel zlib-devel` to fetch missing dependencies.
ここでエラーをよく読むと、「Try running `yum install -y openssl-devel readline-devel zlib-devel` to fetch missing dependencies.」と書いてあります。
簡単にいうと「このコマンド試してみてね!」ってことなので、表示されているコマンドを実行してみましょう。
$ sudo yum install -y openssl-devel readline-devel zlib-devel
上のコマンドを実行したあとは、もう一度Rubyをインストールしてみましょう。
これで問題なくRubyがインストールされるはずです。
インストールされているRubyのバージョン確認
LinuxにインストールされているRubyのバージョンを確認します。
$ rbenv versions
2.6.2
有効にするRubyのバージョンを設定
Linux全体で有効にするRubyのバージョンを指定します。
$ rbenv global 2.6.2
ディレクトリごとに有効にするRubyのバージョンを設定
Linux全体ではなく、ディレクトリ単位でRubyのバージョンを指定したい場合は、以下のコマンドを実行します。
$ rbenv local 2.6.2
有効になっているRubyのバージョンを確認
現在、有効になっているRubyのバージョンを確認します。
$ ruby -v
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-linux]
Rubyのアンインストール
rbenvでインストールしたRubyを削除したい場合は、以下のように削除したいバージョンを指定して実行します。
$ rbenv uninstall 2.6.2
まとめ
rbenvを導入することで、いつでも好きなバージョンのRubyに切り替えることができます。
これでRubyに関して困ることはありませんね。楽しいRuby生活を送ってください!
もし、Rubyのフレームワーク「Rails」を利用する予定の方は、さきに「Ruby on Railsの概要」を理解しておくといいでしょう。
またね、キツネ(@kitaaaa_kitsune)でした!
