Möglicherweise müssen Sie manchmal Pakete herunterladen, ohne sie zu installieren. Dies kann schwierig und zeitaufwändig werden, wenn es mehrere Abhängigkeiten der RPM-Pakete gibt, die Sie herunterladen möchten. Um Zeit und Komplexität zu sparen, können die folgenden Programme verwendet werden, um ein RPM-Paket herunterzuladen, ohne es zu installieren:
- yum-downloadonly Plugin ermöglicht „yum“, Pakete herunterzuladen, ohne sie zu installieren
- yumdownloader (Teil des yum-utils-Pakets)
- Repotrack oder Repoquery (Teil des yum-utils-Pakets)
Neben den oben genannten Befehlen können Sie auch den grundlegenden Befehl „yum deplist“ verwenden, um die Abhängigkeitsliste für ein RPM-Paket zu finden. Um beispielsweise die abhängigen Pakete für die „nano“-RPM zu finden, verwenden Sie den folgenden Befehl.
# yum deplist nano Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.sfo12.us.leaseweb.net * epel: mirror.pnl.gov * extras: mirrors.xmission.com * nux-dextop: mirror.li.nux.ro * updates: mirror.pac-12.org package: nano.x86_64 2.3.1-10.el7 dependency: /bin/sh provider: bash.x86_64 4.2.46-29.el7_4 dependency: /sbin/install-info provider: info.x86_64 5.1-4.el7 dependency: libc.so.6(GLIBC_2.14)(64bit) provider: glibc.x86_64 2.17-196.el7_4.2 dependency: libncursesw.so.5()(64bit) provider: ncurses-libs.x86_64 5.9-14.20130511.el7_4 dependency: libtinfo.so.5()(64bit) provider: ncurses-libs.x86_64 5.9-14.20130511.el7_4 dependency: rtld(GNU_HASH) provider: glibc.x86_64 2.17-196.el7_4.2 provider: glibc.i686 2.17-196.el7_4.2
1. yumdownloader
Das am häufigsten verwendete Programm zum Herunterladen von Paketen ohne Installation ist „yumdownloader“. Das Dienstprogramm yumdownloader ist besonders hilfreich, wenn Sie ein installiertes Paket herunterladen. Die yum-utils Paket stellt das Dienstprogramm yumdownloader bereit. So installieren Sie „yum-utils“:
# yum install yum-utils
Die Syntax des Dienstprogramms „yumdownloader“ zum Herunterladen von RPM zusammen mit seinen Abhängigkeiten lautet:
# yumdownloader [options] package1 [package2] [package..]
Um beispielsweise das RPM „firefox“ und alle seine Abhängigkeiten herunterzuladen, verwenden Sie den folgenden Befehl.
# yumdownloader --destdir=/var/tmp/ --resolve firefox
Hier
–destdir ist das Verzeichnis, in dem die RPM-Pakete gespeichert werden sollen (standardmäßig das aktuelle Verzeichnis, falls nicht angegeben).
–resolve – löst Abhängigkeiten auf und lädt benötigte Pakete herunter
Das yumdownloader-Programm ist ein ziemlich leistungsfähiges Tool zum Herunterladen von Paketen, wenn es mit geeigneten Platzhaltern verwendet wird. Zum Beispiel:
# yumdownloader [a]* (will download all available packages whose name starts with "a") # yumdownloader [a-c]* (will download all available packages whose name starts with "a", "b" and "c") # yumdownloader glibc* (will download all available packages whose name starts with "glibc")HINWEIS :Obwohl es Befehle gibt, die zum Herunterladen des Hauptpakets zusammen mit seinen Abhängigkeiten verwendet werden können, können sie manchmal nicht alle Pakete herunterladen. In diesem Fall müssen die fehlenden Pakete einzeln heruntergeladen werden.
Hinweis
:
– Das Paket wird standardmäßig direkt in der aktuellen Arbeitsumgebung gespeichert; Verwenden Sie das –destdir Option, um einen alternativen Speicherort anzugeben.
– Stellen Sie sicher, dass Sie –resolve hinzufügen wenn Sie Abhängigkeiten herunterladen müssen.
2. Repoquery / Repotrack
Der häufig verwendete Befehl „yumdownloader –resolve“ zum Herunterladen des Pakets zusammen mit seinen Abhängigkeiten erkennt nicht immer erfolgreich alle Abhängigkeiten. Es ist besser, „repoquery“ zu verwenden, um die Abhängigkeiten zu finden, und sie dann mit „yumdownloader“ herunterzuladen.
Beispielsweise können Sie den Befehl repoquery verwenden, um alle Abhängigkeiten für das Firefox-RPM zu finden, und dann die Befehlsausgabe mit „yumdownloader“ zum Herunterladen der Abhängigkeiten verwenden.
# repoquery -R --resolve --recursive firefox | xargs -r yumdownloader
Sie können auch das Dienstprogramm „repotrack“ verwenden, um das RPM zusammen mit all seinen Abhängigkeiten herunterzuladen. Zum Beispiel:
# repotrack firefox
3. yum-downloadonly-Plugin für yum
Die Datei „yum-downloadonly ”-Plug-in ermöglicht es „yum“, Pakete herunterzuladen, ohne sie zu installieren. Installieren Sie das Paket einschließlich des „downloadonly“-Plug-ins:
(CentOS/RHEL 5) # yum install yum-downloadonly (CentOS/RHEL 6,7) # yum install yum-plugin-downloadonly
Führen Sie den Befehl yum mit der Option „–downloadonly“ wie folgt aus:
# yum install --downloadonly --downloaddir=[directory] [package]
Hinweise zum yum-downloadonly-Plugin
– Überprüfen Sie vor der Verwendung des Plugins /etc/yum/pluginconf.d/downloadonly.conf um zu bestätigen, dass dieses Plugin „enabled=1 ist ”
– Dies gilt für “yum install/yum update” und nicht für “yum groupinstall”. Verwenden Sie „yum groupinfo“, um Pakete innerhalb einer bestimmten Gruppe zu identifizieren.
– Wenn nur der Paketname angegeben wird, wird das neueste verfügbare Paket heruntergeladen (z. B. sshd). Andernfalls können Sie den vollständigen Paketnamen und die Version angeben (z. B. httpd-2.2.3-22.el5).
– Falls gewünscht, können Sie mehrere Pakete mit demselben Befehl herunterladen.
– Sie können immer noch Sie müssen die Repodaten erneut herunterladen, wenn die Repodaten ablaufen, bevor Sie den Cache erneut verwenden. Standardmäßig dauert es zwei Stunden, bis sie abläuft.
So verwenden Sie „yum downloadonly“, um ein Paket herunterzuladen, ohne es zu installieren
Herunterladen einer bestimmten Version eines Pakets und seiner Abhängigkeiten aus dem Repository für die Offline-Installation mit YUM