DRY

Web関連の技術の事、食事/お酒の事、旅行の事など

AWSに自作のAMI(CentOS6.0)にLAMP環境も構築

ついでにLAMP環境(MySQL5.5クライアントのみ、PHP)を真っ新なCentOS6.0に作ったのでそのコマンドもメモしておこう

■まずはyum関連


yum list
yum update

yum -y install gcc gcc-c++
yum -y install zsh
yum -y install vim-enhanced
yum -y install screen
yum -y install emacs
yum -y install ntp
yum -y instal nkf
yum -y install telnet
yum -y install make cmake
yum -y install bind-utils
yum -y install rsync
yum -y install wget
yum -y install vixie-cron
yum -y install crontabs
yum -y install iptables
yum -y install net-snmp net-snmp-utils
yum -y install man man-pages
yum -y install zlib-devel
yum -y install ncurses-devel
yum -y install freetype freetype-devel
yum -y install gd
yum -y install libxml libXpm-devel libxml2-devel
yum -y install libpng-devel
yum -y install libjpeg-devel
yum -y install flex
yum -y install curl-devel
yum -y install readline-devel
yum -y install xslt
yum -y install libxslt libxslt-devel
yum -y install pspell-devel
yum -y install slocate mlocate
yum -y install unzip

■OpenSSLのインストール

cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.0e.tar.gz
tar zxvf openssl-1.0.0e.tar.gz
cd openssl-1.0.0e
./config -fPIC shared --prefix=/usr/local/ssl enable-tlsext
make
make install
apacheのインストール

cd /usr/local/src
wget http://apache.mirrors.hoobly.com//httpd/httpd-2.2.21.tar.gz
tar zxvf httpd-2.2.21.tar.gz
cd httpd-2.2.21
./configure \
"--with-layout=Apache" \
"--prefix=/usr/local/apache2" \
"--with-ssl=/usr/local/ssl" \
"--enable-ssl" \
"--enable-so" \
"--enable-rewrite" \
"--enable-proxy" \
"--enable-proxy-balancer"
make
make install
■mod_log_rotate

cd /usr/local/src
wget http://hexten.net/assets/apache2/mod_log_rotate.c
apxs -i -a -c mod_log_rotate.c
■mod_loadavg2

cd /usr/local/src
wget http://www.defunced.de/modules/mod_loadavg2.c.gz
gunzip mod_loadavg2.c.gz
apxs -i -a -c mod_loadavg2.c
■Cronlogのインストール

cd /usr/local/src
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
tar xvfz cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure
make
make install
MySQLクライアントだけインストール(5.5系の場合)

cd /usr/local/src/
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.16.tar.gz/from/http://mysql.mirrors.pair.com/
tar zxvf mysql-5.5.16.tar.gz
cd mysql-5.5.16
cmake . \

  • DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  • DDEFAULT_CHARSET=utf8 \
  • DDEFAULT_COLLATION=utf8_general_ci \
  • DWITHOUT_SERVER=1

make
make install

何かcmakeの引数の表示がおかしいですね。各引数の前にマイナスの記号がついてます(多分これが悪さしてる???)
公式サイト見て貰えればわかると思います。

※ちなみにMySQL全部いれたければ-DWITHOUT_SERVERを抜けばいいよ

MySQLクライアントだけインストール(5.1系の場合)

cd /usr/local/src/
wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.59.tar.gz/from/http://ftp.jaist.ac.jp/pub/mysql/
tar zxvf mysql-5.1.59.tar.gz
cd mysql-5.1.59
./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charsets=all --with-plugins=max-no-ndb --without-server
make
make install
PHPのインストール

cd /usr/local/src/
wget http://us.php.net/get/php-5.3.8.tar.gz/from/this/mirror
tar zxvf php-5.3.8.tar.gz
cd php-5.3.8
./configure --with-apxs2=/usr/local/apache2/bin/apxs \
--enable-mbstring --with-mysql=/usr/local/mysql \
--with-zlib --enable-libxml --enable-dom \
--with-pear --enable-simplexml --with-gd \
--with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib \
--with-freetype-dir=/usr/local/lib --enable-gd-native-ttf \
--with-config-file-scan-dir=/usr/local/lib/php/etc/php.d \
--with-openssl=/usr/local/ssl
make
make test
make install

