Instalación local de .rpms usando YUM


50

Estoy haciendo esta pregunta con cautela porque no quiero equivocarme.

Tengo un archivo program_name.rpm guardado localmente en mi servidor (CentOS 6.5).

Lo instalé anteriormente simplemente navegando hacia él y usando yum install program_name.rpm, que funcionó bien, pero no me dio ninguna opción para especificar dónde está instalado.

¿Es posible instalar este rpm en / opt / some_directory en lugar de su ubicación de instalación predeterminada?

Respuestas:


34

Use rpm

rpm -ivh package.rpm

Si desea instalarlo en un lugar diferente, use:

rpm -ivh -r /new/path package.rpm

pero tenga en cuenta que bajo la nueva raíz se recreará la estructura de directorios del paquete


2
esto funcionó muy bien, no creo que haya un equivalente YUM?
TheLovelySausage

44
Para aclarar: mmm es envoltorio alrededor de rpm. rpm es el programa principal para administrar paquetes en RHEL, SuSE, CentOS y otras distribuciones
Romeo Ninov

44
Oh, siempre pensé que um estaba basado en rpm, nunca me di cuenta de que era una envoltura, gracias por toda su ayuda
TheLovelySausage

¿Tienes que ser root para ejecutar este comando?
Alexej Magura

Correcto, debes ser root para ejecutar el comando
Romeo Ninov

97

Lástima que hayas aceptado esa respuesta de rpm. Eso conducirá a advertencias de ejecuciones posteriores de yum, como Warning: RPMDB altered outside of yum

En su lugar, debe usar yum localinstall, según la sección 13 de la página de Trucos de Yum y RPM de CentOS wiki => https://wiki.centos.org/TipsAndTricks/YumAndRPM#head-3c061f4a180e5bc90b7f599c4e0aebdb2d5fc7f6

Puede usar la --installrootopción para especificar una raíz de instalación diferente.


3
Me gusta hacer las cosas de acuerdo con las mejores prácticas y esta respuesta incluye el equivalente de yum que esperaba. Desafortunadamente, ya instalé un montón de paquetes usando el método rpm -ivh. Desearía que fuera posible aceptar dos respuestas correctas porque siento que la respuesta aceptada es correcta, pero las personas que vengan a ver esta pregunta se beneficiarían más de esta respuesta
TheLovelySausage

Es mejor usar yum en lugar de rpm, pero para resolver la "advertencia: RPMDB alterado fuera de yum" es posible usar "yum history sync"
elbarna

1
Esto funciona. Cuando intenté simplemente ejecutar rpm, no obtuve las dependencias. Simplemente erró con "dependencias fallidas".
Christian Shay

"yum --nogpgcheck localinstall packagename.arch.rpm"
hmz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.