Instalar apt-get en redhat

9

¿Es posible instalar apt-geten redhat? Tengo la impresión de que no puedes, pero solo quería estar seguro. Si es posible, la vida sería MUCHO más fácil al instalar varios programas, especialmente porque yumrealmente no tiene tantos programas disponibles parece.

Esto es lo que he intentado (solo para el registro):

He estado tratando de instalar apt-get siguiendo estas instrucciones, pero redhat no tiene dpkg, así que vuelvo al punto 1.

Estoy haciendo esta pregunta porque estoy teniendo dificultades para instalar un complemento para pidgin (pidgin-sipe) porque yum install libglib2.0-devestá fallando, lo que es evidencia para mí de que tener apt-get podría ser una inversión que vale la pena.

¿Alguna sugerencia?

ajsmart
fuente
3
Para referencia futura, también descubrí que también yum install pidgin-sipefunciona. Resulta que no necesitaba una instalación manual después de todo, pero fue una gran experiencia de aprendizaje de todos modos.
ajsmart

Respuestas:

10

No necesita reemplazar su herramienta de administración de paquetes simplemente porque parece que falta un paquete.

Cada herramienta de gestión de paquetes está estrechamente integrada con su distribución, y esto no es diferente con CentOS. aptestá bien integrado con Debian y sus derivados, e incluso si (Debian, Ubuntu, Mint, Knoppix ...) usan la misma herramienta para la administración de paquetes, sus paquetes están vinculados y configurados con versiones de paquetes específicos que en algunos casos solo funcionarán con dependencias específicas que tiene esa distribución.

Lo que necesita es instalar el paquete de desarrollo glibespecífico para sistemas operativos similares a redhat:

yum install glib2-devel.x86_64

La advertencia aquí es que tendrá que encontrar un paquete equivalente, que puede tener un nombre diferente en su distribución. Saber cómo buscar paquetes en la distribución que está utilizando es un tiempo bien invertido en el conocimiento.

¿Cómo descubrí que este era el nombre?

