Come scaricare un pacchetto RPM e installarlo su una riga?


18

Mi chiedevo se usarlo wgetfosse possibile scaricare un RPM e poi instradarlo sudo rpm -iper installarlo, in una sola riga? Mi rendo conto che potrei semplicemente correre:

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

per installare il pacchetto ma mi chiedevo se potesse essere possibile farlo in una sola riga usando quiet e scrivere sulle opzioni di output standard di wget. Ho provato a usare:

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

ma è tornato:

rpm: no packages given for install

Ci hai provato sudo rpm -i <URL>?
Mikel,

Hai provato wget -cqO- <URL> | xargs sudo rpm -io forse sudo rpm -i $(wget -cqO- <URL>)? Che errore danno?
Firelord,

1
@Firelord. 1 ° comando: ho appena provato e ha dato l'errore mostrato qui . 2 ° comando: ha dato l'errore rpm: no packages given for install.
BH2017,

Risposte:


29

RPM ha il supporto nativo per scaricare un pacchetto da un URL. Tu puoi fare:

sudo rpm -i <URL>

Non è necessario scaricare manualmente RPM. Se questo supporto non esistesse, è possibile utilizzare bashla sostituzione del processo.

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

7
È meglio usare yum install -y <URL>, perché installerà anche eventuali dipendenze.
cristi,

1
Bene, se usassi una distro che usa yum come gestore dei pacchetti, lo farebbe, ma ricorda che i pacchetti RPM sono anche usati dalle distribuzioni che usano APT-RPM, DNF, urpmi e ZYpp. Ho scoperto che stavo usando openSUSE Tumbleweed, che utilizza ZYpp.
BH2017,

13

Meglio fare yum install -y <URL>questo perché non ci si può preoccupare delle dipendenze, invece rpmdell'uso diretto degli strumenti.


Come ho detto nei commenti sulla risposta di Jordan, stavo usando openSUSE Tumbleweed, yum non è disponibile su Tumbleweed.
BH2017,

1

Immagino che un possibile modo potrebbe essere quello di definire il nome file di ciò che stai scaricando:

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

Ma sicuramente ci devono essere approcci migliori


Non accetterò questa risposta poiché (come hai detto) spero in approcci migliori, ma sai che questo è un buon tentativo, quindi grazie.
BH2017,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.