Amazon Linux でのソースの入手と再ビルド

気がついたら 1, 2 月はブログ書いてませんでした。
Amazon Linux 上の suexec のホームディレクトリを変更したくて rpm のソース取ってこようとしたんだけど yumdownloader でソースを取って来ることができなかったんで、自分用のメモ。
Amazon Linux で rpm のソースを取ってくるには yumdownloader ではなくて get_reference_source コマンドを使うんですってよ奥さん。
参考: SIOS "OSSよろず" ブログ出張所: ソースの入手と再ビルド ~ Amazon Linux AMI (EC2) 編
注意: 上記 URL だと --aws-account-id=XXXX-XXXX-XXXX っていうパラメータが必要って書いてあるけど、いまは要らないようです。

以下、手順

rpmbuild 使える環境にします。

$ sudo yum -y install rpmdevtools
$ mkdir $HOME/rpmbuild $HOME/rpmbuild/SOURCES $HOME/rpmbuild/SPECS $HOME/rpmbuild/BUILD $HOME/rpmbuild/SRPMS $HOME/rpmbuild/RPMS $HOME/rpmbuild/RPMS/x86_64
$ echo "%_topdir $HOME/rpmbuild" >> $HOME/.rpmmacros

get_reference_source でパッケージ取ってきてソースを展開します。
取ってきた *.src.rpm は /usr/src/srpm/debug/ に保存されるみたい。

$ get_reference_source --package=httpd24
$ rpm -ivh /usr/src/srpm/debug/httpd24-2.4.6-2.49.amzn1.src.rpm

*.spec を自分このみに書き換えて repmbuild

$ cd ~/rpmbuild
$ vi SPECS/httpd.spec
$ rpmbuild -ba SPECS/httpd.spec

こんな感じです。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください