
Tengo una máquina CentOS en la que ya instalé openssl-devel usando
$ yum install openssl-devel
Descargó e instaló todos los paquetes de dependencia. Ahora necesito todos esos paquetes RPM. ¿Es posible descargar sólo los paquetes RPM? Cuando hago esto:
$ yum install openssl-devel -y --downloadonly
Dice
Package 1:openssl-devel-1.0.1e-4.fc18.x86_64 already installed and latest version
ya que ya está instalado.
¿Alguien sabe cómo descargar esos paquetes RPM en el mismo sistema?
Respuesta1
Es posible descargar los paquetes de un RPM que ya está instalado utilizando el --downloadonly
conmutador. No estoy seguro de por qué yum no verifica esta configuración antes de verificar si el paquete ya está instalado, pero supongo que podría deberse a la arquitectura subyacente de la herramienta.
De todos modos, todo lo que necesitas hacer es decirle a Yum quereinstalarel paquete:
yum --downloadonly --downloaddir=/tmp/rpm_files/ reinstall package_name
Por supuesto, yum no sabrá qué dependencias se instalaron solo para este paquete, por lo que si toma los RPM e intenta instalarlos en un sistema diferente, es posible que falten algunas dependencias. Hay formas de explorar todo el gráfico de dependencia y estoy seguro de que esto ya se describió en otra parte de SE.
Respuesta2
yumdownloader
in yum-utils
descargará cualquier paquete que le pase u, opcionalmente, generará las URL desde las que se pueden descargar los paquetes.
Respuesta3
Puedes usar elrepotrackcomando del paquete yum-utils. Descargará todo el árbol de dependencias.incluso si ya está instalado.
Ejemplo:
sudo yum install yum-utils # Install yum-utils
sudo repotrack openssl-devel # Download all dependencies for openssl-devel
Salida de muestra:
[sbadra@rhel6 ~]$ sudo yum install openssl-devel
Loaded plugins: product-id, search-disabled-repos, subscription-manager
Setting up Install Process
Package openssl-devel-1.0.1e-57.el6.x86_64 already installed and latest version
Nothing to do
[sbadra@rhel6 ~]$ sudo repotrack openssl-devel
Downloading audit-libs-2.4.5-6.el6.x86_64.rpm
Downloading audit-libs-2.4.5-6.el6.i686.rpm
Downloading basesystem-10.0-4.el6.noarch.rpm
Downloading bash-4.1.2-48.el6.x86_64.rpm
Downloading ca-certificates-2017.2.14-65.0.1.el6_9.noarch.rpm
Downloading chkconfig-1.3.49.5-1.el6.x86_64.rpm
Downloading coreutils-8.4-46.el6.x86_64.rpm
Downloading coreutils-libs-8.4-46.el6.x86_64.rpm
.... more packages ....
Downloading openssl-1.0.1e-57.el6.i686.rpm
Downloading openssl-1.0.1e-57.el6.x86_64.rpm
Downloading openssl-devel-1.0.1e-57.el6.i686.rpm
Downloading openssl-devel-1.0.1e-57.el6.x86_64.rpm
.... more packages ....
Downloading sed-4.2.1-10.el6.x86_64.rpm
Downloading setup-2.8.14-23.el6.noarch.rpm
Downloading tzdata-2018c-1.el6.noarch.rpm
Downloading zlib-1.2.3-29.el6.x86_64.rpm
Downloading zlib-1.2.3-29.el6.i686.rpm
Downloading zlib-devel-1.2.3-29.el6.i686.rpm
Downloading zlib-devel-1.2.3-29.el6.x86_64.rpm
Respuesta4
Esto es lo que hago:
sudo yum install --config=./yum.conf
--installroot=/tmp/f541Sdex
--downloadonly
--downloaddir /tmp/DL-e25xds
$(cat list-of-packages)