Debian y Red Hat tienen muchas diferencias entres sí, y si bien con la llegada de systemd se han puesto varias cosas en común; todavía existen muchas características únicas de estos dos sistemas. Entre ellas estarían los paquetes que éstos usan: RPM para Red Hat y DEB para Debian.
A la hora de querer instalar un nuevo software en una distribución, tendríamos dos opciones disponibles: La primera y más práctica sería recurrir al gestor de paquetes del sistema operativo, con el cual podemos instalar casi instantáneamente una enorme cantidad de herramientas; dichos gestores se denominarían apt-get en Debian y yum en Red-Hat. Obviamente estos repositorios no son infalibles y no tienen todos los paquetes existentes, con lo que a veces es necesario instalar los paquetes .deb o .rpm a mano, cosa bastante sencilla en general; ¿Pero qué pasa cuando dichos paquetes no existen? ¿Qué pasa cuando buscamos un paquete para Debian pero solo existe para Red Hat o viceversa? Ahí es donde entraría la herramienta de la que os quiero hablar hoy: Alien.

Alien es una herramienta muy sencilla e intuitiva que permite convertir paquetes de formato deb en rpm y viceversa. La conversión generalmente da problemas y convierte casi al instante los paquetes de un formato a otro, ahorrándonos tener que recurrir a métodos o herramientas alternativas. La conversión de un paquete .deb a .rpm se realizaría usando esta estructura:
alien -d paquete.rpm
En cambio si deseásemos realizar una conversión inversa; es decir de .rpm a .deb, usaríamos el parámetro -r:
alien -r paquete.deb
Un buen ejemplo de ello sería el paquete Networker; también conocido como lgtoclnt.
alien -d lgtoclnt-7.5.1-1.i686.rpm
El problema que tiene dicha conversión es que por defecto no incluye los scripts de pre-instalación y post-instalación; scripts que aplicarían las configuraciones relacionadas con el paquete. Esto en la mayoría de las ocasiones puede ser un problema, con lo que lo mejor es incluirlos mediante el parámetro --scripts.
alien --scripts-d lgtoclnt-7.5.1-1.i686.rpm
Además, alien es capaz de tratar con más paquetes además de los rpm y lo deb, que si bien son menos conocidos, existen. En concreto es capaz de tratar los paquetes tipo .tgz (pertenecientes a Slackware), los paquetes .slp (pertenecientes Stampede) y paquetes LSB. La conversión a dichos formatos se realizaría mediante los siguientes parámetros:
- -t: Conversión a formato .tgz.
- --to-slp: Conversión a paquetes .slp.
- -l: Conversión a formato LSB.
Como podéis ver las características de este conversor nos puede permitir transformar paquetes que en un principio no estaban disponibles para nuestras distribuciones, convirtiéndola en una herramienta de un valor incalculable.
Espero que os haya resultado útil.
Saludos.