linux:fedora:nginx_rpmbuild

RPM パッケージを作成して Fedora 18 に最新の nginx をインストールする

$ sudo yum install @development-tools
$ sudo yum install fedora-packager

 必ず root 以外で作業すること。

$ rpmdev-setuptree

 ホームディレクトリに以下の構造が作成される。

rpmbuild
   +-- BUILD
   +-- BUILDROOT
   +-- RPMS
   +-- SOURCES
   +-- SPECS
   +-- SRPMS
$ sudo yum install yum-utils
$ cd ~/rpmbuild/SOURCES/
$ yumdownloader --source nginx
$ rpm2cpio nginx-1.2.9-1.fc18.src.rpm | cpio -id
1499 blocks

 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
$ vi nginx.spec

ダウンロードした最新ソースのバージョンに修正する。

Version:           1.5.13
$ mv nginx-1.2.9.tar.gz.asc nginx-1.5.13.tar.gz.asc 

 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
$ rpmbuild -ba nginx.spec

 ビルドが終わったら ~/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%]
$ 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)
$ sudo systemctl start nginx

 http://localhost/ にブラウザでアクセスして動作を確認する。

  • linux/fedora/nginx_rpmbuild.txt
  • 最終更新: 2024/02/04 13:39
  • by ともやん