Paket- und Betriebssystemupdates in AL2023 verwalten - Amazon Linux 2023

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Paket- und Betriebssystemupdates in AL2023 verwalten

Im Gegensatz zu früheren Versionen von Amazon Linux sind AL2023-AMIs an eine bestimmte Version des Amazon Linux-Repositorys gebunden. Sie müssen die DNF-Konfiguration aktualisieren, um Sicherheits-Updates und Bugfixes auf eine AL2023-Instance anzuwenden. Alternativ können Sie eine neuere AL2023-Instance starten.

In diesem Abschnitt wird die Verwaltung von DNF-Paketen und Repositorys auf einer laufenden Instance beschrieben. Außerdem wird beschrieben, wie Sie DNF mithilfe eines Benutzerdatenskripts konfigurieren, um beim Start das neueste verfügbare Amazon-Linux-Repository zu aktivieren. Weitere Informationen finden Sie in der DNF-Befehlsreferenz.

Prüfen auf verfügbare Paket-Updates

Mit dem dnf check-update-Befehl können Sie jederzeit nach Updates für Ihr System suchen. Für AL2023 empfehlen wir, dass Sie die --releasever=version-number-Option zum Befehl hinzufügen.

Wenn Sie diese Option hinzufügen, wird DNF auch nach Updates für eine spätere Version des Repositorys suchen. Verwenden Sie beispielsweise nach der Ausführung des dnf check-update-Befehls die zuletzt zurückgegebene Version als Wert für version-number.

Wenn die Instance so aktualisiert wird, dass sie die neueste Version des Repositorys verwendet, enthält die Ausgabe eine Liste aller zu aktualisierenden Pakete.

Anmerkung

Wenn Sie die Release-Version nicht mit dem optionalen Flag für den dnf check-update-Befehl angeben, wird nur die aktuell konfigurierte Repository-Version überprüft. Das bedeutet, dass Pakete der neueren Repository-Version nicht überprüft werden.

$ sudo dnf check-update --releasever=2023.0.20230210 Last metadata expiration check: 0:06:13 ago on Mon 13 Feb 2023 10:39:32 PM UTC. bind-libs.x86_64 32:9.16.27-1.amzn2023 amazonlinux bind-license.noarch 32:9.16.27-1.amzn2023 amazonlinux bind-utils.x86_64 32:9.16.27-1.amzn2023 amazonlinux cloud-init.noarch 22.2.2-1.amzn2023.1.4 amazonlinux dnf.noarch 4.12.0-2.amzn2023.0.1 amazonlinux dnf-data.noarch 4.12.0-2.amzn2023.0.1 amazonlinux dracut.x86_64 055-6.amzn2023.0.4 amazonlinux dracut-config-generic.x86_64 055-6.amzn2023.0.4 amazonlinux glib2.x86_64 2.73.2-678.amzn2023 amazonlinux gmp.x86_64 1:6.2.1-2.amzn2023 amazonlinux grep.x86_64 3.8-1.amzn2023.0.1 amazonlinux kpatch-runtime.noarch 0.9.4-7.amzn2023 amazonlinux libgcc.x86_64 11.3.1-2.amzn2023.0.6 amazonlinux libgomp.x86_64 11.3.1-2.amzn2023.0.6 amazonlinux libpkgconf.x86_64 1.7.3-7.amzn2023.0.1 amazonlinux libstdc++.x86_64 11.3.1-2.amzn2023.0.6 amazonlinux lz4-libs.x86_64 1.9.4-1.amzn2023 amazonlinux pkgconf.x86_64 1.7.3-7.amzn2023.0.1 amazonlinux pkgconf-m4.noarch 1.7.3-7.amzn2023.0.1 amazonlinux pkgconf-pkg-config.x86_64 1.7.3-7.amzn2023.0.1 amazonlinux python3-dnf.noarch 4.12.0-2.amzn2023.0.1 amazonlinux python3-rpm.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm-build-libs.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm-libs.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm-plugin-selinux.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm-plugin-systemd-inhibit.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux rpm-sign-libs.x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux slang.x86_64 2.3.2-9.amzn2023.0.1 amazonlinux system-release.noarch 2023.0.20230210-0.amzn2023 amazonlinux systemd.x86_64 250.8-1.amzn2023.0.1 amazonlinux systemd-libs.x86_64 250.8-1.amzn2023.0.1 amazonlinux systemd-networkd.x86_64 250.8-1.amzn2023.0.1 amazonlinux systemd-pam.x86_64 250.8-1.amzn2023.0.1 amazonlinux systemd-resolved.x86_64 250.8-1.amzn2023.0.1 amazonlinux systemd-udev.x86_64 250.8-1.amzn2023.0.1 amazonlinux vim-common.x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux vim-data.noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux vim-enhanced.x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux vim-filesystem.noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux vim-minimal.x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux wget.x86_64 1.21.3-1.amzn2023 amazonlinux yum.noarch 4.12.0-2.amzn2023.0.1 amazonlinux

