ruby-1.9.3-p392とrails3.2.13 を CentOS 6.4 にインストールするまで (1)
- 2013/04/30 (Tue) |
- ruby |
- CM(0) |
- Edit |
- ▲Top
VMware Playerですら他人が用意してくれたものしか使ったことがない筆者が、必要に迫られRuby on Rails の環境を自前で用意しなければいけなくなった。
そこで今回は仮想マシン(VMware Player)をまともに動かせるようになるところから始めて、ruby-1.9.3-p392とRails3.2.13をインストールするところまでを今回の話題にしたい。
VMWare Player を入手
vmware player の入手自体はvmware社のページより簡単に行える。各自の環境に合わせたインストーラをダウンロード・実行し、手引きに沿ってインストールを進めればよい。筆者はWindows7の64bit環境を使っているので「VMware Player for Windows 32-bit and 64-bit」を選択した。Windows版は32bitでも64bitでも気にする必要はないようだ。
ゲストOSを入手
vmware player をインストールし終わったら次は、ゲストOSを作成する必要がある(ゲストOSの語義についてはこちら。OSの優劣等は詳しくないが、単純に開発プロジェクトでよく目にするという理由から筆者はCentOSを選択することにした。
CentOS: http://www.centos.org/
このOSを選ぶという単純な行為ですら、もしWindowsを使っているのだとしたら、すんなりは行かせてくれない事情がある。それはCPUだ。OSはCPUを選ぶので当然、ゲストOSにする予定のCentOSにもCPUの型によって違いがある。問題はそれが「x86/x64」なのか「i386」と呼ばれる形式のものなのか、という点にある。linuxであればコンソールに「uname -a」と入力すればすぐに分かる情報なのに、Windowsにどっぷり浸かってしまうとそんな情報の引き出し方も分からなくなってしまう。
実際、Windows7でコントロールパネルからデバイスマネージャーを開き、プロセッサと書かれた箇所をクリックしてみたとしよう。そこで見るのはせいぜい自分のPCがCeleron かそれ以外か、という程度の話で、x86なんて文字はどこにも出てこない。
筆者のような者がこんな問題を自力で解けるはずもなく、すぐにgoogleで「x86 x64 確認」とキーワードを打ち込んだ。すると実に適切な過去の質問と答えが載っているページが見つかった。
【CPUはX86であるか否かを確認する方法】http://okwave.jp/qa/q3477130.html
CPUの問題を解決するとどのOSをダウンロードすればよいかは殆ど間違いようがないので、後は安心してCentOSの最新版をダウンロードする。ダウンロードサイト一覧:http://www.centos.org/modules/tinycontent/index.php?id=30
余談だが、容量がギガバイト級のため、筆者の環境では数時間がダウンロードに費やされた。もしこれが光ファイバ等の高速環境だったらどのくらいの速さで実行できるのだろう?……やはりこれもgoogle様に聞いてみれば分かってしまうのか?
ゲストOSを作成
OSのダウンロードが済んだらいよいよゲストOSを作成する段に移る。すること自体は多いような少ないような、慣れてしまえば少ないと思える程度の作業を行う。
①VMware Playerを起動 - 「VMware Playerへようこそ」と書かれた画面が表示される
②新規仮想マシンの作成:細かい手順は省くが「後でOSをインストール」を選択すること
③②で作成した仮想マシンを左側のリストから選択すると画面右側に「仮想マシンの設定」というメニューが出てくるので、それを選択する
④「仮想マシン設定」というタイトルのウィンドウが表示されるので左側のデバイスリストから「CD/DVD」を選択し、それと同時に画面右側に表示される「接続」欄で「ISOイメージファイルを使用する」を選択する。このとき先ほどダウンロードしたOSのISOファイルを指定すること。
⑤「OK」ボタンを押すと「仮想マシン設定」が閉じるので、③で選択した仮想マシンを再選択し、今度は画面右側のメニューから「仮想マシンの再生」を選択する。
⑥CentOSのブートが始まる。途中でキーボードの設定や言語の設定、ディスクの割り当て等を聞かれるが、使用しているPCの空き容量が30GB以上あり、メモリも1から2GB積んでいる状態ならデフォルト設定のまま進んで良いと思われる。但し、最後にインストールモードについてきかれるので、そこで最終的にインストールするプログラムの大枠を選ぶことになるので、そこでは多少慎重に考えた方が良いかもしれない。この最後の部分は、人によって選択が異なるだろう。サーバー設定に慣れていれば余計なプログラムを入れたくないはずだから「minimum」を選ぶだろうし、別の理由から別のインストール設定を選択することもありうる。筆者はweb serverにしておいた。
インストールモードを選ぶとあとは基本的に待つだけでインストールは完了するが、その仮想マシンを再起動した後に、ネットワークの設定をしなければならない。
⑦ /etc/sysconfig/network の内容を以下に変更
NETWORKING=yes
GATEWAY=xxx.xxx.xxx.xxx # 自分の環境に合わせてください
⑧/etc/sysconfig/network-scripts/ifcfg-eth0 を編集
ONBOOT=yes
BOOTPROTO=dhcp # 固定IPアドレスを割り当てたい場合はこの設定では駄目
⑨一旦仮想マシンを停止し、仮想マシン設定からネットワーク設定を行う。ネットワークアダプタがNAT接続になっているはずなので、「ブリッジ接続」に変える。
⑩仮想マシン再起動
以上で仮想マシンがホストOSを介して外部ネットワークに接続できるようになる(はず)。
これ以後、ついにRuby をインストールするわけだが、どういうわけだかオープンソースの世界というかUNIXの世界というのは、ソフトウェアのインストールごときでも手間暇取らすのが好きならしい。ということを思い知らされた。恐らくWindowsやMacと異なり、ディレクトリ構成などに前提が設けられない等の不都合はあるんだろうな、などとも思いつつ。
Rubyをインストール
デフォルト環境ではCentOSにRubyはインストールされていない。CentOSのパッケージマネージャyumを使ってインストールしてもいいが、yumでサポートしているのは1.8系のみなので1.9系以降を使うなら、Ruby本家のFTPサイトよりダウンロードする必要がある。
勿論CentOS上にダウンロードする必要があるので、wget 等のツールを使う(筆者はwgetを使用)。コマンドも良し悪しあるが、この程度のことであればコマンドでサクッと済ませるのも悪くない。
次はファイルのメイク(プログラムのビルド)……といきたいところだが、実際にやってみるとできなかった。「./configure」とコマンドを実行させた直後に、gccがインストールされていないと警告が表示され処理が中断したからだ。
まぁgcc程度であればインストールすれば済む話なので、そこはyumを使ってさっさと終わらせる。
よし、じゃあビルドだーーー……
ビルドそのものは実に簡単であった。実質、./configure と make だけ。この程度で済むならRubyはほぼソースから構築した方が、OSの環境に合わせたものが手に入る分、良い選択だと言えるだろう。
そしてRailsへ、のはずが……
後は gem install rails とコマンドを打てばDB構築とWebサーバー構築を除けばほとんどの作業は終わる。
はずだった。
実際にgem install rails と入力すると、libyamlがない、という意味のエラーが出てrubygemが全く動かないのである。railsに限らず全く機能しない。
調べてみて分かったのだが、libyaml というライブラリをCentOSが持っておらず、rubyよりも先にそれをインストールせねばならんということらしい。
libyaml をインストール終、Rubyのインストールを再度開始した。
(--with-opt-dir の参照先は libyaml の配置場所であり、それは whereis コマンドで知ることができる。)
インストール後のRubyバージョーン確認は問題なし。
よし、これでRailsインストール再開できる。おめでとう、俺!
だが。
この後も訳の分からぬトラブルが筆者を待っていた…… 笑
(つづく)
そこで今回は仮想マシン(VMware Player)をまともに動かせるようになるところから始めて、ruby-1.9.3-p392とRails3.2.13をインストールするところまでを今回の話題にしたい。
VMWare Player を入手
vmware player の入手自体はvmware社のページより簡単に行える。各自の環境に合わせたインストーラをダウンロード・実行し、手引きに沿ってインストールを進めればよい。筆者はWindows7の64bit環境を使っているので「VMware Player for Windows 32-bit and 64-bit」を選択した。Windows版は32bitでも64bitでも気にする必要はないようだ。
ゲストOSを入手
vmware player をインストールし終わったら次は、ゲストOSを作成する必要がある(ゲストOSの語義についてはこちら。OSの優劣等は詳しくないが、単純に開発プロジェクトでよく目にするという理由から筆者はCentOSを選択することにした。
CentOS: http://www.centos.org/
このOSを選ぶという単純な行為ですら、もしWindowsを使っているのだとしたら、すんなりは行かせてくれない事情がある。それはCPUだ。OSはCPUを選ぶので当然、ゲストOSにする予定のCentOSにもCPUの型によって違いがある。問題はそれが「x86/x64」なのか「i386」と呼ばれる形式のものなのか、という点にある。linuxであればコンソールに「uname -a」と入力すればすぐに分かる情報なのに、Windowsにどっぷり浸かってしまうとそんな情報の引き出し方も分からなくなってしまう。
実際、Windows7でコントロールパネルからデバイスマネージャーを開き、プロセッサと書かれた箇所をクリックしてみたとしよう。そこで見るのはせいぜい自分のPCがCeleron かそれ以外か、という程度の話で、x86なんて文字はどこにも出てこない。
筆者のような者がこんな問題を自力で解けるはずもなく、すぐにgoogleで「x86 x64 確認」とキーワードを打ち込んだ。すると実に適切な過去の質問と答えが載っているページが見つかった。
【CPUはX86であるか否かを確認する方法】http://okwave.jp/qa/q3477130.html
CPUの問題を解決するとどのOSをダウンロードすればよいかは殆ど間違いようがないので、後は安心してCentOSの最新版をダウンロードする。ダウンロードサイト一覧:http://www.centos.org/modules/tinycontent/index.php?id=30
余談だが、容量がギガバイト級のため、筆者の環境では数時間がダウンロードに費やされた。もしこれが光ファイバ等の高速環境だったらどのくらいの速さで実行できるのだろう?……やはりこれもgoogle様に聞いてみれば分かってしまうのか?
ゲストOSを作成
OSのダウンロードが済んだらいよいよゲストOSを作成する段に移る。すること自体は多いような少ないような、慣れてしまえば少ないと思える程度の作業を行う。
①VMware Playerを起動 - 「VMware Playerへようこそ」と書かれた画面が表示される
②新規仮想マシンの作成:細かい手順は省くが「後でOSをインストール」を選択すること
③②で作成した仮想マシンを左側のリストから選択すると画面右側に「仮想マシンの設定」というメニューが出てくるので、それを選択する
④「仮想マシン設定」というタイトルのウィンドウが表示されるので左側のデバイスリストから「CD/DVD」を選択し、それと同時に画面右側に表示される「接続」欄で「ISOイメージファイルを使用する」を選択する。このとき先ほどダウンロードしたOSのISOファイルを指定すること。
⑤「OK」ボタンを押すと「仮想マシン設定」が閉じるので、③で選択した仮想マシンを再選択し、今度は画面右側のメニューから「仮想マシンの再生」を選択する。
⑥CentOSのブートが始まる。途中でキーボードの設定や言語の設定、ディスクの割り当て等を聞かれるが、使用しているPCの空き容量が30GB以上あり、メモリも1から2GB積んでいる状態ならデフォルト設定のまま進んで良いと思われる。但し、最後にインストールモードについてきかれるので、そこで最終的にインストールするプログラムの大枠を選ぶことになるので、そこでは多少慎重に考えた方が良いかもしれない。この最後の部分は、人によって選択が異なるだろう。サーバー設定に慣れていれば余計なプログラムを入れたくないはずだから「minimum」を選ぶだろうし、別の理由から別のインストール設定を選択することもありうる。筆者はweb serverにしておいた。
インストールモードを選ぶとあとは基本的に待つだけでインストールは完了するが、その仮想マシンを再起動した後に、ネットワークの設定をしなければならない。
⑦ /etc/sysconfig/network の内容を以下に変更
NETWORKING=yes
GATEWAY=xxx.xxx.xxx.xxx # 自分の環境に合わせてください
⑧/etc/sysconfig/network-scripts/ifcfg-eth0 を編集
ONBOOT=yes
BOOTPROTO=dhcp # 固定IPアドレスを割り当てたい場合はこの設定では駄目
⑨一旦仮想マシンを停止し、仮想マシン設定からネットワーク設定を行う。ネットワークアダプタがNAT接続になっているはずなので、「ブリッジ接続」に変える。
⑩仮想マシン再起動
以上で仮想マシンがホストOSを介して外部ネットワークに接続できるようになる(はず)。
これ以後、ついにRuby をインストールするわけだが、どういうわけだかオープンソースの世界というかUNIXの世界というのは、ソフトウェアのインストールごときでも手間暇取らすのが好きならしい。ということを思い知らされた。恐らくWindowsやMacと異なり、ディレクトリ構成などに前提が設けられない等の不都合はあるんだろうな、などとも思いつつ。
Rubyをインストール
デフォルト環境ではCentOSにRubyはインストールされていない。CentOSのパッケージマネージャyumを使ってインストールしてもいいが、yumでサポートしているのは1.8系のみなので1.9系以降を使うなら、Ruby本家のFTPサイトよりダウンロードする必要がある。
勿論CentOS上にダウンロードする必要があるので、wget 等のツールを使う(筆者はwgetを使用)。コマンドも良し悪しあるが、この程度のことであればコマンドでサクッと済ませるのも悪くない。
cd /tmp
wget ftp://core.ring.gr.jp/pub/lang/ruby/1.9/ruby-1.9.3-p392.tar.gz
tar xzf ruby-1.9.3-p392.tar.gz # ダウンロード後にファイル解凍
次はファイルのメイク(プログラムのビルド)……といきたいところだが、実際にやってみるとできなかった。「./configure」とコマンドを実行させた直後に、gccがインストールされていないと警告が表示され処理が中断したからだ。
まぁgcc程度であればインストールすれば済む話なので、そこはyumを使ってさっさと終わらせる。
> yum list|grep gcc
gcc.x86_64 4.4.7-3.el6 base
gcc-c++.x86_64 4.4.7-3.el6 base
libgcc.x86_64 4.4.7-3.el6 base
....
> yum install gcc.x86_64
> yum install gcc-c++.x86_64
よし、じゃあビルドだーーー……
cd ruby-1.9.3-p392
./configure
make
make test
make install
ビルドそのものは実に簡単であった。実質、./configure と make だけ。この程度で済むならRubyはほぼソースから構築した方が、OSの環境に合わせたものが手に入る分、良い選択だと言えるだろう。
そしてRailsへ、のはずが……
後は gem install rails とコマンドを打てばDB構築とWebサーバー構築を除けばほとんどの作業は終わる。
はずだった。
実際にgem install rails と入力すると、libyamlがない、という意味のエラーが出てrubygemが全く動かないのである。railsに限らず全く機能しない。
調べてみて分かったのだが、libyaml というライブラリをCentOSが持っておらず、rubyよりも先にそれをインストールせねばならんということらしい。
wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
tar zxvf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure
make
make install
libyaml をインストール終、Rubyのインストールを再度開始した。
cd ruby-1.9.3-p392
./configure --with-opt-dir=/usr/local --enable-shared --enable-option-checking
make
make test
make install
(--with-opt-dir の参照先は libyaml の配置場所であり、それは whereis コマンドで知ることができる。)
インストール後のRubyバージョーン確認は問題なし。
> ruby -v
> ruby 1.9.3p392 (2013-02-22) [x86_64-linux]
よし、これでRailsインストール再開できる。おめでとう、俺!
だが。
この後も訳の分からぬトラブルが筆者を待っていた…… 笑
(つづく)
PR
カレンダー
フリーエリア
最新CM
最新記事
(06/05)
(06/04)
(06/04)
(11/18)
(11/18)
ブログ内検索
最古記事
(09/15)
(09/20)
(09/27)
(09/27)
(10/11)
COMMENT