[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

Y al mostrar la información del paquete, puede ver que parece ser el mismo paquete de desarrollo de la biblioteca:

[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.

Además, si no está familiarizado con la búsqueda de paquetes, esta herramienta en línea puede ayudarlo a encontrar paquetes en las distribuciones de Linux más comunes: Búsqueda de paquetes de Linux

Faheem Mitha
fuente
Me encuentro mucho con este problema, pero ¿hay un equivalente para todo? Quiero decir, si los repos son diferentes, me implica que cada uno tendrá programas / características que el otro no tiene.
ajsmart
1
La mayoría de los paquetes CLI comunes ( glib, linux-utils, iputils2, dos-utils, nmap, tcpdumpy mucha más) y las interfaces gráficas son envasados en las distribuciones, así que sí, la oportunidad es grande que si usted tiene un paquete disponible en DebianEs posible que tenga en CentOSo sobre él de repos de la comunidad;)
Es el caso de que diferentes distribuciones de Linux tienen diferentes prioridades, y esto se refleja en qué paquetes están disponibles. Si este es un problema con el que se encuentra mucho, puede ser que otra distribución de Linux tenga prioridades más como la suya. distrowatch.com puede ser útil para las comparaciones.
bgvaughan
Pero en este caso pregunta específica, glibdev material relacionado es algo que se puede encontrar en la mayoría de las distribuciones ...
@bgvaughan Hubiera elegido una distribución diferente, pero esto está relacionado con el trabajo. Lamentablemente, realmente no tengo otra opción. La única versión corporativa compatible de Linux es RHEL, pero si tuviera que elegir, habría elegido Ubuntu, o uno de sus derivados.
ajsmart
12

TL; DR apt generalmente no funciona de forma inmediata con las distribuciones basadas en Enterprise Linux y de todos modos no encontrará muchos repositorios que funcionen para usted.

Si tiene problemas para encontrar el software que desea en Red Hat, es porque sus repositorios no tienen los paquetes. Lo que desea analizar es agregar diferentes repositorios. Para Red Hat Enterprise Linux, el primer repositorio que generalmente se agrega es Paquetes adicionales para Enterprise Linux (EPEL) alojados en The Fedora Project. Probablemente encontrarás MUCHO de lo que te estás perdiendo en ese repositorio.

Más información:

Si bien es posible instalar las aptutilidades de administración de paquetes en un sistema Enterprise Linux, eso no significa que podrá hacer nada con él una vez que haya terminado.

El problema aquí es que la aptutilidad es un programa que funciona con directorios publicados de paquetes de software (repositorios es el nombre habitual para mí, pero puede variar). Yum, rpm, dnf, emerge, Etc, son todos los servicios públicos en las distribuciones de variables * NIX que hacen lo mismo. Pero no ofrecen el software ellos mismos, están configurados para consultar los repositorios y proporcionarles paquetes. El otro problema es que los repositorios comunes que se encuentran en línea a menudo se crean configurados para funcionar con las utilidades de administración de paquetes nativas para el sistema operativo para el que están ofreciendo software. Probablemente puedas configurarapten su sistema RHEL7 para consultar los repositorios de Debian, pero es probable que el software sea incompatible con su sistema debido a las diferencias en cómo Debian y Red Hat construyen, diseñan, estructuran y configuran sus sistemas operativos. Es como intentar instalar el software Mac OS X en su sistema Linux. Ambos están basados ​​en * NIX técnicos, pero varían ampliamente en cómo funcionan.

0x perro pastor
fuente
1
Entonces, para aclarar, ¿básicamente estás diciendo que no necesito apt SI tengo los repositorios agregados a mi sistema? (¡Gracias por el enlace!)
ajsmart
Solo necesita encontrar el paquete que sea "equivalente" a su distribución. Echa un vistazo a mi respuesta @ajsmart
¡Correcto! Apt es una herramienta para extraer paquetes, comúnmente utilizada por las distribuciones basadas en Debian. Rpm, Yum y Dnf son una familia de herramientas utilizadas por Enterprise Linux. Los repositorios que usan también son diferentes, pero no por las herramientas sino por la familia de sistemas operativos para los que los repositorios sirven software. Buena suerte y háganos saber si necesita más.
0xSheepdog
2

Estoy haciendo esta pregunta porque tengo algunas dificultades para instalar un complemento para pidgin (pidgin-sipe) porque yum install libglib2.0-dev está fallando, lo que es una evidencia de que tener apt-get podría ser una inversión que vale la pena.

Respuesta corta: en realidad no, no.

Hay un puerto aptpara rpm, a saber, apt-rpm . Era utilizable hasta hace relativamente poco tiempo, pero que yo sepa, Red Hat y sus derivados no lo admiten, por lo que puede que no lo sea ahora. El desarrollo parece haberse estancado desde 2008, lo cual no es prometedor. Además, apt-rpmno se puede usar con repositorios yum, por lo que no es útil a menos que alguien haya creado rpmrepositorios con los que se pueda usar apt.

También hubo una variante llamada apt4rpm creada por Connectiva, pero parece que se usó incluso menos que apt-rpm.

Instalar Debian's apten un sistema Red Hat es una pérdida de tiempo, incluso si se instala con éxito. dpkgestá disponible para Red Hat, o al menos solía estarlo. Pero creo que tratar de configurar un sistema paralelo similar a Debian dpkgy aptsería un completo no iniciador.

Recuerdo haberlo usado apt-rpmen un sistema Red Hat alrededor de 2006 para la administración básica del sistema. Si la memoria sirve, fue una instalación de CentOS. Todavía funcionó bastante bien entonces. Pero esto es 2017, y supongo que apt-rpmahora está efectivamente muerto.

En cualquier caso, dudo que usar aptun sistema Red Hat, incluso si estuviera disponible y fuera funcional, marcaría una gran diferencia en su experiencia. La razón por la que aptfunciona bien en Debian y sus derivados no se debe a la calidad mágica que aptposee. Se debe principalmente al famoso control de calidad de Debian, aunque las herramientas de administración de paquetes de Debian ( dpkg, aptetc.) pueden tomar parte del crédito por estar bien diseñadas e implementadas.

Si desea la "experiencia adecuada", use Debian.

Faheem Mitha
fuente
Pero esto no cambiará las necesidades de operación de un libglib2.0-devpaquete ... y la instalación aptno hará que el paquete cambie los nombres ... Lo seguirá siendo apt-get install glib2-devel.x86_64, y el esfuerzo invertido en la instalación aptpodría utilizarse mejor para buscar el paquete ...
¿Te importaría explicar el voto negativo?
Faheem Mitha
Eliminado el voto negativo. Su primera versión de la respuesta fue de alguna manera líder que la instalación apt-rpmpodría ser una solución;)
@nwildner: No veo dónde he implicado eso.
Faheem Mitha
1

