rpm2cpioコマンドを利用するとrpmパッケージファイルをcpio形式に変換することができます。
rpm2cpioとcpioコマンドを併用することによりファイルを取り出すことができます。
phpのrpmファイルを例としてrpmファイルからファイルを取り出す作業を以下に記します。
以下のコマンドにより、rpmパッケージ内のファイルを展開することができます。
rpm2cpio rpmパッケージファイル | cpio -id
vオプションを追加すると、展開したファイルが出力されます。
rpm2cpio rpmパッケージファイル | cpio -idv
rpm2cpio rpmパッケージファイル | cpio -t
rpmコマンドで確認することもできます。
rpm -qpl rpmパッケージファイル
rpm2cpio rpmパッケージファイル | cpio -id 抽出するファイル名
vオプションを追加すると、展開したファイルが出力されます。
rpm2cpio rpmパッケージファイル | cpio -idv 抽出するファイル名
rpmのspecファイルなどを抜き取りたい場合は以下のようにします。
例として、phpのsrc.rpmパッケージを利用してみます。
尚、このphpパッケージはCentOSのパッケージをダウンロードしました。
参考資料:CentOSのsrc.rpmパッケージを取得する
$ rpm2cpio php-5.1.6-27.el5_5.3.src.rpm | cpio -t | grep spec 18637 blocks php.spec $ rpm2cpio php-5.1.6-27.el5_5.3.src.rpm | cpio -idv php.spec php.spec 18637 blocks $ ls -l php.spec -rw-r--r-- 1 sakura sakura 45197 7月 25 20:00 php.spec