GNU/Linux >> Linux Esercitazione >  >> AlmaLinux

Come scaricare un pacchetto RPM con tutte le dipendenze in CentOS, Fedora, RHEL, AlmaLinux, Rocky Linux

Possiamo scaricare qualsiasi pacchetto utilizzando curl o wget comandi, giusto? Tuttavia, questi comandi non scaricheranno le dipendenze richieste. Potrebbe essere necessario dedicare del tempo alla ricerca e al download manuale delle dipendenze richieste dal pacchetto da installare. Bene, non più! In questo breve tutorial, vediamo come scaricare un pacchetto RPM con tutte le dipendenze in CentOS. Ho testato questa guida su CentOS 7, anche se gli stessi passaggi potrebbero funzionare su altri sistemi basati su RPM come RHEL, Fedora, AlmaLinux e Rocky Linux.

Scarica un pacchetto RPM con tutte le dipendenze in CentOS

Possiamo farlo in due metodi. Utilizzeremo Solo download plug-in nel primo metodo.

1. Scarica i pacchetti RPM con tutte le dipendenze utilizzando il plug-in "Downloadonly"

Possiamo scaricare facilmente qualsiasi pacchetto RPM con tutte le dipendenze utilizzando "Solo download" plugin per il comando yum.

Per installare il plug-in Downloadonly, esegui il seguente comando come root utente.

# yum install yum-plugin-downloadonly

Ora, esegui il seguente comando per scaricare un pacchetto RPM.

# yum install --downloadonly <package-name>

Per impostazione predefinita, questo comando scaricherà e salverà i pacchetti in /var/cache/yum/ Posizione. Tuttavia, puoi scaricare e salvare i pacchetti in qualsiasi posizione di tua scelta utilizzando "--downloaddir " opzione.

# yum install --downloadonly --downloaddir=<directory> <package-name>

Esempio:

# yum install --downloadonly --downloaddir=/root/mypackages/ httpd

Risultato di esempio:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * epel: epel.mirror.angkasa.id
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-40.el7.centos.4 will be installed
--> Processing Dependency: httpd-tools = 2.4.6-40.el7.centos.4 for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-3.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package httpd-tools.x86_64 0:2.4.6-40.el7.centos.4 will be installed
---> Package mailcap.noarch 0:2.1.41-2.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=======================================================================================================================================
 Package Arch Version Repository Size
=======================================================================================================================================
Installing:
 httpd x86_64 2.4.6-40.el7.centos.4 updates 2.7 M
Installing for dependencies:
 apr x86_64 1.4.8-3.el7 base 103 k
 apr-util x86_64 1.5.2-6.el7 base 92 k
 httpd-tools x86_64 2.4.6-40.el7.centos.4 updates 83 k
 mailcap noarch 2.1.41-2.el7 base 31 k

Transaction Summary
=======================================================================================================================================
Install 1 Package (+4 Dependent packages)

Total download size: 3.0 M
Installed size: 10 M
Background downloading packages, then exiting:
(1/5): apr-1.4.8-3.el7.x86_64.rpm | 103 kB 00:00:01 
(2/5): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:00:01 
(3/5): mailcap-2.1.41-2.el7.noarch.rpm | 31 kB 00:00:01 
(4/5): httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm | 83 kB 00:00:01 
(5/5): httpd-2.4.6-40.el7.centos.4.x86_64.rpm | 2.7 MB 00:00:09 
---------------------------------------------------------------------------------------------------------------------------------------
Total 331 kB/s | 3.0 MB 00:00:09 
exiting because "Download Only" specified

Ora vai nella posizione che hai specificato nel comando precedente. Vedrai lì il pacchetto scaricato con tutte le dipendenze. Nel mio caso, ho scaricato i pacchetti in /root/mypackages/ directory.

Verifichiamo i contenuti.

# ls /root/mypackages/

Risultato di esempio:

apr-1.4.8-3.el7.x86_64.rpm
apr-util-1.5.2-6.el7.x86_64.rpm
httpd-2.4.6-40.el7.centos.4.x86_64.rpm
httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm
mailcap-2.1.41-2.el7.noarch.rpm

Come puoi vedere nell'output sopra, il pacchetto httpd è stato scaricato con tutte le dipendenze.

