Installazione di apt-get su redhat


9

È possibile installare apt-getsu Redhat? Ho l'impressione che non puoi, ma volevo solo esserne sicuro. Se è possibile, la vita sarebbe MOLTO più semplice quando si installano vari programmi, soprattutto perché yumsembra che non ci siano tanti programmi disponibili.

Ecco cosa ho provato (solo per la cronaca):

Ho provato a installare apt-get seguendo queste istruzioni, ma redhat non ha dpkg, quindi sono tornato al punto 1.

Sto ponendo questa domanda perché ho qualche difficoltà a installare un plugin per pidgin (pidgin-sipe) perché yum install libglib2.0-devnon funziona, il che è una prova per me che avere apt-get potrebbe essere un investimento utile.

Eventuali suggerimenti?


3
Per riferimento futuro, ho anche scoperto che yum install pidgin-sipefunziona anche. Alla fine non ho avuto bisogno di un'installazione manuale, ma è stata comunque un'ottima esperienza di apprendimento.
ajsmart,

Risposte:


10

Non è necessario sostituire lo strumento di gestione dei pacchetti solo perché sembra mancare un pacchetto.

Ogni strumento di gestione dei pacchetti è strettamente integrato con la sua distribuzione, e questo non è diverso con CentOS. aptè ben integrato con Debian e i suoi derivati, e anche se (Debian, Ubuntu, Mint, Knoppix ...) usano lo stesso strumento per la gestione dei pacchetti, i loro pacchetti sono collegati e configurati con versioni di pacchetti specifici che in alcuni casi funzioneranno solo con dipendenze specifiche che tale distribuzione ha.

Ciò di cui hai bisogno è installare il pacchetto dev di glibspecifici per SO redhat-simili:

yum install glib2-devel.x86_64

L'avvertenza qui è che dovrai trovare un pacchetto equivalente, che può avere un nome diverso sulla tua distribuzione. Saper cercare pacchetti sulla distribuzione che stai utilizzando è un po 'di tempo ben speso per la conoscenza.

Come ho scoperto che questo era il nome:

[root@ftp ~]# yum search glib2| grep dev
glib2-devel.i686 : A library of handy utility functions
glib2-devel.x86_64 : A library of handy utility functions
spice-glib-devel.i686 : Development files to build Glib2 applications with
spice-glib-devel.x86_64 : Development files to build Glib2 applications with

E mostrando le informazioni sul pacchetto, puoi vedere che sembra essere lo stesso pacchetto di sviluppo della libreria:

[root@ftp ~]# yum info glib2-devel.x86_64
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.brisanet.com.br
 * extras: centos.brisanet.com.br
 * rpmforge-extras: apt.sw.be
 * updates: centos.brisanet.com.br
Available Packages
Name        : glib2-devel
Arch        : x86_64
Version     : 2.28.8
Release     : 9.el6
Size        : 300 k
Repo        : base
Summary     : A library of handy utility functions
URL         : http://www.gtk.org
License     : LGPLv2+
Description : The glib2-devel package includes the header files for the GLib library.

Inoltre, se non si ha familiarità con la ricerca di pacchetti, questo strumento online può aiutare a trovare pacchetti sulle distribuzioni Linux più comuni: Ricerca pacchetti Linux


Ho riscontrato questo problema molto, ma esiste un equivalente per tutto? Voglio dire, se i repository sono diversi, ciò implica per me che ciascuno avrà programmi / funzionalità che l'altro non ha.
ajsmart,

1
La maggior parte dei pacchetti CLI comuni ( glib, linux-utils, iputils2, dos-utils, nmap, tcpdumpe un sacco di più) e delle interfacce grafiche sono confezionati sulle distribuzioni, quindi sì, il caso è grande che se si dispone di un pacchetto disponibile su Debianvoi potrebbe avere sul CentOSo su di essa la comunità pronti contro termine;)

È possibile che diverse distribuzioni Linux abbiano priorità diverse, e questo si riflette in quali pacchetti sono disponibili. Se questo è un problema che riscontri molto, è possibile che un'altra distribuzione Linux abbia priorità più simili alla tua. distrowatch.com può essere utile per i confronti.
bgvaughan,

Ma in questo caso specifico, le glibcose relative agli sviluppatori sono qualcosa che puoi trovare sulla maggior parte delle distribuzioni ...

@bgvaughan Avrei scelto una distribuzione diversa, ma questo è legato al lavoro. Purtroppo, non ho davvero scelta. L'unica versione aziendale supportata di Linux è RHEL, ma se avessi una scelta, avrei scelto Ubuntu o uno dei suoi derivati.
ajsmart,

