Estos días estuve ocupado instalando el SDK (Software Development Kit) de Informix en un servidor Debian. Y junto con eso tuve que instalar el GSKit (IBM Global Security Kit), el cual viene disponible sólo como paquete para Red Hat (.rpm).

En este artículo voy a explicar cómo convertir un paquete de Red Hat (RPM) en un paquete de Debian (.deb).



Por cierto no esperen muchos artículos dedicados a Informix en este blog. Saben que no me gusta colaborar con la difusión de software propietario, especialmente cuando es tremenda bazofia. Sin embargo fue la excusa perfecta para probar ésto (que nunca me había tocado hacer, porque todo software decente viene disponible para Debian o están disponibles sus fuentes para compilar): instalar un paquete de Red Hat (o CentOS) en formato RPM en un sistema Debian.

Cabe recordar que un paquete es un simple archivo de almacenamiento, o fichero de archivo (no hay una traducción al español no redundante para el término archive file), como cualquier ZIP, RAR o tarball. Es decir, un archivo que contiene uno o más archivos junto con metadatos para su extracción.

A fin de convertir entre formatos de paquetes existe la herramienta alien. Se trata de un programa que convierte entre formatos de archivo rpm (Red Hat), deb (Debian), slp (Stampede), tgz (Slackware) y pkg (Solaris). Esto permite instalar un paquete de otra distribución, previamente convirtiéndolo al formato adecuado.

Se debe tener en cuenta que no se debe utilizar esta herramienta para reemplazar paquetes importantes del sistema, como el gestor de inicio, la libc o cualquier otra pieza escencial para el funcionamiento del sistema. Estos paquetes difieren entre distribuciones y no se pueden intercambiar, sin contar con que muy probablemente no pasen un control de dependencias mínimo. Aunque en general no hay problemas cuando se trata de paquetes pequeños que no tienen dependencias importantes con el resto del sistema.

Para instalar alien en Debian simplemente ejecutar:

# apt-get install alien

En este caso necesito convertir a formato de Debian e instalar el paquete gskcrypt64-8.0.50.75.linux.x86_64.rpm. Por supuesto el paquete debe haber sido compilado para la arquitectura de nuestro sistema, de lo contrario no funcionará.

Para convertir un paquete a formato deb, utilizar la opción -d:

# alien -d PAQUETE.(rpm|slp|tgz|pkg)

Veamos cómo funciona:

root@debian:/usr/local/informix/gskit# alien -d gskcrypt64-8.0.50.75.linux.x86_64.rpm 
Warning: Skipping conversion of scripts in package gskcrypt64: postinst prerm
Warning: Use the --scripts parameter to include the scripts.
gskcrypt64_8.0-51.75_amd64.deb generated

Luego simplemente se debe instalar el paquete generado por alien, utilizando la herramienta dpkg:

# dpkg -i gskcrypt64_8.0-51.75_amd64.deb

La instalación sucede con éxito y el paquete funciona correctamente.

Para más información, revisar las páginas de manual:

man alien
man dpkg


Tal vez pueda interesarte


Compartí este artículo