CentOS 6.2 セットアップ
前提
・リモートから接続する際には、Windows 7を使用します。
・接続の際には、Tera Termを使用します。
・必要に応じて、WinSCPも使用します。
お名前.com KVMの1Gプランを契約したのでOSのセットアップからWebサービス公開までの手順をまとめます。 ここでは、インストール作業に必要なコマンドの準備とLAMP(Linux、Apache、MySQL、PHP)環境の構築までを行います。できるだけサーバ上で完結するようにします。
前準備
通常、お名前.com KVMの標準OSはCentOS 6.2です。(2012/09/24 現在) ただ、環境構築に使うコマンドなんかがインストールされていないのでまずはそれらをインストールしましょう。
yum install wget yum install make yum install perl yum install gcc gcc-c++ kernel-devel ncurses-devel
yum とは
RPMパッケージの管理コマンド。 Red Hat系のLinux(CentOS)では、プログラムの配布形式としてRPM(Redhat Package Manager)を採用しています。 RPMでコマンドの管理を行うと自動でインストールしてくれるので楽です。
インストールしたコマンドの解説
wget
指定したURLからファイルをダウンロードします。 環境構築では使用頻度は高めなので覚えましょう。
make
大きなプログラムの中の再コンパイルする必要がある部分を自動的に決定し、再コンパイルのためのコマンドを実行します。要は再コンパイルしてくれます。
※ちなみに「devel」とついているものは「development」=開発バージョンという意味です。 wget、rpmを使用する場合はバージョンに注意してください。最新版をおすすめします。
cd /usr/local/src/ wget http://zlib.net/zlib-1.2.6.tar.gz tar xfz zlib-1.2.6.tar.gz cd zlib-1.2.6 ./configure --shared && make all install cd /usr/local/src/ wget http://elders.princeton.edu/data/puias/unsupported/6/x86_64/libmcrypt-2.5.8-9.puias6.x86_64.rpm wget http://elders.princeton.edu/data/puias/unsupported/6/x86_64/libmcrypt-devel-2.5.8-9.puias6.x86_64.rpm rpm -ivh libmcrypt-2.5.8-9.puias6.x86_64.rpm rpm -ivh libmcrypt-devel-2.5.8-9.puias6.x86_64.rpm
zlib
zipやgzipに使われている圧縮アルゴリズムのライブラリです。
libmcrypt
対称暗号化アルゴリズムに統一されたインタフェースを提供するライブラリです。
rpm
RPMパッケージをインストール、アップグレード、アンインストールします。
これで前準備が完了しました。それでは、MySQL、Apache、PHPの順番でインストールしていきます。
yum -y install mysql-server vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql #socket=/var/lib/mysql/mysql.sock socket=/tmp/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server=utf8 [client] socket=/tmp/mysql.sock /usr/local/mysql/support-files/mysql.server start mysql -u root root> SET PASSWORD FOR root@localhost=PASSWORD('任意のパスワード'); root> exit; mysql -u root # ERROR
Apache
お名前.com KVMでは、デフォルトでインストールされているかもしれません。 以下のコマンドで確認してください。もしインストールされていればこの項目は不要です。 (入っていることを知らず入れてしまった。。)
find / -name httpd.conf wget http://ftp.riken.jp/net/apache//httpd/httpd-2.2.22.tar.gz tar xfz httpd-2.2.22.tar.gz cd httpd-2.2.22 ./configure \ make make install chown -R apache:apache /usr/local/apache2
PHP
ほとんど、Apacheの設定です。あと、iptablesですね。iptablesとは、パケットフィルタリング機能を提供してくれるコマンドです。
----------PHPを使用するための前準備---------- vi /etc/httpd/conf/httpd.conf # 実行ユーザーを変更 ------------------------------------------------- User daemon Group daemon ↓ User apache Group apache ------------------------------------------------- # index を html から php に変更 ------------------------------------------------- DirectoryIndex index.html ↓ DirectoryIndex index.php ------------------------------------------------- yum -y install php php-mbstring vi /etc/httpd/conf/httpd.conf ServerTokens OS ↓ ServerTokens Prod #ServerName www.example.com:80 ↓ ServerName [ドメインを持っている場合はドメイン名]:80 vi /etc/sysconfig/iptables # 下記を追記 ------------------------------- -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT ------------------------------- /etc/rc.d/init.d/iptables restart
ネットワークの設定にはかなり手こずりました。DNSの設定とかiptablesの設定なんて普段やらないから全然分からん! この辺は、経験ということですね。勉強になりました!