GNU/Linux >> Tutoriales Linux >  >> AlmaLinux

Cómo descargar un paquete RPM con todas las dependencias en CentOS, Fedora, RHEL, AlmaLinux, Rocky Linux

Podemos descargar cualquier paquete usando curl o wget comandos, ¿verdad? Sin embargo, estos comandos no descargarán las dependencias requeridas. Es posible que deba dedicar un tiempo a buscar y descargar manualmente las dependencias requeridas por el paquete para instalar. ¡Pues ya no! En este breve tutorial, veamos cómo descargar un paquete RPM con todas las dependencias en CentOS. Probé esta guía en CentOS 7, aunque los mismos pasos podrían funcionar en otros sistemas basados ​​en RPM como RHEL, Fedora, AlmaLinux y Rocky Linux.

Descargue un paquete RPM con todas las dependencias en CentOS

Podemos hacer esto en dos métodos. Vamos a utilizar Downloadonly plugin en el primer método.

1. Descargue paquetes RPM con todas las dependencias usando el complemento "Downloadonly"

Podemos descargar fácilmente cualquier paquete RPM con todas las dependencias usando "Downloadonly" complemento para el comando yum.

Para instalar el complemento Downloadonly, ejecute el siguiente comando como root usuario.

# yum install yum-plugin-downloadonly

Ahora, ejecute el siguiente comando para descargar un paquete RPM.

# yum install --downloadonly <package-name>

De forma predeterminada, este comando descargará y guardará los paquetes en /var/cache/yum/ localización. Sin embargo, puede descargar y guardar los paquetes en cualquier lugar de su elección usando "--downloaddir " opción.

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

Ejemplo:

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

Salida de muestra:

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

Ahora vaya a la ubicación que especificó en el comando anterior. Verá allí el paquete descargado con todas las dependencias. En mi caso, he descargado los paquetes en /root/mypackages/ directorio.

Verifiquemos el contenido.

# ls /root/mypackages/

Salida de muestra:

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

Como puede ver en el resultado anterior, el paquete httpd se ha descargado con todas las dependencias.

Tenga en cuenta que este complemento es aplicable para "yum install/yum update" y no para "yum groupinstall". De forma predeterminada, este complemento descargará los últimos paquetes disponibles en el repositorio. Sin embargo, puede descargar una versión particular especificando la versión.

Ejemplo:

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

Además, puede descargar varios paquetes a la vez como se muestra a continuación.

# yum install --downloadonly --downloaddir=/root/mypackages/ httpd vsftpd
Descargar - Guía gratuita:"10 formas sencillas de restaurar su sistema Linux"

2. Descargue paquetes RPM con todas las dependencias usando la utilidad "Yumdownloader"

Yumdownloader es una utilidad de línea de comandos simple pero útil que descarga cualquier paquete RPM junto con todas las dependencias requeridas de una sola vez.

Instale Yumdownloader usando el siguiente comando como root usuario.

# yum install yum-utils

Una vez instalado, ejecute el siguiente comando para descargar un paquete, por ejemplo httpd .

# yumdownloader httpd

Para descargar paquetes con todas las dependencias, use --resolve opción:

# yumdownloader --resolve httpd

De forma predeterminada, Yumdownloader descargará los paquetes en el directorio de trabajo actual.

Para descargar paquetes junto con todas las dependencias a una ubicación específica, use --destdir opción:

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

O

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

Salida de muestra:

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

Verifiquemos si los paquetes se han descargado en la ubicación especificada.

# ls /root/mypackages/

Salida de muestra:

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 diferencia del complemento Downloadonly, Yumdownload puede descargar los paquetes relacionados con un grupo en particular.

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

Personalmente, prefiero Yumdownloader sobre el complemento Downloadonly para yum. Pero, ambos son fáciles y hacen el mismo trabajo. Puedes elegir el que más te convenga.

Lectura relacionada:

  • Descargar paquetes con dependencias localmente en Ubuntu

AlmaLinux
  1. AlmaLinux frente a Rocky Linux

  2. Cómo instalar PostgreSQL en CentOS 8 / Rocky Linux 8 / RHEL 8

  3. Cómo instalar Go en Fedora y Rocky Linux/Centos/RHEL

  4. Cómo iniciar la GUI en CentOS/AlmaLinux/Rocky Linux 8

  5. Cómo instalar un paquete RPM en un directorio diferente en CentOS/RHEL/Fedora

Cómo habilitar el repositorio RPM Fusion en Fedora, RHEL, AlmaLinux, Rocky Linux

Cómo restablecer la contraseña de usuario raíz en CentOS 8, RHEL 8, AlmaLinux 8, Rocky Linux 8

Cómo acelerar el administrador de paquetes DNF en Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux

Cómo instalar paquetes RPM en CentOS, RHEL y Fedora

Cómo instalar FTP con SSL en Rocky Linux y AlmaLinux

Cómo instalar MongoDB en RHEL, CentOS, Rocky y AlmaLinux