12

TL; DR di apt solito non funziona subito con le distribuzioni basate su Enterprise Linux e non troverai comunque molti repository adatti a te.

Se hai problemi a trovare il software che desideri su Red Hat, è perché i tuoi repository non hanno i pacchetti. Quello che vuoi esaminare è l'aggiunta di diversi repository. Per Red Hat Enterprise Linux, il primo repository da aggiungere di solito è Pacchetti extra per Enterprise Linux (EPEL) ospitati presso The Fedora Project. Probabilmente troverai MOLTO quello che ti manca in quel repository.

Maggiori informazioni:

Sebbene sia certamente possibile installare le aptutility di gestione dei pacchetti su un sistema Enterprise Linux, ciò non significa che una volta terminato, sarai in grado di fare qualsiasi cosa con esso.

Il problema qui è che l' aptutilità è un programma che funziona con le directory pubblicate dei pacchetti software (i repository sono il solito nome per me, ma possono variare). Yum, rpm, dnf, emerge, Ecc sono tutte le utenze al variare delle distribuzioni * NIX che fanno la stessa cosa. Ma non offrono loro stessi il software, sono configurati per interrogare i repository e fornire pacchetti da essi. L'altro problema è che i repository comuni che trovi online sono spesso creati con configurati per funzionare con le utility di gestione dei pacchetti nativi per il sistema operativo per cui offrono software. Probabilmente potresti configurarloaptsul tuo sistema RHEL7 per interrogare i repository Debian, ma il software sarebbe probabilmente incompatibile con il tuo sistema a causa delle differenze nel modo in cui Debian e Red Hat costruiscono, layout, struttura e configurazione dei loro sistemi operativi. È come provare a installare il software Mac OS X sul tuo sistema Linux. Sono entrambi basati su * NIX tecnici, ma variano ampiamente nel modo in cui funzionano.


1
Quindi, per chiarire, stai essenzialmente dicendo che non ho bisogno di apt SE ho i repository aggiunti al mio sistema? (Grazie per il link!)
ajsmart,

Devi solo trovare il pacchetto "equivalente" alla tua distribuzione. Dai un'occhiata alla mia risposta @ajsmart

Corretta! Apt è uno strumento per estrarre i pacchetti, comunemente usato dalle distribuzioni basate su Debian. Rpm, Yum e Dnf sono una famiglia di strumenti utilizzati da Enterprise Linux. Anche i repository che usano sono diversi, ma non a causa degli strumenti ma a causa della famiglia di sistemi operativi per i quali i repository servono software. Buona fortuna e facci sapere se hai bisogno di più.
0xSheepdog,

2

Sto ponendo questa domanda perché ho qualche difficoltà a installare un plug-in per pidgin (pidgin-sipe) perché l'installazione di libglib2.0-dev non funziona, il che dimostra che avere apt-get potrebbe essere un investimento utile.

Risposta breve: non proprio, no.

C'è una porta aptper rpm, vale a dire apt-rpm . Era utilizzabile fino a poco tempo fa, ma per quanto ne so, Red Hat e i suoi derivati ​​non lo supportano, quindi potrebbe non esserlo ora. Lo sviluppo sembra essersi bloccato dal 2008, il che non è promettente. Inoltre, apt-rpmnon può essere utilizzato con repository yum, quindi non è utile a meno che qualcuno non abbia creato rpmrepository che possono essere utilizzati con apt.

C'era anche una variante chiamata apt4rpm creata da Connectiva, ma sembra essere stata persino meno utilizzata di apt-rpm.

L'installazione di Debian aptsu un sistema Red Hat è una perdita di tempo, anche se si installa correttamente. dpkgè disponibile per Red Hat, o almeno lo era. Ma cercare di impostare un sistema simile a Debian parallelo usando dpkge aptsarebbe un completo non-starter, credo.

Ricordo di aver usato apt-rpmun sistema Red Hat intorno al 2006 per l'amministrazione di base del sistema. Se la memoria serve, si trattava di un'installazione CentOS. Ha funzionato ancora abbastanza bene allora. Ma questo è il 2017, e la mia ipotesi sarebbe che apt-rpmora è effettivamente morto.

In ogni caso, dubito che l'utilizzo aptsu un sistema Red Hat, anche se fosse disponibile e funzionale, farebbe molta differenza per la tua esperienza. Il motivo per cui aptfunziona bene su Debian e sui suoi derivati ​​non è dovuto alla qualità magica che aptpossiede. È principalmente a causa del famoso controllo di qualità di Debian, sebbene gli strumenti di gestione dei pacchetti Debian ( dpkg, aptecc.) Possano prendersi un po 'del merito per essere ben progettati e implementati.

