AL2023 でパッケージとオペレーティングシステムの更新を管理する - Amazon Linux 2023

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AL2023 でパッケージとオペレーティングシステムの更新を管理する

以前のバージョンの Amazon Linux とは異なり、AL2023 AMIs は特定のバージョンの Amazon Linux リポジトリにロックされます。AL2023 インスタンスにセキュリティ修正とバグ修正の両方を適用するには、DNF 設定を更新します。または、新しい AL2023 インスタンスを起動します。

このセクションでは、実行中のインスタンスの DNF パッケージとリポジトリを管理する方法について説明します。また、ユーザーデータスクリプトから、使用可能な最新の Amazon Linux リポジトリを起動時に有効にするように DNF を設定する方法についても説明します。詳細については、「DNF コマンドリファレンス」を参照してください。

使用可能なパッケージ更新の確認

dnf check-update コマンドを使用して、システムの更新を確認できます。AL2023 の場合は、コマンドに --releasever=version-number オプションを追加することをお勧めします。

このオプションを追加すると、DNF は新しいバージョンのリポジトリの更新も確認します。例えば、dnf check-update コマンドを実行した後は、返された最新のバージョンを version-number の値として使用します。

最新バージョンのリポジトリを使用するようにインスタンスが更新された場合、出力には更新するすべてのパッケージのリストが含まれます。

注記

dnf check-update コマンドにオプションフラグを付けてリリースバージョンを指定しない場合、現在設定されているリポジトリバージョンのみが確認されます。つまり、新しいバージョンのリポジトリにあるパッケージは確認されません。

$ 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

このコマンドでは、新しいパッケージが使用可能な場合、返されるコードは 100 です。新しいパッケージがない場合、返されるコードは 0 です。さらに、出力には更新予定のパッケージもすべて一覧表示されます。

DNF およびリポジトリバージョンを使用してセキュリティ更新を適用します。

新しいパッケージ更新およびセキュリティ更新は、新しいリポジトリバージョンでのみ使用可能です。以前の AL2023 AMI バージョンから起動したインスタンスの場合、セキュリティ更新をインストールする前にリポジトリバージョンを更新する必要があります。dnf check-release-update コマンドには、システムにインストールされているすべてのパッケージを新しいリポジトリのバージョンに更新する更新コマンドの例が含まれています。

$ 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 ...

パッケージをセキュリティ機能のみで更新する --security オプションを追加できます。

$ 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 ...

AL2023 パッケージのバージョンを確認するには、以下のうち 1 つ以上を実行します。

  • dnf check-update コマンドを実行します。

  • Amazon Linux リポジトリの更新 SNS トピック (arn:aws:sns:us-east-1:137112412989:amazon-linux-2023-ami-updates) をサブスクライブします。詳細については、「Amazon Simple 通知サービス デベロッパーガイド」の「Amazon SNS トピックのサブスクライブ」を参照してください。

  • AL2023 リリースノート」を定期的に参照してください。

重要

実行中のインスタンスにセキュリティ更新を適用するときは、DNF が最新のリポジトリバージョンを指していることを確認します。

(セキュリティ) 更新後の自動サービス再起動

Amazon Linux には、スマート再起動パッケージが付属するようになりました。 は、システムパッケージマネージャーを使用してパッケージがインストールまたは削除されるたびに、システム更新時に systemd サービスSmart-restartを再起動します。これはdnf (update|upgrade|downgrade)、 が実行されるたびに発生します。

Smart-restart は、 からの needs-restarting パッケージdnf-utilsとカスタム拒否リストメカニズムを使用して、再起動する必要があるサービスや、システムの再起動が推奨されるかどうかを判断します。システムの再起動が推奨されると、再起動ヒントマーカーファイルが生成されます (/run/smart-restart/reboot-hint-marker)。

smart-restart をインストールするには

次のDNFコマンドを実行します (他のパッケージの場合と同様)。

$ sudo dnf install smart-restart

インストール後、後続のトランザクションによってsmart-restartロジックがトリガーされます。

拒否リスト

Smart-restart は、特定のサービスの再起動をブロックするように指示できます。ブロックされたサービスは、再起動が必要かどうかの判断には影響しません。追加のサービスをブロックするには、次の例/etc/smart-restart-conf.d/に示すように、 -denylistにサフィックス が付いたファイルを追加します。

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

再起動が必要かどうかを判断する際に、すべての*-denylistファイルが読み取られ、評価されます。

カスタムフック

拒否リストに加え、 smart-restartはサービスの再起動の前後にカスタムスクリプトを実行するメカニズムを提供します。カスタムスクリプトを使用して、手動で準備ステップを実行したり、他のコンポーネントに残りの再起動や完了した再起動を通知したりできます。

サフィックス -pre-restartまたは /etc/smart-restart-conf.d/を持つ 内のすべてのスクリプト-post-restartが実行されます。順序が重要な場合は、次の例に示すように、すべてのスクリプトの前に数字を付けて実行順序を確認します。

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

最新のリポジトリバージョンを有効にしたインスタンスの起動

