debパッケージをrpm形式に変換する「alien」

2018年6月5日Linux TipsLinux, alien, deb, rpm, centOS

世の中では、Debパッケージでは配布されているものの、RPMパッケージでは配布されていない場合が多々ある。
その場合、alienというパッケージを利用することで、DebパッケージをRPM形式に変更することが出来る。

alienをインストールする

Centos7以上であれば、Alienコマンドはyumでインストールすることが可能。

yum install alien

もしalienパッケージが見つからない場合は、nux-dextopリポジトリを追加することでインストールが出来るようだ。

yum -y install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

あるいは、下記のようにソースコードをダウンロードし、コンパイルしても良い。

yum install rpm-build
wget http://cdn-fastly.deb.debian.org/debian/pool/main/a/alien/alien_8.95.tar.xz
rpmbuild -ta alien_8.92.tar.gz
rpm -ivh alien-8.92-1.noarch.rpm

(参考: このサイト

alienを使用して、Debian Deb形式からRPM形式に変換をする

あとの使い方は簡単である。
使用したいDebファイルが「example.deb」であれば、次のように打てば良い。

alien --to-rpm --scripts example.deb

これで、example.rpmが出現するので、あとはrpmコマンドでインストールをすればOKだ。
基本的に、alienはパッケージの中身を見て、それをRPM形式に再コンパイルしている模様。従って、ソースファイルからrpmファイルを作成する場合とそう大差はないのだが、Debファイルから一発で実施することが出来るのは結構便利。