気がついたら 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
こんな感じです。