Wenn neuere Pakete verfügbar sind, lautet der Rückgabecode für diesen Befehl „100“. Wenn keine neueren Pakete verfügbar sind, lautet der Rückgabecode für diesen Befehl „0“. Darüber hinaus wird auch eine Liste aller zu aktualisierenden Pakete ausgegeben.

Anwenden von Sicherheits-Updates mithilfe von DNF- und Repository-Versionen

Neue Paket- und Sicherheits-Updates werden nur für neue Repository-Versionen bereitgestellt. Für Instances, die Sie aus früheren AL2023-AMI-Versionen gestartet haben, müssen Sie die Repository-Version aktualisieren, bevor Sie Sicherheits-Updates installieren können. Der dnf check-release-update-Befehl enthält ein Beispiel für einen Update-Befehl, der alle auf dem System installierten Pakete auf Versionen in einem neueren Repository aktualisiert.

$ sudo dnf update --releasever=2023.0.20230210 Last metadata expiration check: 0:01:40 ago on Mon 13 Feb 2023 10:39:32 PM UTC. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Upgrading: bind-libs x86_64 32:9.16.27-1.amzn2023 amazonlinux 1.2 M bind-license noarch 32:9.16.27-1.amzn2023 amazonlinux 16 k bind-utils x86_64 32:9.16.27-1.amzn2023 amazonlinux 202 k cloud-init noarch 22.2.2-1.amzn2023.1.4 amazonlinux 1.1 M dnf noarch 4.12.0-2.amzn2023.0.1 amazonlinux 454 k dnf-data noarch 4.12.0-2.amzn2023.0.1 amazonlinux 42 k dracut x86_64 055-6.amzn2023.0.4 amazonlinux 345 k dracut-config-generic x86_64 055-6.amzn2023.0.4 amazonlinux 8.5 k glib2 x86_64 2.73.2-678.amzn2023 amazonlinux 2.7 M gmp x86_64 1:6.2.1-2.amzn2023 amazonlinux 324 k grep x86_64 3.8-1.amzn2023.0.1 amazonlinux 316 k kpatch-runtime noarch 0.9.4-7.amzn2023 amazonlinux 30 k libgcc x86_64 11.3.1-2.amzn2023.0.6 amazonlinux 121 k libgomp x86_64 11.3.1-2.amzn2023.0.6 amazonlinux 296 k libpkgconf x86_64 1.7.3-7.amzn2023.0.1 amazonlinux 37 k libstdc++ x86_64 11.3.1-2.amzn2023.0.6 amazonlinux 758 k lz4-libs x86_64 1.9.4-1.amzn2023 amazonlinux 81 k pkgconf x86_64 1.7.3-7.amzn2023.0.1 amazonlinux 41 k pkgconf-m4 noarch 1.7.3-7.amzn2023.0.1 amazonlinux 15 k pkgconf-pkg-config x86_64 1.7.3-7.amzn2023.0.1 amazonlinux 11 k python3-dnf noarch 4.12.0-2.amzn2023.0.1 amazonlinux 415 k python3-rpm x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 89 k rpm x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 487 k rpm-build-libs x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 92 k rpm-libs x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 311 k rpm-plugin-selinux x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 18 k rpm-plugin-systemd-inhibit x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 19 k rpm-sign-libs x86_64 4.16.1.3-12.amzn2023.0.2 amazonlinux 22 k slang x86_64 2.3.2-9.amzn2023.0.1 amazonlinux 410 k system-release noarch 2023.0.20230210-0.amzn2023 amazonlinux 25 k systemd x86_64 250.8-1.amzn2023.0.1 amazonlinux 4.2 M systemd-libs x86_64 250.8-1.amzn2023.0.1 amazonlinux 615 k systemd-networkd x86_64 250.8-1.amzn2023.0.1 amazonlinux 614 k systemd-pam x86_64 250.8-1.amzn2023.0.1 amazonlinux 335 k systemd-resolved x86_64 250.8-1.amzn2023.0.1 amazonlinux 277 k systemd-udev x86_64 250.8-1.amzn2023.0.1 amazonlinux 1.9 M vim-common x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 7.2 M vim-data noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux 27 k vim-enhanced x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 1.8 M vim-filesystem noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux 21 k vim-minimal x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 764 k wget x86_64 1.21.3-1.amzn2023 amazonlinux 813 k yum noarch 4.12.0-2.amzn2023.0.1 amazonlinux 39 k Transaction Summary ================================================================================ Upgrade 43 Packages ...

