目次
RPM パッケージを作成して Fedora 18 に最新の nginx をインストールする
rpmbuild 環境を整える
$ sudo yum install @development-tools $ sudo yum install fedora-packager
rpmbuild を行うためのディレクトリ構造を作成
必ず root 以外で作業すること。
$ rpmdev-setuptree
ホームディレクトリに以下の構造が作成される。
rpmbuild +-- BUILD +-- BUILDROOT +-- RPMS +-- SOURCES +-- SPECS +-- SRPMS
nginx の srpm をダウンロード
$ sudo yum install yum-utils $ cd ~/rpmbuild/SOURCES/ $ yumdownloader --source nginx
srpm の中身を取り出す
$ rpm2cpio nginx-1.2.9-1.fc18.src.rpm | cpio -id 1499 blocks
nginx の最新ソースを取得
nginx: download で最新ソースの URL を調べる。(ここでは 1.5.13 を利用)
$ curl -O http://nginx.org/download/nginx-1.5.13.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 750k 100 750k 0 0 164k 0 0:00:04 0:00:04 --:--:-- 175k
nginx.spec のバージョンを修正
$ vi nginx.spec
ダウンロードした最新ソースのバージョンに修正する。
Version: 1.5.13
署名ファイルをリネーム
$ mv nginx-1.2.9.tar.gz.asc nginx-1.5.13.tar.gz.asc
nginx のビルドに必要な依存パッケージのインストール
nginx.spec でも確認できますが、以下のパッケージを予めインストールする。
$ sudo yum install GeoIP-devel gd-devel libxslt-devel pcre-devel openssl-devel \ gperftools-devel perl-devel perl-ExtUtils-Embed zlib-devel systemd
RPM パッケージをビルド
$ rpmbuild -ba nginx.spec
作成した RPM パッケージでインストール
ビルドが終わったら ~/rpmbuild/RPMS/x86_64/ に作成されたパッケージでインストールする。
$ cd ~/rpmbuild/RPMS/x86_64/ $ sudo rpm -ivh nginx-1.5.13-1.fc18.x86_64.rpm 準備しています... ################################# [100%] 更新中 / インストール中... 1:nginx-1:1.5.13-1.fc18 ################################# [100%]
nginx の自動起動設定
$ sudo systemctl enable nginx ln -s '/usr/lib/systemd/system/nginx.service' '/etc/systemd/system/multi-user.target.wants/nginx.service'
nginx.service; enabled を確認する。
$ sudo systemctl status nginx nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled)
nginx の起動
$ sudo systemctl start nginx
動作確認
http://localhost/ にブラウザでアクセスして動作を確認する。