Nous pouvons télécharger n'importe quel package en utilisant curl
ou wget
commandes, n'est-ce pas ? Cependant, ces commandes ne téléchargeront pas les dépendances requises. Vous devrez peut-être passer un peu de temps à rechercher et télécharger manuellement les dépendances requises par le package à installer. Eh bien, plus maintenant ! Dans ce bref tutoriel, voyons comment télécharger un package RPM avec toutes les dépendances dans CentOS. J'ai testé ce guide sur CentOS 7, bien que les mêmes étapes puissent fonctionner sur d'autres systèmes basés sur RPM tels que RHEL, Fedora, AlmaLinux et Rocky Linux.
Téléchargez un package RPM avec toutes les dépendances dans CentOS
Nous pouvons le faire selon deux méthodes. Nous allons utiliser Télécharger uniquement plugin dans la première méthode.
1. Téléchargez les packages RPM avec toutes les dépendances à l'aide du plugin "Downloadonly"
Nous pouvons facilement télécharger n'importe quel package RPM avec toutes les dépendances en utilisant "Downloadonly" plugin pour la commande yum.
Pour installer le plugin Downloadonly, exécutez la commande suivante en tant que root
utilisateur.
# yum install yum-plugin-downloadonly
Maintenant, exécutez la commande suivante pour télécharger un package RPM.
# yum install --downloadonly <package-name>
Par défaut, cette commande télécharge et enregistre les packages dans /var/cache/yum/
emplacement. Cependant, vous pouvez télécharger et enregistrer les packages dans n'importe quel emplacement de votre choix en utilisant "--downloaddir
".
# yum install --downloadonly --downloaddir=<directory> <package-name>
Exemple :
# yum install --downloadonly --downloaddir=/root/mypackages/ httpd
Exemple de résultat :
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
Allez maintenant à l'emplacement que vous avez spécifié dans la commande ci-dessus. Vous y verrez le package téléchargé avec toutes les dépendances. Dans mon cas, j'ai téléchargé les packages dans /root/mypackages/
répertoire.
Laissez-nous vérifier le contenu.
# ls /root/mypackages/
Exemple de résultat :
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
Comme vous le voyez dans la sortie ci-dessus, le package httpd
a été téléchargé avec toutes les dépendances.
Veuillez noter que ce plugin est applicable pour "yum install/yum update" et non pour "yum groupinstall". Par défaut, ce plugin téléchargera les derniers packages disponibles dans le référentiel. Vous pouvez cependant télécharger une version particulière en spécifiant la version.
Exemple :
# yum install --downloadonly --downloaddir=/root/mypackages/ httpd-2.2.6-40.el7
En outre, vous pouvez télécharger plusieurs packages à la fois, comme indiqué ci-dessous.
# yum install --downloadonly --downloaddir=/root/mypackages/ httpd vsftpd
Télécharger - Guide gratuit :"10 façons simples de restaurer votre système Linux"
2. Téléchargez les packages RPM avec toutes les dépendances à l'aide de l'utilitaire "Yumdownloader"
Yumdownloader est un utilitaire de ligne de commande simple mais utile qui télécharge n'importe quel package RPM avec toutes les dépendances requises en une seule fois.
Installez Yumdownloader en utilisant la commande suivante en tant que root
utilisateur.
# yum install yum-utils
Une fois installé, exécutez la commande suivante pour télécharger un package, par exemple httpd
.
# yumdownloader httpd
Pour télécharger des packages avec toutes les dépendances, utilisez --resolve
choix :
# yumdownloader --resolve httpd
Par défaut, Yumdownloader téléchargera les packages dans le répertoire de travail actuel.
Pour télécharger des packages avec toutes les dépendances à un emplacement spécifique, utilisez --destdir
choix :
# yumdownloader --resolve --destdir=/root/mypackages/ httpd
Ou
# yumdownloader --resolve --destdir /root/mypackages/ httpd
Exemple de résultat :
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
Laissez-nous vérifier si les packages ont été téléchargés à l'emplacement spécifié.
# ls /root/mypackages/
Exemple de résultat :
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
Contrairement au plugin Downloadonly, Yumdownload peut télécharger les packages liés à un groupe particulier.
# yumdownloader "@Development Tools" --resolve --destdir /root/mypackages/
Personnellement, je préfère Yumdownloader au plugin Downloadonly pour yum. Mais, les deux sont faciles et font le même travail. Vous pouvez choisir celui qui vous convient.
Lire connexe :
- Télécharger des packages avec des dépendances localement dans Ubuntu