Sie können die --security-Option hinzufügen, wenn die Pakete nur mit Sicherheitsfunktionen aktualisiert werden sollen.

$ sudo dnf update --releasever=2023.0.20230210 --security Amazon Linux 2023 repository 18 MB/s | 11 MB 00:00 Last metadata expiration check: 0:00:02 ago on Mon 13 Feb 2023 10:39:32 PM UTC. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Upgrading: bind-libs x86_64 32:9.16.27-1.amzn2023 amazonlinux 1.2 M bind-license noarch 32:9.16.27-1.amzn2023 amazonlinux 16 k bind-utils x86_64 32:9.16.27-1.amzn2023 amazonlinux 202 k gmp x86_64 1:6.2.1-2.amzn2023 amazonlinux 324 k lz4-libs x86_64 1.9.4-1.amzn2023 amazonlinux 81 k vim-common x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 7.2 M vim-data noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux 27 k vim-enhanced x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 1.8 M vim-filesystem noarch 2:9.0.327-1.amzn2023.0.1 amazonlinux 21 k vim-minimal x86_64 2:9.0.327-1.amzn2023.0.1 amazonlinux 764 k wget x86_64 1.21.3-1.amzn2023 amazonlinux 813 k Transaction Summary ================================================================================ Upgrade 11 Packages ...

Mit einer der folgenden Methoden können Sie Ihre aktuellen AL2023-Paketversionen feststellen:

  • Führen Sie den Befehl dnf check-update aus.

  • Abonnieren Sie das SNS-Thema zur Aktualisierung des Amazon-Linux-Repositorys (arn:aws:sns:us-east-1:137112412989:amazon-linux-2023-ami-updates). Weitere Informationen finden Sie unter Amazon SNS-Thema abonnieren im Amazon Simple Notification Service-Entwicklerhandbuch.

  • Lesen Sie regelmäßig die Versionshinweise zu AL2023.

Wichtig

Wenn Sie Sicherheitsupdates auf eine laufende Instance anwenden, stellen Sie sicher, dass DNF auf die neueste Repository-Version verweist.

Automatischer Neustart des Dienstes nach (Sicherheits-) Updates