ユーザーデータスクリプトに DNF コマンドを追加して、Amazon Linux AMI の起動時にどの RPM パッケージをインストールするかを制御できます。以下の例では、ユーザーデータスクリプトを使用して、ユーザーデータスクリプトを使用して起動されるすべてのインスタンスに同じパッケージ更新がインストールされていることを確認します。

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

このスクリプトは superuser (root) として実行する必要があります。これを行うには、以下のコマンドを実行します。

$ sudo sh -c "bash nameofscript.sh"

詳細については、Amazon EC2 ユーザーガイド」の「ユーザーデータとシェルスクリプト」を参照してください。

注記

ユーザーデータスクリプトを使用する代わりに、最新の Amazon Linux AMI を起動するか、Amazon Linux AMI をベースにしたカスタム AMI を起動します。最新の Amazon Linux AMI には必要な更新がすべてインストールされており、特定のリポジトリバージョンを指すように設定されています。

パッケージサポート情報の取得

AL2023 には、さまざまなオープンソースソフトウェアプロジェクトが組み込まれています。これらのプロジェクトはそれぞれ Amazon Linux とは独立して管理され、リリースと end-of-support スケジュールは異なります。これらのさまざまなパッケージに関する Amazon Linux 固有の情報を提供するために、DNF supportinfo プラグインはパッケージに関するメタデータを提供します。以下の例では、dnf supportinfo コマンドは glibc パッケージのメタデータを返します。

$ 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.

新しいリポジトリバージョンの確認

AL2023 インスタンスでは、DNF ユーティリティを使用してリポジトリを管理し、更新された RPM パッケージを適用できます。これらのパッケージは Amazon Linux リポジトリにあります。DNF コマンド dnf check-release-update を使用して、DNF リポジトリの新しいバージョンを確認できます。

$ 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

これにより、使用可能なすべての新しいバージョンの DNF リポジトリのすべてのリストが返されます。何も返されない場合は、DNF が現在使用可能な最新バージョンを使用するように設定されていることを意味します。現在インストールされている system-release パッケージのバージョンによって releasever DNF 変数が設定されます。現在のリポジトリバージョンを確認するには、以下のコマンドを実行します。

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

DNF パッケージトランザクション (インストール、更新、削除コマンドなど) を実行すると、リポジトリの新しいバージョンを知らせる警告メッセージが表示されます。例えば、AL2023 の古いバージョンから起動されたインスタンスに httpd パッケージをインストールすると、以下の出力が返されます。

$ 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!

新しいリポジトリの追加、有効化、無効化

DNF パッケージで異なるリポジトリからパッケージをインストールには、/etc/dnf/dnf.conf ファイル、または /etc/yum.repos.d ディレクトリにあるお客様の repository.repo ファイルに、リポジトリ情報を追加します。この操作は手動で行うことができます。ただし、ほとんどの DNF リポジトリのリポジトリ URL で、独自の repository.repo ファイルが提供されています。

注記

現時点では、AL2023 に追加できるリポジトリはありません。これは今後変更される可能性があります。また、独自のパッケージを作成して、そのパッケージを AL2023 エンタープライズ環境で使用できるようにすることもできます。パッケージを使用する前に、パッケージが保存されているリポジトリを追加して有効にする必要があります。

現在有効になっているリポジトリを確認するには、以下のコマンドを実行します。

$ 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
注記

--verbose オプションフラグを追加しない場合、出力には、Repo-idRepo-name、および Repo-status の情報のみが含まれます。

yum リポジトリを /etc/yum.repos.d ディレクトリに追加する方法

  1. .repo ファイルの場所を検索します。この例では、.repo ファイルは、https://www.example.com/repository.repo にあります。

  2. 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

リポジトリをインストールしたら、以下の手順で説明するように有効にする必要があります。

/etc/yum.repos.dyum リポジトリを有効にするには、--enable フラグとリポジトリ名を指定して dnf config-manager コマンドを実行します。

$ sudo dnf config-manager --enable repository
注記

リポジトリを無効にするには、同じコマンド構文を使用しますが、コマンド内の --enable--disable に置き換えます。

cloud-init によるリポジトリの追加

前の方法でリポジトリを追加するほかに、cloud-init フレームワークを使用して新しいリポジトリを追加することもできます。

新しいパッケージリポジトリを追加するには、以下のテンプレートを使用することをお勧めします。このファイルをローカルに保存することを検討してください。

#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
注記

cloud-init を使用する利点の 1 つは、設定ファイルに packages: セクションを追加できることです。このセクションには、インストールするパッケージの名前を含めることができます。パッケージは、デフォルトのリポジトリからも、cloud-config ファイルに追加した新しいリポジトリからもインストールできます。

YAML ファイルの構造に関するより具体的な情報については、「cloud-init ドキュメント」の「YUM リポジトリの追加」を参照してください。

YAML フォーマットファイルを設定したら、 AWS CLIの cloud-init フレームワークで実行できます。必要な操作を呼び出すための --userdata オプションと .yml ファイル名を必ず含めてください。

$ 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