Wéi konvertéiert Dir Vun RPM op DEB an DEB op RPM Package mat Alien


Wéi ech sécher sinn, datt Dir scho wësst, ginn et vill Weeër fir Software op Linux z'installéieren: de Package Management System benotzt, deen Dir vun Ärer Verdeelung zur Verfügung stellt (aptitude, yum, oder zypper, fir e puer Beispiller ze nennen), aus der Quell ze kompiléieren (awer e bëssen). selten dës Deeg, et war déi eenzeg Method déi während de fréie Deeg vu Linux verfügbar ass), oder benotzt en Low Level Tool wéi dpkg oder rpm mat .deb an .rpm Standalone, virkompiléiert Packagen, respektiv.

An dësem Artikel wäerte mir Iech Alien virstellen, en Tool dat tëscht verschiddene Linux Package Formater konvertéiert, mat .rpm op .deb (a vice-versa) déi allgemeng Benotzung.

Dëst Tool, och wann säin Auteur et net méi ënnerhält a seet op senger Websäit datt Alien ëmmer wahrscheinlech am experimentellen Zoustand bleift, ka praktesch kommen wann Dir e bestëmmten Typ vu Package braucht, awer dee Programm nëmmen an engem anere Packageformat fannt.

Zum Beispill, Alien huet mäin Dag eemol gerett wann ech no engem .deb-Treiber fir en Inkjet-Drécker gesicht hunn a keng fonnt hunn - den Hiersteller huet nëmmen e .rpm Package zur Verfügung gestallt. Ech hunn Alien installéiert, de Package ëmgewandelt, a viru laanger Zäit konnt ech mäi Drécker ouni Probleemer benotzen.

Dat gesot, mir musse klären datt dëst Utility net sollt benotzt ginn fir wichteg Systemdateien a Bibliothéiken z'ersetzen, well se anescht op d'Verdeelung opgestallt sinn. Benotzt nëmmen Auslänner als leschten Auswee wann déi virgeschloen Installatiounsmethoden am Ufank vun dësem Artikel fir den erfuerderleche Programm ausgeschloss sinn.

Lescht awer net zulescht musse mir bemierken datt och wa mir CentOS an Debian an dësem Artikel benotzen, Alien ass och bekannt fir a Slackware a souguer an Solaris ze schaffen, nieft den éischten zwou Verdeelungen an hir jeeweileg Famillen.

Schrëtt 1: Alien an Ofhängegkeeten installéieren

Fir Alien an CentOS/RHEL 7 z'installéieren, musst Dir d'EPEL an d'Nux Dextop (jo, et ass Dextop - net Desktop) Repositories aktivéieren, an dëser Reiefolleg:

# yum install epel-release
# rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro

Déi lescht Versioun vum Package, deen dëse Repository erméiglecht, ass de Moment 0.5 (publizéiert den 10. Aug. 2015). Dir sollt http://li.nux.ro/download/nux/dextop/el7/x86_64/ kucken ob et eng méi nei Versioun gëtt ier Dir weider geet:

# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

dann maachen,

# yum update && yum install alien

A Fedora musst Dir nëmmen de leschte Kommando ausféieren.

An Debian an Derivate, einfach maachen:

# aptitude install alien

Schrëtt 2: Ëmwandlung vun .deb zu .rpm Package

Fir dësen Test hu mir dateutils gewielt, déi eng Rei vun Datum an Zäit Utilities ubitt fir mat grousse Quantitéiten u finanziellen Donnéeën ze këmmeren. Mir lueden den .deb Package op eis CentOS 7 Këscht erof, konvertéieren se op .rpm an installéiere se:

# 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

Wichteg: (Notéiert w.e.g. wéi, par défaut, Auslänner d'Versiouns-Minor Zuel vum Zilpaket vergréissert. Wann Dir dëst Verhalen iwwerschreiwe wëllt, addéiere de –keep-version Fändel).

Wa mir probéieren de Package direkt z'installéieren, komme mir op e liicht Problem:

# rpm -Uvh dateutils-0.3.1-2.1.x86_64.rpm 

Fir dëst Thema ze léisen, wäerte mir den Epel-Test-Repository aktivéieren an d'rpmrebuild Utility installéieren fir d'Astellunge vum Package z'änneren fir opzebauen:

# yum --enablerepo=epel-testing install rpmrebuild

Dann lafen,

# rpmrebuild -pe dateutils-0.3.1-2.1.x86_64.rpm

Wat Äre Standard Texteditor opmaacht. Gitt an d'Sektioun %Dateien a läscht d'Zeilen, déi op d'Verzeichnisser bezéien, déi an der Fehlermeldung ernimmt sinn, späichert dann d'Datei a gitt aus:

Wann Dir d'Datei verléisst, gitt Dir gefrot fir mat der Neiopbau weiderzemaachen. Wann Dir Y wielt, gëtt d'Datei an de spezifizéierte Verzeechnes nei opgebaut (aner wéi den aktuellen Aarbechtsverzeichnis):

# rpmrebuild –pe dateutils-0.3.1-2.1.x86_64.rpm

Elo kënnt Dir weidergoen fir de Package z'installéieren an z'iwwerpréiwen wéi gewinnt:

# rpm -Uvh /root/rpmbuild/RPMS/x86_64/dateutils-0.3.1-2.1.x86_64.rpm
# rpm -qa | grep dateutils

Schlussendlech kënnt Dir déi eenzel Tools oplëschten, déi mat Dateutils abegraff waren an alternativ hir jeeweileg Man Säiten iwwerpréiwen:

# ls -l /usr/bin | grep dateutils

Schrëtt 3: Ëmwandlung vun .rpm zu .deb Package

An dëser Rubrik wäerte mir illustréieren wéi Dir vun .rpm op .deb konvertéiert. An enger 32-Bit Debian Wheezy Këscht, loosst eis den .rpm Package fir d'zsh Shell vum CentOS 6 OS Repository eroflueden. Notéiert datt dës Shell net als Standard an Debian an Derivate verfügbar ass.

# cat /etc/shells
# lsb_release -a | tail -n 4
# 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

Dir kënnt d'Messagen iwwer eng fehlend Ënnerschrëft sécher ignoréieren:

No e puer Momenter sollt d'.deb-Datei generéiert ginn a prett sinn fir ze installéieren:

# dpkg -i zsh_4.3.11-5_i386.deb

No der Installatioun kënnt Dir verifizéieren datt zsh op d'Lëscht vu gültege Shells bäigefüügt ass:

# cat /etc/shells

Resumé

An dësem Artikel hu mir erkläert wéi Dir vun .rpm op .deb konvertéiert a vice-versa fir Packagen als leschten Auswee z'installéieren wann esou Programmer net an de Repositories oder als verdeelbare Quellcode verfügbar sinn. Dir wëllt dësen Artikel e Lieszeechen well all eis Alien op eng oder aner Zäit brauchen.

Fillt Iech gratis Är Gedanken iwwer dësen Artikel ze deelen andeems Dir de Formulaire hei drënner benotzt.