Die gesamte Software auf einem Linux-System ist in Pakete unterteilt, die installiert, deinstalliert, aktualisiert, abgefragt und überprüft werden können. CentOS/RHEL-Systeme verwenden den Red Hat Package Manager (RPM) um die Installation, Aktualisierung und Entfernung von Softwarepaketen zu erleichtern.
CentOS/RHEL bietet auch den yum(Yellowdog Updater, Modified) Dienstprogramm, das mit RPM-Paketen funktioniert. Wenn yum ein Softwarepaket installiert oder aktualisiert, installiert oder aktualisiert es auch alle Paketabhängigkeiten. Das Dienstprogramm yum lädt Paketheader und Pakete aus Repositories herunter. Repositories sind Speicherorte, von denen Softwarepakete abgerufen und installiert werden können.
Yum-Konfigurationsdateien
Die Hauptkonfigurationsdatei für yum ist /etc/yum.conf . Konfigurationsdateien, die Repositorys definieren, befinden sich in /etc/yum.repos.d Verzeichnis. Ein Beispiel für /etc/yum.conf folgt hier:
# cat /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=3
Globale Konfigurationen werden im Abschnitt [main] definiert:
Parameter | Zweck |
---|---|
cachedir | Das Verzeichnis zum Speichern heruntergeladener Pakete |
keepcache | Auf 0 setzen, um anzuzeigen, dass Pakete nach der Installation entfernt werden sollen. |
debuglevel | Die Menge der protokollierten Informationen von 0 bis 10 |
Protokolldatei | Die Yum-Protokolldatei |
exactarch | Wenn auf 1 gesetzt, aktualisiert yum Pakete nur mit Paketen derselben Architektur. |
veraltet | Wenn auf 1 gesetzt, ersetzt yum veraltete Pakete während eines Updates. |
gpgcheck | Wenn auf 1 gesetzt, prüft yum die GPG-Signaturen, um die Authentizität der Pakete zu verifizieren. Die Direktive gpgkey gibt den Speicherort des GPG-Schlüssels an. |
Plugins | Wenn auf 1 gesetzt, werden Yum-Plugins aktiviert, die die Funktionalität erweitern. |
installonly_limit | Die maximale Anzahl von Versionen, die gleichzeitig für ein einzelnes Paket installiert werden können |
Yum-Repositories
Linux speichert Informationen über jedes Repository in einer separaten Datei in /etc/yum.repos.d Verzeichnis. Das Folgende ist ein Beispiel:
# ls -lrt /etc/yum.repos.d total 20 -rw-r--r-- 1 root root 733 Jul 27 18:09 rhel7.2.repo -rw-r--r-- 1 root root 358 Nov 5 14:00 rhel7.3.repo
Die Repo-Dateien definieren, welche Repositories verwendet werden sollen. Jede Repo-Datei enthält Spezifikationen für mehrere verwandte Repositories. Beispiel:
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Die Direktiven in den Repo-Dateien beinhalten:
Anweisungen | Zweck |
---|---|
Name | Beschreibt das Repository |
Basis-URL | Der Speicherort des Haupt-Repositorys (http://, ftp:// oder file://) |
aktiviert | Wenn auf 1 gesetzt, verwendet yum das Repository. Das Repository ist deaktiviert, wenn es auf 0 gesetzt ist. |
yum-Repositorys können auch lokal zugänglich sein, nicht nur über das Internet. Lokale Yum-Repositories werden mithilfe von createrepo erstellt Befehl und dann baseurl auf das lokale Verzeichnis setzen.
CentOS / RHEL 6 :So richten Sie ein Yum-Repository mit einer lokal gemounteten DVD einCentOS / RHEL 7 :So richten Sie ein Yum-Repository mit einer lokal gemounteten DVD ein
CentOS / RHEL :So erstellen und hosten Sie ein Yum-Repository über httpd
Das Dienstprogramm yum ist oft der schnellste Weg, um Paketverwaltungsaufgaben auszuführen. Es bietet Funktionen, die über die von rpm und grafischen Paketverwaltungstools hinausgehen. Es gibt viele yum-Befehle, aber im Folgenden finden Sie Beispiele für allgemeine Aufgaben.
Pakete auflisten
Es gibt mehrere yum-Befehle, um Pakete in jedem Repository aufzulisten, das auf Ihrem System aktiviert oder installiert ist. Sie können bestimmte Arten von Paketen auflisten und Ihre Liste mit einer Paketspezifikation des Namens, der Architektur, der Version oder des Releases eines beliebigen Pakets verfeinern.
Verwenden Sie den folgenden Befehl, um alle Pakete in allen Repositories und alle auf Ihrem System installierten Pakete aufzulisten:
# yum list
Verwenden Sie den folgenden Befehl, um alle auf dem System installierten Pakete aufzulisten:
# yum list installed
Verwenden Sie den folgenden Befehl, um alle verfügbaren Pakete aufzulisten, die in einem aktivierten Repository auf Ihrem System installiert werden können:
# yum list available
Das folgende Beispiel findet den Namen des Pakets, zu dem eine Datei (z. B. /etc/sysconfig/atd) gehört:
# yum provides /etc/sysconfig/atd at-3.1.13-17.el7.x86_64 : Job spooling tools ...
Nach Updates suchen
Verwenden Sie den folgenden Befehl, um zu sehen, für welche installierten Pakete auf Ihrem System Updates verfügbar sind:
# yum check-update
Der Paketname plus Architektur, die Version des aktualisierten Pakets und das Repository (oder
ULN-Kanal) werden angezeigt. Die Eingabe von yum list update gibt dieselbe Ausgabe zurück.
Pakete aktualisieren
Sie können wählen, ob Sie ein einzelnes Paket, mehrere Pakete oder alle Pakete gleichzeitig aktualisieren möchten. Wenn für Abhängigkeiten des Pakets (oder der Pakete) Aktualisierungen verfügbar sind, werden sie ebenfalls aktualisiert.
Aktualisieren eines einzelnen Pakets
Um ein einzelnes Paket zu aktualisieren, verwenden Sie die folgende Befehlssyntax:
# yum update package_name
Um beispielsweise das bind-libs-Paket zu aktualisieren, geben Sie Folgendes ein:
# yum update bind-libs
yum prüft auf Abhängigkeiten, zeigt gelöste Abhängigkeiten und eine Transaktionszusammenfassung an und fragt „Ist das in Ordnung [j/N] “, wartet auf Ihre Antwort und lädt dann das Paket und alle erforderlichen abhängigen Pakete herunter und installiert es. Verwenden Sie yum -y um die Eingabeaufforderung zu umgehen.
Alle Pakete aktualisieren
Um alle Pakete und ihre Abhängigkeiten zu aktualisieren, geben Sie yum update (ohne Argumente) ein:
# yum update
Pakete installieren
Um ein neues Paket zusammen mit allen Paketabhängigkeiten zu installieren, verwenden Sie die folgende Syntax:
# yum install package_name
Um beispielsweise das zsh-Paket zu installieren, geben Sie Folgendes ein:
# yum install zsh
Kernel aktualisieren und installieren
Sie müssen sich keine Gedanken über den Unterschied zwischen der Installation und dem Upgrade eines Kernelpakets machen, wenn Sie yum verwenden. yum installiert immer einen neuen Kernel, unabhängig davon, ob Sie yum update oder yum install verwenden.
Pakete entfernen
Um ein Paket zu entfernen, verwenden Sie die folgende Syntax:
# yum remove package_name
Um beispielsweise das zsh-Paket zu entfernen, geben Sie Folgendes ein:
# yum remove zsh„yum history“-Befehlsbeispiele zum Anzeigen, Zurücksetzen, Wiederholen und Rückgängigmachen von Yum-Transaktionen
CentOS / RHEL :Konfigurieren Sie automatische Yum-Updates mit dem Yum-Cron-Dienst