2.5.- Pasar de un formato de paquete a otro.

alienA veces, nos llega un fichero de paquetes en un formato, pero deseamos utilizar otro. Esto es especialmente habitual cuando se utiliza una distribución de tipo Debian y sólo se encuentran tarball o ficheros RPM de un paquete. Cuando le ocurra esto, puede seguir buscando un fichero de paquetes en el formato apropiado, instalar las herramientas para el formato extraño, crear un paquete a partir de un tarball fuente utilizando las herramientas estándar de RPM o Debian o pasar de un formato de paquete a otro mediante una utilidad como alien.
Esta sección se centra en esta última opción. El programa alien viene con Debian y algunas otras distribuciones, pero puede que no esté instalado por defecto. Si no está instalado en su sistema, instálelo escribiendo apt-get install alien en un sistema que utilice APT o utilice RPM Find o el sitio web de paquetes Debian para localizarlo. Este programa puede cambiar de un formato a otro paquetes RPM, paquetes Debian, paquetes Stampede (los empleados por Stamjpede Linux) y tarball.

Debe tener presente ciertas peculiaridades. Lo primero: alien requiere que tenga instalado el software apropiado de administración de paquetes (por ejemplo tanto RPM como Debian para poder convertir entre ambos formatos). La utilidad alien no siempre convierte toda la información de las dependencias de manera totalmente correcta. Cuando convierte desde un tarballalien copia los ficheros directamente tal como estaban en el tarball, por lo que alien sólo trabajará si el tarball original tiene ficheros que se deben instalar fuera del directorio raíz (/) del sistema.

NOTA: Aunque alien requiere que esten instalados los sistemas de paquetes tanto de RPM como de Debian para convertir de uno a otro de estos formatos, alien no utiliza las características de la base de datos de estos paquetes a menos que se emplee la opción --install. La presencia de un administrador de paquetes extraño no es un problema mientras que no lo emplee para instalar software que podría duplicar o entrar en conflicto con el software instalado por su administrador de paquetes primario.

La sintaxis básica de alien es la siguiente:

alien [opciones] fichero[...]

Las opciones más importantes son --to-deb, --to-rpm, --to-slp y --to-tgz, que convierten a los formatos Debian, RPM, Stanpede y tarball, respectivamente (si omite el formato de destino, alien asume que desea un paquete Debian). La opción --install instala el paquete convertido y elimina el fichero convertido. encontrará opciones adicionales en la página man de alien.

Por ejemplo, supongamos que dispone de un paquete Debian llamado someprogram-1-2-3-4_i386.deb y desea crear un RPM para dicho paquete. Puede ejecutar el siguiente formato para crear un RPM llamado someprogram-1.2.3-5.i386.rpm:

# alien --to-rpm someprogram-1.2.3-4_i386.deb

Si utiliza un sistema de tipo Debian y desea instalar un tarball pero mantener un registro de los ficheros que contiene en su base  de datos de paquetes Debian, lo puede hacer con el siguiente comando:

# alien --install binary-tarball.tar.gz

Es importante que recuerde que, al convertir un tarball, convierte los ficheros de la estructura de directorios del tarball original utilizando como base de directorio raíz del sistema. Por tanto, puede que necesite desempaquetar el tarball, hacer algunos malabarismos con los ficheros y volver a empaquetarlos para obtener los resultados deseados antes de instalar el tarball con alien. Por ejemplo, supongamos que tiene un tarball binario que crea un directorio llamado program-files, que contiene directorios bin, man y lib. La idea podría ser desempaquetar el tarball en /usr o usr/local y crear enlaces para los ficheros críticos. Para convertir este tarball en un RPM, puede ejecutar los siguientes comandos:

# tar xvfz program.tar.gz
# mv program-files usr
# tar cvfz program.tgz usr
# rm -r usr
# alien --to-rpm program.tgz

Al renombrar el directorio program-files como usr y crear un nuevo tarball, ha creado un tarball que, al pasar al formato RPM, tendrá los ficheros en las ubicaciones que desea (usr/bin, usr/man y /usr/lib). Puede que necesite realizar modificaciones más amplias, dependiendo del contenido del tarball original.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s