¿Cómo descargar un paquete RPM e instalarlo en una línea?


18

Me preguntaba si usarlo wgetera posible descargar un RPM y luego conectarlo sudo rpm -ipara instalarlo, en una sola línea. Me doy cuenta de que podría correr:

wget -c <URL>
sudo rpm -i <PACKAGE-NAME>.rpm

para instalar el paquete, pero me preguntaba si sería posible hacer esto en una sola línea usando las opciones de salida silenciosa y de escritura en wget. He intentado usar:

wget -cqO- <URL> | sudo rpm -i

pero volvió:

rpm: no packages given for install

¿Lo intentaste sudo rpm -i <URL>?
Mikel

¿Has probado wget -cqO- <URL> | xargs sudo rpm -io tal vez sudo rpm -i $(wget -cqO- <URL>)? ¿Qué error dan?
Señor del fuego

1
@Señor del Fuego. 1er comando: solo lo intenté y dio el error que se muestra aquí . 2do comando: dio el error rpm: no packages given for install.
BH2017

Respuestas:


29

RPM tiene soporte nativo para descargar un paquete desde una URL. Tu puedes hacer:

sudo rpm -i <URL>

No es necesario descargar el RPM manualmente. Si este soporte no existiera, podría usar bashla sustitución del proceso.

sudo bash -c 'rpm -i <(wget -O - <URL>)'

77
Es mejor usar yum install -y <URL>, porque también instalará cualquier dependencia.
cristi

1
Bueno, si estuviera usando una distribución que usa yum como su administrador de paquetes, lo haría, pero recuerde que los paquetes RPM también son utilizados por las distribuciones que usan los administradores de paquetes APT-RPM, DNF, urpmi y ZYpp. Resulta que estaba usando openSUSE Tumbleweed, que usa ZYpp.
BH2017

13

Es mejor hacerlo, yum install -y <URL>ya que esto se ocupa de las dependencias, en lugar del rpmuso directo de herramientas.


Como dije en los comentarios sobre la respuesta de jordanm, estaba usando openSUSE Tumbleweed, yum no está disponible en Tumbleweed.
BH2017

1

Supongo que una forma posible podría ser definir el nombre de archivo de lo que está descargando:

wget -cqO- <URL> -O my-output-file.rpm && sudo rpm -i my-output-file.rpm

Pero seguramente debe haber mejores enfoques


No aceptaré esta respuesta ya que (como dijiste) espero mejores enfoques, pero sabes que es un buen intento, así que gracias.
BH2017
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.