一時的な開発環境用にmemcachedをインストールしました。
VM上のCentOS5.6にインストールです。
事前に必要なライブラリのインストールをします。
libeventは、memcachedのイベント通知API?で使われるらしいです。
yum install libevent libevent-devel
移動して、ダウンロードして、展開します。
cd /usr/local/src wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz tar zxf memcached-1.4.15.tar.gz
configureして、makeして、installします。
with-libeventを指定しないとエラーで怒られました。
cd memcached-1.4.15 ./configure --prefix=/usr/local/memcached --with-libevent make make install
起動用スクリプトをコピーします。
cp scripts/memcached.sysv /etc/init.d/memcachedctl
立ち上げたら、ディレクトリが無いと怒られました。
pidファイルを置くためのディレクトリがなかったようです。
/etc/init.d/memcachedctl start Starting memcached: chown: cannot access `/var/run/memcached': No such file or directory
ディレクトリを作成します。
mkdir /var/run/memcached
もう一度立ち上げます。
/etc/init.d/memcachedctl start /bin/bash: memcached: command not found
memcachedにパスが通ってないと怒られました。
パスを通すほうが良いのですが、絶対パスに直してしまいました。
今回memcachedをインストールしたのは、一時的な使用なのでよしとしました。
vi /etc/init.d/memcachedctl
diff -u /usr/local/src/memcached-1.4.15/scripts/memcached.sysv /etc/init.d/memcachedctl --- /usr/local/src/memcached-1.4.15/scripts/memcached.sysv 2010-09-22 23:46:24.000000000 +0900 +++ /etc/init.d/memcachedctl 2015-01-19 11:46:04.175725878 +0900 @@ -31,7 +31,7 @@ echo -n $"Starting $prog: " # insure that /var/run/memcached has proper permissions chown $USER /var/run/memcached + daemon /usr/local/memcached/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached/memcached.pid $OPTIONS - daemon memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached/memcached.pid $OPTIONS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached
無事に起動しました。
/etc/init.d/memcachedctl start Starting memcached: [ OK ]