Amazon Linux wird jetzt mit dem Smart-Restart-Paket ausgeliefert. Smart-restartstartet die Systemd-Dienste bei Systemupdates jedes Mal neu, wenn ein Paket mit dem System-Paketmanager installiert oder gelöscht wird. Dies tritt jedes Mal auf, wenn es ausgeführt dnf (update|upgrade|downgrade) wird.

Smart-restartverwendet das needs-restarting Paket von dnf-utils und einen benutzerdefinierten Denylisting-Mechanismus, um festzustellen, welche Dienste neu gestartet werden müssen und ob ein Systemneustart empfohlen wird. Wenn ein Systemneustart empfohlen wird, wird eine Datei mit Hinweisen zum Neustart generiert (). /run/smart-restart/reboot-hint-marker

So installieren Sie smart-restart

Führen Sie den folgenden DNF Befehl aus (wie bei jedem anderen Paket).

$ sudo dnf install smart-restart

Nach der Installation lösen die nachfolgenden Transaktionen die smart-restart Logik aus.

Liste ablehnen

Smart-restartkann angewiesen werden, den Neustart bestimmter Dienste zu blockieren. Die blockierten Dienste tragen nicht zur Entscheidung bei, ob ein Neustart erforderlich ist. Um zusätzliche Dienste zu blockieren, fügen Sie eine Datei mit dem Suffix -denylist in hinzu, /etc/smart-restart-conf.d/ wie im folgenden Beispiel gezeigt.

$ cat /etc/smart-restart-conf.d/custom-denylist # Some comments myservice.service
Anmerkung

Bei der Entscheidung, ob ein Neustart erforderlich ist, werden alle *-denylist Dateien gelesen und ausgewertet.

Benutzerdefinierte Hooks

Zusätzlich zur Denylisting smart-restart bietet es einen Mechanismus zum Ausführen benutzerdefinierter Skripts vor und nach den Versuchen, den Dienst neu zu starten. Die benutzerdefinierten Skripts können verwendet werden, um Vorbereitungsschritte manuell durchzuführen oder um andere Komponenten über einen verbleibenden oder abgeschlossenen Neustart zu informieren.

Alle Skripten /etc/smart-restart-conf.d/ mit dem Suffix -pre-restart oder -post-restart werden ausgeführt. Wenn die Reihenfolge wichtig ist, stellen Sie allen Skripten eine Zahl voran, um die Ausführungsreihenfolge sicherzustellen, wie im folgenden Beispiel gezeigt.