Se vuoi "esperienza apt", usa Debian.


Ma questo non cambierà le esigenze operative di un libglib2.0-devpacchetto ... e l'installazione aptnon farà cambiare i nomi dei pacchetti ... Lo sarà ancora apt-get install glib2-devel.x86_64, e lo sforzo speso per l'installazione aptpotrebbe essere meglio usato per cercare il pacchetto ...

Ti interessa spiegare il downvote?
Faheem Mitha,

Rimosso il downvote. La tua prima versione della risposta stava in qualche modo portando che l'installazione apt-rpmpotrebbe essere una soluzione;)

@nwildner: non vedo dove lo abbia mai insinuato.
Faheem Mitha,

1

È possibile farlo, ma molto difficile, generalmente sconsigliato e quasi sicuramente non necessario.

Quello che ti è stato chiesto è come installare il sistema di gestione dei pacchetti Debian su un sistema Red Hat.

Il sistema di gestione dei pacchetti tiene traccia dei pacchetti installati in un sistema, facilitando l'installazione e gli aggiornamenti dei pacchetti, monitorando le dipendenze ed evitando conflitti tra i pacchetti. In particolare per questi ultimi due motivi, i diversi sistemi di gestione dei pacchetti sono fondamentalmente incompatibili tra loro; il tentativo di utilizzare due sistemi diversi contemporaneamente, senza un'attenta supervisione, renderà rapidamente inutilizzabile il sistema, poiché si cercherebbe effettivamente di installare due diverse distribuzioni Linux l'una sull'altra.

Quando si mappa l'albero genealogico delle distribuzioni Linux, il punto di ramificazione primario è la scelta del sistema di gestione dei pacchetti. I due sistemi più comuni sono il sistema di gestione dei pacchetti Debian, DPKG, e il sistema di gestione dei pacchetti Red Hat, RPM. "apt-get" è un front-end per l'utilizzo del sistema DPKG e richiede il resto del set di strumenti per funzionare; allo stesso modo, "yum" è un front-end per l'utilizzo del sistema RPM.

Talvolta è possibile convertire un pacchetto da un sistema all'altro. alien è un'applicazione per farlo. Si noti che non è quasi mai menzionato senza preavviso che non è affidabile.

Se il problema che si desidera risolvere è che si desidera installare un'applicazione specifica su un sistema Red Hat, è possibile che funzioni meglio utilizzare un pacchetto di un'altra distribuzione Linux che utilizza RPM; rpmfind può aiutarti a cercare. È leggermente più affidabile trovare un RPM sorgente e ricostruirlo sul proprio sistema; ciò riduce la probabilità di problemi con dipendenze da specifici binari compilati. In alternativa, è possibile ignorare la gestione dei pacchetti trovando il tarball di origine per l'applicazione e compilarlo.

Se il problema che vuoi risolvere è avere più pacchetti disponibili in generale, allora dovresti tenere presente che Red Hat Enterprise Linux, in base alla progettazione, pone l'accento sulla stabilità e che i suoi repository ufficiali sono relativamente limitati. Puoi preferire l'uso del Fedora Linux strettamente correlato, che ha una selezione molto più ampia di pacchetti nei suoi repository ufficiali, oppure potresti voler passare a Debian o ad uno dei suoi derivati.


0

Come altre persone hanno detto nelle risposte sopra, le distribuzioni e la loro gestione dei pacchetti sono strettamente legate. Se hai bisogno di installare cose dai repository Debian o Ubuntu nella tua distro basata su RPM, credo che la soluzione migliore sia impostare un chroot corrispondente (tramite debootstrap) e installare tutto ciò di cui hai bisogno. Quindi fondamentalmente avrai un Debian in esecuzione "a fianco" della tua distribuzione.

È quindi possibile impostare collegamenti simbolici e / o script che eseguono qualsiasi applicazione installata dal chroot - e questo funziona anche per le applicazioni grafiche. L'ho fatto per motivi di sandboxing con varie app, ma anche il tuo è un motivo valido. Un Debian in un contenitore Docker è un'opzione simile che puoi provare - fondamentalmente, un chroot sandbox molto migliore.


-2

Questo tutorial sembra mostrarlo: http://everyday-tech.com/apt-get-on-centos/

Comunque il problema che stai riscontrando con meno pacchetti è perché non hai tanti repository o il nome dei pacchetti è diverso (es: apache2 su debian e httpd su red hat).

Puoi usare: yum searchper trovare i pacchetti

Ecco un documento su come aggiungere repository yum:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-Managing_Yum_Repositories.html

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.