Cambiar la ruta de instalacion de un paquete rpm

Hay veces que vamos a instalar un paquete rpm en una máquina linux, pero necesitamos cambiar la ruta de instalación que tiene por defecto. Para resolverlo existe alguna solución que os cuento a continuación.

Chequear Relocations

Lo primero que tenemos que hacer es saber si un paquete rpm está habilitado para cambiar su ruta por defecto de instalación o no. Para ello ejecutamos el siguiente comando:

# rpm -qpi telnet-0.17-48.el6.x86_64.rpm | grep Relocations

Name : telnet Relocations: (not relocatable)

Si nos muestra como en este caso el mensaje “(not relocatable)“, quiere decir que no está permitido elegir una ruta distinta.

Cambiar la ruta de instalación de un rpm

Sin embargo, si el chequeo de Relocations ha sido satisfactorio, para instalar un paquete rpm en una ruta distinta a la de por defecto, tenemos que utilizar la opcion –prefix.

Por ejemplo si queremos instalar el cliente telnet en /opt tendríamos que ejecutar lo siguiente:

# rpm -ivh --prefix=/opt telnet-0.17-48.el6.x86_64.rpm

Workaround para Relocations no permitido

En el caso de que el chequeo de Relocations haya sido fallido y no nos permita elegir otra ruta, podemos crear un enlace simbólico que apunte a la ruta que queremos usar.

Por ejemplo si tenemos los siguientes datos:

  • Ruta por defecto:   /opt/telnet
  • Ruta que queremos usar:   /usr/local/telnet

Workaround:

Para que cuando vayamos a la ruta por defecto, en realidad estemos situandonos en la ruta que queremos usar, creamos el enlace simbólico telnet dentro de /opt

# mkdir -p /usr/local/telnet
# cd /opt
# ln -s /usr/local/telnet telnet

Este sería el resultado:

# cd /opt
# ls -l telnet
lrwxrwxrwx 1 root root 7 May 12 12:12 telnet -> /usr/local/telnet

 

Fuente:
http://rpm.org/documentation.html
http://ftp.rpm.org/max-rpm/ch-rpm-reloc.html

 

Compartir:

Este artículo fue escrito por RoberMB

💻Sistemas, 🛡️Ciberseguridad, ✈️Viajar ... ................ Siempre aprendiendo. 🏴‍☠️🏴‍☠️🏴‍☠️ CEH v10, CPHE, ICPP+(In progress) 🏴‍☠️🏴‍☠️🏴‍☠️

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *