Linux版rpm与deb格式,如何转换从RPM到DEB和DEB到RPM包使用Alien
正如我敢肯定你已經知道,有大量的安裝在Linux軟件的方式:利用你的發行提供的包管理系統( 資質,Yum,或zypper的 ,僅舉幾例),從源代碼編譯(雖然有點罕見的,這些天,這是唯一的方法,在Linux的早期可用),或利用水平較低等工具的dpkg或rpm分別.deb文件和.rpm的獨立,預編譯的軟件包。
使用Alien將RPM轉換為DEB并將DEB轉換為RPM包
在這篇文章中,我們將向您介紹外國人 ,是最常見的使用一種工具,不同的Linux軟件包格式之間進行轉換,以.rpm的以.deb文件 (反之亦然)。
這個工具,即使它的作者不再維護它,并在他的網站中說,外星人將永遠可能仍然在實驗狀態,可以派上用場如果你需要一個特定類型的包,但只能找到另一種包格式的程序。
例如, 外國人救了我的一天一次的時候我一直在尋找一個噴墨打印機一個.deb文件驅動程序,找不到任何-廠家只提供了一個.rpm的包。 我安裝了外星人,轉換了包,并在很久之前,我能夠使用我的打印機沒有問題。
也就是說,我們必須澄清,這個實用程序不應該用于替換重要的系統文件和庫,因為它們在不同的分布之間設置不同。 如果本文開頭的建議安裝方法不符合所需程序的問題,則只能使用外來程序作為最后手段。
最后但并非最不重要的,我們必須注意,雖然我們將在本文中使用的CentOS和Debian,外星人也被稱為在Slackware的 ,甚至在Solaris中工作,除了前兩個分布及其各自的家庭。
第1步:安裝異常和依賴
要安裝CentOS中/ RHEL 7 外星人 ,你將需要啟用EPEL和馬錢Dextop(是的,這Dextop -而不是臺式機)庫,按照這個順序:# yum install epel-release
# rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
使這個倉庫的軟件包的最新版本是0.5目前(8月10日公布,2015)。# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
然后做,# yum update && yum install alien
在Fedora,您只需要運行一個命令。
在Debian和衍生產品中,只需:# aptitude install alien
第2步:從.deb到.rpm包轉換
對于本次測試我們選擇dateutils,它提供了一整套的日期和時間工具來處理大量的財務數據。 我們將.deb軟件包下載到我們的CentOS 7中,將其轉換為.rpm的并安裝:
檢查CentOS版本# cat /etc/centos-release
# wget http://ftp.us.debian.org/debian/pool/main/d/dateutils/dateutils_0.3.1-1.1_amd64.deb
# alien --to-rpm --scripts dateutils_0.3.1-1.1_amd64.deb
在Linux中將.deb轉換為.rpm包
重要提示 :(請注意如何,默認情況下,外來的增加目標包的版本次要編號如果要覆蓋此行為,添加-keep版本標志)。
如果我們嘗試立即安裝軟件包,我們會遇到一個小問題:# rpm -Uvh dateutils-0.3.1-2.1.x86_64.rpm
安裝RPM軟件包
為了解決這個問題,我們將啟用EPEL-測試庫 ,并安裝rpmrebuild工具來編輯軟件包的設置必須重建:# yum --enablerepo=epel-testing install rpmrebuild
然后運行,# rpmrebuild -pe dateutils-0.3.1-2.1.x86_64.rpm
這將打開你的默認文本編輯器。 轉至%files部分,并刪除引用錯誤消息中提到的目錄,然后保存文件并退出該行:
將.deb轉換為外來版本
當您退出該文件系統將提示您繼續與重建。 如果您選擇Y,該文件將被改建為指定的目錄(不是當前工作目錄不同):# rpmrebuild –pe dateutils-0.3.1-2.1.x86_64.rpm
構建RPM包
現在您可以繼續安裝軟件包,并照常進行驗證:# rpm -Uvh /root/rpmbuild/RPMS/x86_64/dateutils-0.3.1-2.1.x86_64.rpm
# rpm -qa | grep dateutils
安裝Build RPM軟件包
最后,你可以列出附帶dateutils,個人工具或者檢查它們各自的手冊頁:# ls -l /usr/bin | grep dateutils
驗證已安裝的RPM軟件包
第3步:從.rpm轉換到.deb軟件包
在這一節中,我們將介紹如何從.rpm的轉換為.deb文件 。 在32位Debian的Wheezy中,讓我們下載的.rpm包從CentOS 6的操作系統存儲庫中的zsh外殼。 請注意,Debian和派生類中默認情況下不提供此shell。# cat /etc/shells
# lsb_release -a | tail -n 4
檢查Shell和Debian操作系統版本# wget http://mirror.centos.org/centos/6/os/i386/Packages/zsh-4.3.11-4.el6.centos.i686.rpm
# alien --to-deb --scripts zsh-4.3.11-4.el6.centos.i686.rpm
您可以放心地忽略有關缺少簽名的郵件:
將.rpm轉換為.deb軟件包
片刻之后,應該已經生成的.deb文件,并準備安裝:# dpkg -i zsh_4.3.11-5_i386.deb
安裝RPM轉換的Deb包
安裝后,你可以驗證的zsh被添加到有效的炮彈的列表:# cat /etc/shells
確認安裝的Zsh軟件包
概要
在這篇文章中,我們已經解釋了如何從.rpm的以.deb文件 ,反之亦然轉換為安裝軟件包作為最后的手段,當這種方案不是在倉庫或分發源代碼可用。 你會想要把這篇文章加入書簽,因為我們所有的人都需要外星人在同一時間或另一個。
請隨時使用下面的表格分享您對本文的想法。
總結
以上是生活随笔為你收集整理的Linux版rpm与deb格式,如何转换从RPM到DEB和DEB到RPM包使用Alien的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux先发送条件变量,浅谈Linux
- 下一篇: 树莓派3 kali linux很卡,树莓