# 必要ならphp.iniのコピー
cp /usr/local/src/php-5.3.8/php.ini-production /usr/local/lib/php.ini

■codeigniterのゲット

cd /usr/local/src/
wget http://codeigniter.com/download.php
unzip CodeIgniter_2.0.3.zip

# 以下公式サイトより
1. ZIP パッケージを展開します。
2. サーバに CodeIgniter のフォルダとファイルをアップロードします。通常は、index.php ファイルがルートになります。
3. application/config/config.php ファイルをテキストエディタで開き、ベース URL を記入します。暗号化、もしくはセッションを利用する際には暗号鍵を記入します。
4. データベースを使用する際には、application/config/database.php ファイルをテキストエディタで開き、データベースの設定を記入します

http://codeigniter.jp/user_guide_ja/installation/

APCのインストール

yum -y install php-pear
yum -y install php-devel
yum -y install pcre-devel
pecl install APC

# php.iniなどに
extension = /usr/local/lib/php/extensions/no-debug-non-zts-20090626/apc.so
apc.enabled=1
apc.shm_segments=1
apc.optimization=2
;apc.shm_size=32
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.enable_cli=1
apc.cache_by_default=1

phpinfoで確認
APC Support enabled
Version 3.1.9
APC Debugging Disabled
MMAP Support Enabled
MMAP File Mask /tmp/apc.V5j1tW
Locking type pthread mutex Locks
Serialization Support php
Revision $Revision: 308812 $
Build Date Oct 17 2011 14:44:25

xdebugのインストール

cd /usr/local/src/
wget 'http://xdebug.org/files/xdebug-2.1.2.tgz'
tar zxvf xdebug-2.1.2.tgz
cd xdebug-2.1.2
phpize
./configure --enable-xdebug
make
make test
cp -i modules/xdebug.so /usr/lib64/php/modules

# php.iniなどに
extension = /usr/lib64/php/modules/xdebug.so
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = /var/tmp/xdebug

■libmemcachedのインストール


PHPのモジュールででmemcached(d付き)をインストールする方法

http://www.alink.co.jp/tech/blog/2010/03/18/php-pecl%E3%81%AEmemcached%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B/

cd /usr/local/src
wget http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz
tar zxvf memcached-1.4.0.tar.gz
cd memcached-1.4.0
./configure
yum -y install libevent-devel.x86_64
./configure
make; make install;

cd /usr/local/src
wget 'http://download.tangent.org/libmemcached-0.42.tar.gz'
tar zxvf libmemcached-0.42.tar.gz
cd libmemcached-0.42
./configure
make clean
make
make install

pecl install memcached

configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.

cd /usr/local/src
wget 'http://sourceforge.net/projects/re2c/files/re2c/0.13.5/re2c-0.13.5.tar.gz/download?_test=goal'
tar zxvf re2c-0.13.5.tar.gz
cd re2c-0.13.5
./configure
make
make install

pecl install memcached


/tmp/pear/temp/memcached/php_memcached.c:366: error: ‘MEMCACHED_BAD_KEY_PROVIDED’ undeclared (first use in this function)

http://onaxer.com/blog/blog/tag/tmpmemcached-1-0-0php_memcached-c2909-error-memcached_bad_key_provided-undeclared-first-use-in-this-function/
http://webmemo.uzuralife.com/article/2886


cd /usr/local/src
wget http://opensource.dynamoid.com/igbinary-1.0.2.tar.gz
tar xvf igbinary-1.0.2.tar.gz
cd igbinary-1.0.2
phpize
./configure CFLAGS="-O2 -g" --enable-igbinary
make
make install

extension=/usr/local/lib/php/extensions/no-debug-non-zts-20090626/igbinary.so

最初libmemcached-0.9とかでやってたけど、サイト見直したら別に最新じゃないし、みんな0.35か0.42でやっているので
ダウングレードした

そうしたら通った

extension=/usr/local/lib/php/extensions/no-debug-non-zts-20090626/memcached.so