なぜMAMPをやめてVMwareに環境を構築しなおしたか。

ちょっと前に長々とMAMPでwordpress環境構築なる話を書きましたが、その後でMAMP環境が壊れました。
原因がよくわからずにMAMPの再インストールをしたところ、データがまっさらになってしまいました。
完全に私のミスです、きっとMAMPは悪くないのです。

しかしなぜ環境がおかしくなったのかはわからず終い。
それもそれほど頻繁に使っていたわけではないので、これからもそういう事が起きると困るなと思い、VMware上に環境を構築することにしました。

前回の検討編を読んでもらえばわかりますが、特に理由も無くVMwareで構築するのを却下しています。
理由がないということは、それでもよかったということなのです。

ということで、さくっと構築。ただしOSはubuntuではなくCentOSです。
このあたりの理由についても後ほど書いていきたいと思います。

ubuntuでの構築で最大の壁になったのが、ファイル共有です。

VMwareには標準でゲストOSとファイル共有が行えるようになっています。これを使ってapacheのドキュメントルートをOSX上のフォルダに指定すると、OSX上からシームレスにカスタマイズしたテーマファイルにアクセスができるわけです。

ただし共有するにはvmware-toolsのインストールが必須。そしてなぜだかubuntuサーバではこれがうまくいきません。ubuntu12.04と12.10で試しましたがダメ。open-vm-toolsでうまくいくという記述もありましたが、私の方ではこれでもうまくいきませんでした。
参考URL:VMwareFusionでUbuntu12.04を動かした際に共有フォルダが動作しない際の対処 – 偏った言語信者の垂れ流し
システム的なところをガッツリいじるわけでもないので、今回はubuntuをあきらめてCentOSで行くことにしました。

CentOS6でミニマムインストールを選択し、インストール。
インストール直後はネットワークが起動していませんので、固定IPを割り振ってネットワークを起動します。DHCPでもいいんですが、サーバなので固定IPの方がいいかと思います。
/etc/sysconfig/network-scripts/ifcfg-eth0を以下のように編集します。

DEVICE=”eth0″
HWADDR=”XX:XX:XX:XX:XX:XX”
NM_CONTROLLED=”yes”
ONBOOT=”yes” – 起動時にネットワークインターフェースを有効にする(noからyesに変更)
BOOTPROTO=”static” - IPを固定で割り当てる(DHCPで取得する場合には、DHCPに設定する)
IPADDR=”172.16.XX.100″ - 固定IPアドレスを指定する。
NETMASK=”255.255.255.0″ – ネットマスクを指定する。
GATEWAY=”172.16.XX.2″ – ゲートウェイを指定する

IPアドレスは環境によって異なってくるかと思います。固定IPにしたいけどどうしたらいいのかわからないといった場合は、一旦DHCPで設定してIPを取得してください。そのネットワークで利用されているIPアドレスが確認できるかと思います。ちなみにVMwareでNATを利用する場合には、IPアドレスの割り当てルールは以下のようになっているそうです。

ホストマシン: .1
NATデバイス: .2
静的アドレス:.3〜.127
DHCPが割り当て:.128〜.253
DHCPサーバ:.254

参考URL:My Memo: VMWareでNATネットワーク構築

ネットワーク導通確認が取れたら、あとはapache,PHP,mysqlをインストール。

# yum install -y httpd
# yum install -y php*
# yum install -y mysql mysql-server

こんな感じですかね。

次にvmware-toolsのインストールと行きたいのですが、その前にvmware-toolsに必要なパッケージをインストールします。

# yum install -y gcc perl

これでインストール準備は完了です。
vmwaretoolsはメニューからVMware toolsのインストールを選択。GUIだとデスクトップにCDがマウントされるのですが、ミニマムインストールしている場合には勝手にマウントされませんので、以下の手順でインストールします。VMwareTools-X.X.X.tar.gzはバージョンによって異なるので、適宜読み替えてください。

# mkdir /mnt/cdrom – CDをマウントするためのマウントポイントを作成
# mount /dev/cdrom /mnt/cdrom – CDをマウントする
# cp /mnt/cdrom/VMwareTools-X.X.X.tar.gz /tmp – CDに収録されているVMware-toolsのアーカイブを/tmpにコピーする
# tar /tmp/VMwareTools-X.X.X.tar.gz – アーカイブを展開
# /tmp/vmware-tools-distrib/vmware-install.pl – 展開したフォルダにあるインストーラを実行

あとは質問にすべてyと答えてインストール完了です。 これで共有を設定することでゲストOSとOSXで同じフォルダへの読み書きが可能になります。Linuxではフォルダが自動マウントされるマウントポイントは「/mnt/hgfs」になるので、たとえばhtdocsというフォルダを共有した場合には、Linux上では「/mnt/hgfs/htdocs」にマウントされる形になります。
このフォルダをapacheのドキュメントルートに指定して作業完了。

最後にOSX側でhostsの編集をしてあげるとなおよしという感じでしょうか。

これでMAMPをインストールして構築した環境とほぼ同じような環境が構築できました。いやー、やっぱり慣れてるシステムの方が気が楽でいいですね。