tkuchikiの日記

Linux やプログラミングについて書きます。

CentOS 6 用 Redis 2.6.13 の RPM 作成手順

ほぼ Redis 2.6 の RPM を作成する - akishin999の日記 の通り。
非常に参考になりました。ありがとうございます。

rpmbuild などをインストール

yum install rpm-build rpmdevtools tcl-devel
rpmdev-setuptree

epel の redis rpm をインストール

spec ファイルを拝借する。

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/SRPMS/redis-2.4.10-1.el6.src.rpm

spec ファイル修正

vi ~/rpmbuild/SPECS/redis.spec

- Version:          2.4.10
+ Version:          2.6.13

- %doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README TODO
+ %doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README

※追記

毎回 SPECファイルのために epel の RPM 入れるのは面倒なので、
SPECファイルを手元に残しておく。

redis.conf を修正

wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
tar zxvf redis-2.6.13.tar.gz
cp redis-2.6.13/redis.conf redis-2.6.13/redis.conf.orig
vi redis-2.6.13/redis.conf

- daemonize no
+ daemonize yes

- pidfile /var/run/redis.pid
+ pidfile /var/run/redis/redis.pid

+ bind 127.0.0.1

- logfile stdout
+ logfile /var/log/redis/redis.log

patch 作成

diff -up redis.conf.orig redis.conf > ~/rpmbuild/SOURCES/redis-2.4.8-redis.conf.patch

rpmbuild

mv redis-2.6.13.tar.gz ~/rpmbuild/SOURCES/
rpmbuild -ba ~/rpmbuild/SPECS/redis.spec

インストール

rpm -ivh /root/rpmbuild/RPMS/x86_64/redis-2.6.13-1.el6.x86_64.rpm
chkconfig redis on

完成品

redis-2.6.13-1.el6.x86_64.rpm

以上。