$ ls /etc/smart-restart-conf.d/*-pre-restart 001-my-script-pre-restart 002-some-other-script-pre-restart

Starten einer Instance mit aktivierter neuester Repository-Version

Sie können DNF-Befehle zu einem Benutzerdatenskript hinzufügen, um zu steuern, welche RPM-Pakete beim Start auf einem Amazon-Linux-AMI installiert werden sollen. Im folgenden Beispiel wird ein Benutzerdatenskript verwendet, um sicherzustellen, dass auf jeder mit dem Benutzerdatenskript gestarteten Instance dieselben Paket-Updates installiert werden.

#!/bin/bash dnf update --releasever=2023.0.20230210 # Additional setup and install commands below dnf install httpd php7.4 mysql80

Dieses Skript muss vom Superuser (Root) ausgeführt werden. Führen Sie dazu den folgenden Befehl aus.

$ sudo sh -c "bash nameofscript.sh"

Weitere Informationen finden Sie unter Benutzerdaten und Shell-Skripts im Amazon EC2 EC2-Benutzerhandbuch.

Anmerkung

Anstatt ein Benutzerdatenskript zu verwenden, starten Sie das neueste Amazon-Linux-AMI oder ein benutzerdefiniertes AMI, das auf dem Amazon-Linux-AMI basiert. Im neuesten Amazon-Linux-AMI sind alle erforderlichen Updates installiert und es ist so konfiguriert, dass es auf eine bestimmte Repository-Version verweist.

Abrufen von Paketunterstützunginformationen

AL2023 beinhaltet viele verschiedene Open-Source-Softwareprojekte. Jedes dieser Projekte wird unabhängig von Amazon Linux verwaltet und hat unterschiedliche Versionen und end-of-support Zeitpläne. Das DNF-supportinfo-Plugin stellt Ihnen Amazon-Linux-spezifische Informationen in Form von Metadaten zu einem Paket bereit. Im folgenden Beispiel gibt der dnf supportinfo-Befehl Metadaten für das glibc-Paket zurück.

$ sudo dnf supportinfo --pkg glibc Last metadata expiration check: 0:07:56 ago on Wed Mar 1 23:21:49 2023. Name : glibc Version : 2.34-52.amzn2023.0.2 State : installed Support Status : supported Support Periods : from 2023-03-15 : supported : from 2028-03-15 : unsupported Support Statement : Amazon Linux 2023 End Of Life Link : https://aws.amazon.com/amazon-linux-ami/faqs/ Other Info : This is the support statement for AL2023. The ...: end of life of Amazon Linux 2023 would be March 2028. ...: From this point, the Amazon Linux 2023 packages (listed ...: below) will no longer, receive any updates from AWS.

Prüfen auf neuere Repository-Versionen

In einer AL2023-Instance können Sie mit dem DNF-Hilfsprogramm Repositorys verwalten und aktualisierte RPM-Pakete anwenden. Diese Pakete sind in den Amazon-Linux-Repositorys verfügbar. Mit dem DNF-Befehl dnf check-release-update können Sie nach neuen Versionen des DNF-Repositorys suchen.

$ sudo dnf check-release-update WARNING: A newer release of "Amazon Linux" is available. Available Versions: Version 2023.0.20230210: Run the following command to update to 2023.0.20230210: dnf update --releasever=2023.0.20230210 Release notes: https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes.html

Es wird eine vollständige Liste aller neueren Versionen der verfügbaren DNF-Repositorys zurückgegeben. Wenn nichts zurückgegeben wird, bedeutet dies, dass DNF aktuell für die Nutzung der neuesten verfügbaren Version konfiguriert ist. Die Version des aktuell installierten system-release-Pakets legt die releasever-DNF-Variable fest. Mit folgendem Befehl können Sie die aktuelle Repository-Version abfragen.

$ rpm -q system-release --qf "%{VERSION}\n"

Wenn Sie DNF-Pakettransaktionen ausführen (z. B. Installieren, Aktualisieren oder Entfernen), werden Sie mit einer Warnmeldung über neue Repository-Versionen informiert. Wenn Sie beispielsweise das httpd-Paket auf einer Instance installieren, die aus einer älteren Version von AL2023 heraus gestartet wurde, wird Folgendes zurückgegeben.

$ sudo dnf install httpd -y Last metadata expiration check: 0:16:52 ago on Wed Mar 1 23:21:49 2023. Dependencies resolved. ==================================================================== Package Arch Version Repository Size ==================================================================== Installing: httpd x86_64 2.4.54-3.amzn2023.0.4 amazonlinux 46 k Installing dependencies: apr x86_64 1.7.2-2.amzn2023.0.2 amazonlinux 129 k apr-util x86_64 1.6.3-1.amzn2023.0.1 amazonlinux 98 k generic-logos-httpd noarch 18.0.0-12.amzn2023.0.3 amazonlinux 19 k httpd-core x86_64 2.4.54-3.amzn2023.0.4 amazonlinux 1.3 M httpd-filesystem noarch 2.4.54-3.amzn2023.0.4 amazonlinux 13 k httpd-tools x86_64 2.4.54-3.amzn2023.0.4 amazonlinux 80 k libbrotli x86_64 1.0.9-4.amzn2023.0.2 amazonlinux 315 k mailcap noarch 2.1.49-3.amzn2023.0.3 amazonlinux 33 k Installing weak dependencies: apr-util-openssl x86_64 1.6.3-1.amzn2023.0.1 amazonlinux 17 k mod_http2 x86_64 1.15.24-1.amzn2023.0.3 amazonlinux 152 k mod_lua x86_64 2.4.54-3.amzn2023.0.4 amazonlinux 60 k Transaction Summary ==================================================================== Install 12 Packages Total download size: 2.3 M Installed size: 6.8 M Downloading Packages: (1/12): apr-util-openssl-1.6.3-1.am 212 kB/s | 17 kB 00:00 (2/12): apr-1.7.2-2.amzn2023.0.2.x8 1.1 MB/s | 129 kB 00:00 (3/12): httpd-core-2.4.54-3.amzn202 8.9 MB/s | 1.3 MB 00:00 (4/12): mod_http2-1.15.24-1.amzn202 1.9 MB/s | 152 kB 00:00 (5/12): apr-util-1.6.3-1.amzn2023.0 1.7 MB/s | 98 kB 00:00 (6/12): mod_lua-2.4.54-3.amzn2023.0 1.4 MB/s | 60 kB 00:00 (7/12): httpd-2.4.54-3.amzn2023.0.4 1.5 MB/s | 46 kB 00:00 (8/12): libbrotli-1.0.9-4.amzn2023. 4.4 MB/s | 315 kB 00:00 (9/12): mailcap-2.1.49-3.amzn2023.0 753 kB/s | 33 kB 00:00 (10/12): httpd-tools-2.4.54-3.amzn2 978 kB/s | 80 kB 00:00 (11/12): httpd-filesystem-2.4.54-3. 210 kB/s | 13 kB 00:00 (12/12): generic-logos-httpd-18.0.0 439 kB/s | 19 kB 00:00 -------------------------------------------------------------------- Total 6.6 MB/s | 2.3 MB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : apr-1.7.2-2.amzn2023.0.2.x86_64 1/12 Installing : apr-util-openssl-1.6.3-1.amzn2023.0.1. 2/12 Installing : apr-util-1.6.3-1.amzn2023.0.1.x86_64 3/12 Installing : mailcap-2.1.49-3.amzn2023.0.3.noarch 4/12 Installing : httpd-tools-2.4.54-3.amzn2023.0.4.x86_ 5/12 Installing : generic-logos-httpd-18.0.0-12.amzn2023 6/12 Running scriptlet: httpd-filesystem-2.4.54-3.amzn2023.0.4 7/12 Installing : httpd-filesystem-2.4.54-3.amzn2023.0.4 7/12 Installing : httpd-core-2.4.54-3.amzn2023.0.4.x86_6 8/12 Installing : mod_http2-1.15.24-1.amzn2023.0.3.x86_6 9/12 Installing : libbrotli-1.0.9-4.amzn2023.0.2.x86_64 10/12 Installing : mod_lua-2.4.54-3.amzn2023.0.4.x86_64 11/12 Installing : httpd-2.4.54-3.amzn2023.0.4.x86_64 12/12 Running scriptlet: httpd-2.4.54-3.amzn2023.0.4.x86_64 12/12 Verifying : apr-1.7.2-2.amzn2023.0.2.x86_64 1/12 Verifying : apr-util-openssl-1.6.3-1.amzn2023.0.1. 2/12 Verifying : httpd-core-2.4.54-3.amzn2023.0.4.x86_6 3/12 Verifying : mod_http2-1.15.24-1.amzn2023.0.3.x86_6 4/12 Verifying : apr-util-1.6.3-1.amzn2023.0.1.x86_64 5/12 Verifying : mod_lua-2.4.54-3.amzn2023.0.4.x86_64 6/12 Verifying : libbrotli-1.0.9-4.amzn2023.0.2.x86_64 7/12 Verifying : httpd-2.4.54-3.amzn2023.0.4.x86_64 8/12 Verifying : httpd-tools-2.4.54-3.amzn2023.0.4.x86_ 9/12 Verifying : mailcap-2.1.49-3.amzn2023.0.3.noarch 10/12 Verifying : httpd-filesystem-2.4.54-3.amzn2023.0.4 11/12 Verifying : generic-logos-httpd-18.0.0-12.amzn2023 12/12 Installed: apr-1.7.2-2.amzn2023.0.2.x86_64 apr-util-1.6.3-1.amzn2023.0.1.x86_64 apr-util-openssl-1.6.3-1.amzn2023.0.1.x86_64 generic-logos-httpd-18.0.0-12.amzn2023.0.3.noarch httpd-2.4.54-3.amzn2023.0.4.x86_64 httpd-core-2.4.54-3.amzn2023.0.4.x86_64 httpd-filesystem-2.4.54-3.amzn2023.0.4.noarch httpd-tools-2.4.54-3.amzn2023.0.4.x86_64 libbrotli-1.0.9-4.amzn2023.0.2.x86_64 mailcap-2.1.49-3.amzn2023.0.3.noarch mod_http2-1.15.24-1.amzn2023.0.3.x86_64 mod_lua-2.4.54-3.amzn2023.0.4.x86_64 Complete!

Hinzufügen, aktivieren oder deaktivieren neuer Repositorys

Wenn Sie ein Paket aus einem anderen Repository mithilfe des DNF-Paketmanagementsystems installieren möchten, fügen Sie die Repository-Angaben zur /etc/dnf/dnf.conf-Datei oder zu der repository.repo-Datei im Verzeichnis /etc/yum.repos.d hinzu. Sie können dies manuell durchführen. Die meisten DNF-Repositorys stellen jedoch ihre eigene repository.repo-Datei unter ihrer Repository-URL bereit.

Anmerkung

Derzeit gibt es keine zusätzlichen Repositorys, die zu AL2023 hinzugefügt werden können. Dies kann sich jedoch in Zukunft ändern. Sie könnten auch Ihre eigenen Pakete schreiben und diese Pakete für Ihre AL203-Enterprise-Umgebung verfügbar machen. Sie müssen dann das Repository, in dem die Pakete gespeichert sind, hinzufügen und aktivieren, bevor diese Pakete verwendet werden können.

Mit folgendem Befehl prüfen Sie, welche Repositorys derzeit aktiviert sind:

$ dnf repolist all --verbose Loaded plugins: builddep, changelog, config-manager, copr, debug, debuginfo-install, download, generate_completion_cache, groups-manager, needs-restarting, playground, release-notification, repoclosure, repodiff, repograph, repomanage, reposync, supportinfo DNF version: 4.12.0 cachedir: /var/cache/dnf Last metadata expiration check: 0:00:02 ago on Wed Mar 1 23:40:15 2023. Repo-id : amazonlinux Repo-name : Amazon Linux 2023 repository Repo-status : enabled Repo-revision : 1677203368 Repo-updated : Fri Feb 24 01:49:28 2023 Repo-pkgs : 12632 Repo-available-pkgs: 12632 Repo-size : 12 G Repo-mirrors : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/core/mirrors/2023.0.20230222/x86_64/mirror.list Repo-baseurl : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/core/guids/cf9296325a6c46ff40c775a8e2d632c4c3fd9d9164014ce3304715d61b90ca8e/x86_64/ : (0 more) Repo-expire : 172800 second(s) (last: Wed Mar 1 23:40:15 : 2023) Repo-filename : /etc/yum.repos.d/amazonlinux.repo Repo-id : amazonlinux-debuginfo Repo-name : Amazon Linux 2023 repository - Debug Repo-status : disabled Repo-mirrors : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/core/mirrors/2023.0.20230222/debuginfo/x86_64/mirror.list Repo-expire : 21600 second(s) (last: unknown) Repo-filename : /etc/yum.repos.d/amazonlinux.repo Repo-id : amazonlinux-source Repo-name : Amazon Linux 2023 repository - Source packages Repo-status : disabled Repo-mirrors : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/core/mirrors/2023.0.20230222/SRPMS/mirror.list Repo-expire : 21600 second(s) (last: unknown) Repo-filename : /etc/yum.repos.d/amazonlinux.repo Repo-id : kernel-livepatch Repo-name : Amazon Linux 2023 Kernel Livepatch repository Repo-status : disabled Repo-mirrors : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/kernel-livepatch/mirrors/al2023/x86_64/mirror.list Repo-expire : 172800 second(s) (last: unknown) Repo-filename : /etc/yum.repos.d/kernel-livepatch.repo Repo-id : kernel-livepatch-source Repo-name : Amazon Linux 2023 Kernel Livepatch repository - : Source packages Repo-status : disabled Repo-mirrors : https://al2023-repos-us-west-2-de612dc2.s3.dualstack.us-west-2.amazonaws.com/kernel-livepatch/mirrors/al2023/SRPMS/mirror.list Repo-expire : 21600 second(s) (last: unknown) Repo-filename : /etc/yum.repos.d/kernel-livepatch.repo Total packages: 12632
Anmerkung

Wenn Sie das --verbose-Options-Flag nicht hinzufügen, werden lediglich die Repo-id-, Repo-name- und Repo-status-Informationen zurückgegeben.

So fügen Sie ein yum-Repository zu einem /etc/yum.repos.d-Verzeichnis hinzu:

  1. Suchen Sie den Speicherort der Datei .repo. In diesem Beispiel befindet sich die Datei .repo unter https://www.example.com/repository.repo.

  2. Erstellen Sie ein Repository mit dem Befehl dnf config-manager.

$ sudo dnf config-manager --add-repo https://www.example.com/repository.repo Loaded plugins: priorities, update-motd, upgrade-helper adding repo from: https://www.example.com/repository.repo grabbing file https://www.example.com/repository.repo to /etc/yum.repos.d/repository.repo repository.repo | 4.0 kB 00:00 repo saved to /etc/yum.repos.d/repository.repo

Nach der Installation von Repositorys müssen diese wie folgt aktiviert werden.

Wenn Sie ein yum-Repository in /etc/yum.repos.d aktivieren möchten, verwenden Sie den dnf config-manager-Befehl mit dem --enable-Flag und dem Repository-Namen.

$ sudo dnf config-manager --enable repository
Anmerkung

Wenn Sie ein Repository deaktivieren möchten, verwenden Sie dieselbe Befehlssyntax, ersetzen jedoch --enable mit --disable im Befehl.

Hinzufügen von Repositorys mit cloud-init

Zusätzlich zur obigen Methode können Sie mithilfe des cloud-init-Frameworks ein neues Repository hinzufügen.

Wenn Sie ein neues Paket-Repository hinzufügen möchten, empfehlen wir die Verwendung der folgenden Vorlage. Wir empfehlen, diese Datei lokal zu speichern.

#cloud-config yum_repos: repository.repo: baseurl: https://www.example.com/ enabled: true gpgcheck: true gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EXAMPLE name: Example Repository
Anmerkung

Ein Vorteil von cloud-init ist, dass Sie Ihrer Konfigurationsdatei einen packages:-Abschnitt hinzufügen können. In diesem Abschnitt können Sie die Namen der zu installierenden Pakete angeben. Sie können Pakete entweder aus dem Standard-Repository oder dem neuen Repository installieren, das Sie der cloud-config-Datei hinzugefügt haben.

Detailliere Informationen zur Struktur der YAML-Datei finden Sie unter Hinzufügen eines YUM-Repositorys in the cloud-init-Dokumentation.

Nachdem Sie die Datei im YAML-Format eingerichtet haben, können Sie sie im cloud-init-Framework unter AWS CLI ausführen. Stellen Sie für den Aufruf der gewünschten Operation sicher, dass die --userdata-Option und der Name der .yml-Datei angegeben wurden.

$ aws ec2 run-instances \ --image-id \ resolve:ssm:/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64 \ --instance-type m5.xlarge \ --region us-east-1 \ --key-name aws-key-us-east-1 \ --security-group-ids sg-004a7650 \ --user-data file://cloud-config.yml