| トップ | Solaris | FreeBSD | Gentoo | CentOS | Fedora | Windows | Tips | 自宅サーバの動作確認 | サイト内検索(Namazu) | サイト内検索(HE) |
rpmbuildコマンドを使い、自分の環境に合ったrpmを作成する。
SRPMファイルは通常拡張子が「.src.rpm」となっている。
このファイルをrpmコマンドにより、インストールする。
例として「vsFTPd」をインストールする。
[root@CentOS ~]# rpm -ivh vsftpd-2.0.3-1.src.rpm <= SRPMファイルのインストール |
SRPMパッケージをインストールすると、
/usr/src/redhat/SOURCES
ディレクトリ以下に、tarballやパッチファイルがインストールされ、
/usr/src/redhat/SPECS
ディレクトリ以下にspecファイルがインストールされる。
/usr/src/redhat/ 以下のディレクトリに作成されるファイルは以下の通り。
| ディレクトリ | 説明 |
|---|---|
| SPECS | 各ソフトウェアのRPMを作成するためのspecファイルが保存される。 |
| SOURCES | 各ソフトウェアのソースファイルやパッチファイルが保存される。 |
| BUILD | 各ソフトウェアを構築(コンパイル等)するのに使用される作業ディレクトリ。 |
| SRPMS | 作成したSRPMファイルが保存される。 |
| RPMS | 作成したRPMファイルが該当アーキテクチャのサブディレクトリ以下に保存される。 サブディレクトリには athlon、i386、i486、i586、i686、noarch がある。 |
インストールされたspecファイルやソースファイルを編集したり追加のパッチを加えたりして、
rpmbuildコマンドによりrpmファイルを作成する。
rpmbuildコマンドの書式は以下の通り。
[root@CentOS ~]# rpmbuild オプション specファイルのパス |
rpmbuildコマンドの主なオプションは以下の通り。
| オプション | 説明 |
|---|---|
| -bp | 「%prep」セクションまでの処理を行う。 |
| -bc | 「%build」セクションまでの処理を行う。 |
| -bi | 「%install」セクションまでの処理を行う。 |
| -bb | RPMファイルのみ作成する。 |
| -bs | SRPMファイルのみ作成する。 |
| -ba | RPMファイルとSRPMファイルを作成する。 |
| --rebuild | SRPMファイルから直接、RPMファイルを作成する。 |
| --clean | ソフトウェア構築作業時に使用したディレクトリを削除する。 (通常、/usr/src/redhat/BUILD以下のディレクトリ) |
| --sign | RPMファイルにGPGで署名を入れる。 |
「vsFTPd」のspecファイルやソースファイルを編集等した後、rpmbuildコマンドによりrpmファイルを作成し、 インストールする場合。
[root@CentOS ~]# rpmbuild -bb --clean /usr/src/redhat/SPECS/vsftpd.spec <= rpmファイルの作成 [root@CentOS ~]# rpm -ivh /usr/src/redhat/RPMS/i386/vsftpd-2.0.3-1.rpm <= rpmファイルのインストール |
tarball内にRPM構築に必要なspecファイルが含まれているものとする。
この場合のrpmbuildコマンドの書式は以下の通り。
[root@CentOS ~]# rpmbuild オプション tarballのパス |
rpmbuildコマンドの主なオプションは以下の通り。
| オプション | 説明 |
|---|---|
| -tp | 「%prep」セクションまでの処理を行う。 |
| -tc | 「%build」セクションまでの処理を行う。 |
| -ti | 「%install」セクションまでの処理を行う。 |
| -tb | RPMファイルのみ作成する。 |
| -ts | SRPMファイルのみ作成する。 |
| -ta | RPMファイルとSRPMファイルを作成する。 |
例として「ProFTPD」をインストールする。
[root@CentOS ~]# rpmbuild -tb proftpd-1.2.10.tar.bz2 <= rpmファイルの作成 [root@CentOS ~]# rpm -ivh /usr/src/redhat/RPMS/i386/proftpd-1.2.10.rpm <= rpmファイルのインストール |