Tieni presente che questo plugin è applicabile per "yum install/yum update" e non per "yum groupinstall". Per impostazione predefinita, questo plugin scaricherà gli ultimi pacchetti disponibili nel repository. Puoi comunque scaricare una versione particolare specificando la versione.

Esempio:

# yum install --downloadonly --downloaddir=/root/mypackages/ httpd-2.2.6-40.el7

Inoltre, puoi scaricare più pacchetti contemporaneamente come mostrato di seguito.

# yum install --downloadonly --downloaddir=/root/mypackages/ httpd vsftpd
Scarica - Guida gratuita:"10 semplici modi per ripristinare il tuo sistema Linux"

2. Scarica i pacchetti RPM con tutte le dipendenze usando l'utilità "Yumdownloader"

Yumdownloader è un'utilità da riga di comando semplice ma utile che scarica qualsiasi pacchetto RPM insieme a tutte le dipendenze richieste in una volta sola.

Installa Yumdownloader usando il seguente comando come root utente.

# yum install yum-utils

Una volta installato, esegui il comando seguente per scaricare un pacchetto, ad esempio httpd .

# yumdownloader httpd

Per scaricare i pacchetti con tutte le dipendenze, usa --resolve opzione:

# yumdownloader --resolve httpd

Per impostazione predefinita, Yumdownloader scaricherà i pacchetti nella directory di lavoro corrente.

Per scaricare i pacchetti insieme a tutte le dipendenze in una posizione specifica, usa --destdir opzione:

# yumdownloader --resolve --destdir=/root/mypackages/ httpd

Oppure

# yumdownloader --resolve --destdir /root/mypackages/ httpd

Risultato di esempio:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * epel: epel.mirror.angkasa.id
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-40.el7.centos.4 will be installed
--> Processing Dependency: httpd-tools = 2.4.6-40.el7.centos.4 for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-3.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package httpd-tools.x86_64 0:2.4.6-40.el7.centos.4 will be installed
---> Package mailcap.noarch 0:2.1.41-2.el7 will be installed
--> Finished Dependency Resolution
(1/5): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:00:01 
(2/5): mailcap-2.1.41-2.el7.noarch.rpm | 31 kB 00:00:02 
(3/5): apr-1.4.8-3.el7.x86_64.rpm | 103 kB 00:00:02 
(4/5): httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm | 83 kB 00:00:03 
(5/5): httpd-2.4.6-40.el7.centos.4.x86_64.rpm | 2.7 MB 00:00:19

Verifichiamo se i pacchetti sono stati scaricati nella posizione specificata.

# ls /root/mypackages/

Risultato di esempio:

apr-1.4.8-3.el7.x86_64.rpm
apr-util-1.5.2-6.el7.x86_64.rpm
httpd-2.4.6-40.el7.centos.4.x86_64.rpm
httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm
mailcap-2.1.41-2.el7.noarch.rpm

A differenza del plug-in Downloadonly, Yumdownload può scaricare i pacchetti relativi a un particolare gruppo.

# yumdownloader "@Development Tools" --resolve --destdir /root/mypackages/

Personalmente, preferisco Yumdownloader al plugin Downloadonly per yum. Ma entrambi sono facili e fanno lo stesso lavoro. Puoi sceglierne uno che fa per te.

Lettura correlata:

  • Scarica i pacchetti con dipendenze in locale in Ubuntu

AlmaLinux
  1. AlmaLinux vs Rocky Linux

  2. Come installare PostgreSQL su CentOS 8 / Rocky Linux 8 / RHEL 8

  3. Come installare Go in Fedora e Rocky Linux/Centos/RHEL

  4. Come avviare la GUI su CentOS/AlmaLinux/Rocky Linux 8

  5. Come estrarre il pacchetto 7z in CentOS/RHEL/Fedora?

Come abilitare il repository RPM Fusion in Fedora, RHEL, AlmaLinux, Rocky Linux

Come reimpostare la password dell'utente root in CentOS 8, RHEL 8, AlmaLinux 8, Rocky Linux 8

Come velocizzare il gestore di pacchetti DNF in Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux

Come installare i pacchetti RPM in CentOS, RHEL e Fedora

Come installare FTP con SSL in Rocky Linux e AlmaLinux

Come installare MongoDB in RHEL, CentOS, Rocky e AlmaLinux