Alien ulanyp, RPM-den DEB we DEB-den RPM paketine nädip öwürmeli


Öňden bilşiňiz ýaly, Linux-da programma üpjünçiligini gurmagyň köp usuly bar: paýlanyşyňyz bilen üpjün edilen paket dolandyryş ulgamyny (başarnyk, ýum ýa-da zypper, birnäçe mysal bellemek üçin) çeşmeden düzülen (birneme bolsa-da) Bu günler seýrek, Linux-yň ilkinji günlerinde bar bolan ýeke-täk usuldy) ýa-da degişlilikde .deb we .rpm özbaşdak, deslapky bukjalar bilen dpkg ýa-da rpm ýaly pes derejeli gural ulanmakdy.

Bu makalada, dürli Linux paket formatlarynyň arasynda öwrülýän, .rpm .deb (we tersine) iň köp ulanylýan gural bolan keseki bilen tanyşdyrarys.

Bu gural, hatda awtory ony dowam etdirmeýän hem-de web sahypasynda keseki adamyň hemişe synag ýagdaýynda galjakdygyny mälim edeninde-de, belli bir paket görnüşi gerek bolsa, diňe şol programmany başga paket görnüşinde tapyp bilersiňiz.

Mysal üçin, inkjet printer üçin .deb sürüjisini gözlänimde, keseki günümi bir gezek halas etdi - öndüriji diňe .rpm paketini berdi. Gelmişek gurdum, bukjany öwürdim we köp wagt geçmänkä printerimi hiç hili kynçylyksyz ulanyp bildim.

Saidagny, bu peýdaly enjamyň möhüm ulgam faýllaryny we kitaphanalaryny çalyşmak üçin ulanylmaly däldigini aýdyňlaşdyrmaly, sebäbi paýlamalarda başgaça gurulýar. Diňe şu makalanyň başynda teklip edilýän gurnama usullary zerur programma üçin mümkin bolmasa, keseki adamy iň soňky ýol hökmünde ulanyň.

Iň soňkusy, iň azyndan, bu makalada CentOS we Debian ulanjakdygymyzy bellemelidiris, gelmişek ilkinji iki paýlamadan we degişli maşgalalardan başga-da Slackware-da we hatda Solaris-de işleýär.

1-nji ädim: Gelmişekleri we baglylyklary gurmak

CentOS/RHEL 7-de keseki gurmak üçin, EPEL we Nux Dextop (hawa, bu Dextop - Iş stoly däl) ammarlaryny tertipde işletmeli bolarsyňyz:

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

Bu ammaryna mümkinçilik berýän bukjanyň iň soňky wersiýasy häzirki wagtda 0,5 (2015-nji ýylyň 10-njy awgustynda çap edildi). Has dowam etmezden ozal täze wersiýasynyň bardygyny ýa-da ýokdugyny bilmek üçin http://li.nux.ro/download/nux/dextop/el7/x86_64/ barlamaly:

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

soň et,

# yum update && yum install alien

Fedora-da diňe iň soňky buýrugy işletmeli bolarsyňyz.

Debian we emele gelen zatlarda, ýerine ýetiriň:

# aptitude install alien

2-nji ädim: .deb-den .rpm paketine öwürmek

Bu synag üçin, köp mukdarda maliýe maglumatlary bilen iş salyşmak üçin sene we wagt hyzmatlaryny üpjün edýän hurma saýladyk. .Deb paketini CentOS 7 gutusymyza göçürip alarys, ony .rpm-e öwreris we gurarys:

# 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

Üns beriň: (Düzgüne görä, keseki maksatly paketiň wersiýasyny az mukdarda nädip köpeldýändigine üns bermegiňizi haýyş edýäris.

Bukjany derrew gurnamaga synanyşsak, azajyk meselä başlarys:

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

Bu meseläni çözmek üçin epel-synag ammaryna mümkinçilik dörederis we täzeden guruljak paketiň sazlamalaryny redaktirlemek üçin rpmrebuild kömekçi enjamyny gurarys:

# yum --enablerepo=epel-testing install rpmrebuild

Soň ylga,

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

Adaty tekst redaktoryňyzy açar. % faýllary bölümine giriň we säwlik habarynda görkezilen kataloglara degişli setirleri pozuň, soňra faýly ýazdyryň we çykyň:

Faýldan çykanyňyzda täzeden gurmagy dowam etdirmek soralar. Y saýlasaňyz, faýl görkezilen kataloga täzeden gurlar (häzirki işleýän katalogdan tapawutly):

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

Indi bukjany gurnap, hemişeki ýaly barlap bilersiňiz:

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

Netijede, hurma bilen goşulan aýratyn gurallary sanap bilersiňiz we başga-da degişli adam sahypalaryny barlap bilersiňiz:

# ls -l /usr/bin | grep dateutils

3-nji ädim: .rpm-den .deb paketine öwürmek

Bu bölümde .rpm-den .deb-e nädip öwrülmelidigini görkezeris. 32 bitli Debian Wheezy gutusynda, CentOS 6 OS ammaryndan zsh gabygy üçin .rpm paketini göçürip alalyň. Bu gabygyň deslapky görnüşde Debian we öndürijilerde elýeterli däldigine üns beriň.

# 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

Missingitirilen gol baradaky habarlary arkaýyn äsgermezlik edip bilersiňiz:

Birnäçe salymdan soň .deb faýly döredilip, gurmaga taýyn bolmaly:

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

Gurlandan soň, zsh-iň dogry gabyklaryň sanawyna goşulandygyny barlap bilersiňiz:

# cat /etc/shells

Gysgaça mazmun

Bu makalada ammarlarda ýa-da paýlanylýan çeşme kody hökmünde ýok bolsa, paketleri iň soňky ýol hökmünde gurnamak üçin .rpm-den .deb-e we tersine öwürmegiň usullaryny düşündirdik. Bu makalany bellik etmek islärsiňiz, sebäbi hemmämize bir wagtyň özünde keseki gerek bolar.

Aşakdaky formdan peýdalanyp, bu makala baradaky pikirleriňizi paýlaşyp bilersiňiz.