Es posible hacer esto, pero es muy difícil, generalmente recomendado, y casi seguro innecesario.

Lo que ha preguntado es cómo instalar el sistema de gestión de paquetes de Debian en un sistema Red Hat.

El sistema de administración de paquetes rastrea qué paquetes están instalados en un sistema, facilitando la instalación y actualizaciones de paquetes, rastreando dependencias y evitando conflictos entre paquetes. Particularmente por las dos últimas razones, los diferentes sistemas de administración de paquetes son fundamentalmente incompatibles entre sí; tratar de usar dos sistemas diferentes al mismo tiempo, sin una supervisión muy cuidadosa, rápidamente inutilizará su sistema, ya que efectivamente intentaría instalar dos distribuciones de Linux diferentes una encima de la otra.

Cuando se mapea el árbol genealógico de las distribuciones de Linux, el punto de ramificación principal es la elección del sistema de gestión de paquetes. Los dos sistemas más comunes son el sistema de gestión de paquetes de Debian, DPKG, y el sistema de gestión de paquetes de Red Hat, RPM. "apt-get" es un front-end para usar el sistema DPKG, y requiere que el resto del conjunto de herramientas funcione; asimismo, "yum" es un front-end para usar el sistema RPM.

A veces es posible convertir un paquete de un sistema a otro. alien es una aplicación para hacer esto. Tenga en cuenta que casi nunca se menciona sin advertir que no es confiable.

Si el problema que desea resolver es que desea instalar una aplicación específica en un sistema Red Hat, entonces puede encontrar que funciona mejor usar un paquete de otra distribución de Linux que use RPM; rpmfind puede ayudarlo a buscar. Es un poco más confiable encontrar un RPM de origen y reconstruirlo en su sistema; eso reduce la probabilidad de problemas con dependencias en binarios compilados específicos. O bien, puede omitir la administración de paquetes buscando el archivo tar de origen para la aplicación y compilándolo.

Si el problema que desea resolver es tener más paquetes disponibles en general, entonces debe tener en cuenta que Red Hat Enterprise Linux, por diseño, tiene un énfasis en la estabilidad, y sus repositorios oficiales son relativamente limitados. Es posible que prefiera usar el Linux Fedora estrechamente relacionado, que tiene una selección mucho más grande de paquetes en sus repositorios oficiales, o puede cambiar a Debian o uno de sus derivados.

bgvaughan
fuente
0

Como otras personas dijeron en las respuestas anteriores, las distribuciones y su gestión de paquetes están estrechamente unidas. Si necesita instalar cosas de Debian o Ubuntu repos en su distribución basada en RPM, creo que su mejor opción es configurar un chroot correspondiente (a través de debootstrap) e instalar lo que sea que necesite allí. Entonces básicamente tendrás un Debian corriendo "junto" a tu distribución.

Luego puede configurar enlaces simbólicos y / o scripts que ejecuten cualquier aplicación que haya instalado desde el chroot, y esto también funciona para aplicaciones gráficas. Lo he estado haciendo por razones de sandboxing con varias aplicaciones, pero la tuya también es una razón válida. Un Debian en un contenedor Docker es una opción similar que puede probar, básicamente, un chroot sandboxed mucho mejor.

ttsiodras
fuente
-2

Este tutorial parece mostrarlo: http://everyday-tech.com/apt-get-on-centos/

Sin embargo, el problema que tiene con menos paquetes es porque no tiene tantos repositorios o el nombre de los paquetes es diferente (por ejemplo: apache2 en debian basado y httpd en red hat).

Puede usar: yum searchpara buscar paquetes

Aquí hay un documento sobre cómo agregar repositorios yum:

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

Adonista
fuente