翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
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 には、スマート再起動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-id
、Repo-name
、および Repo-status
の情報のみが含まれます。
yum
リポジトリを /etc/yum.repos.d
ディレクトリに追加する方法
-
.repo
ファイルの場所を検索します。この例では、.repo
ファイルは、
にあります。https://www.example.com/repository.repo
-
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 filehttps://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.d
で yum
リポジトリを有効にするには、--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-typem5.xlarge
\ --regionus-east-1
\ --key-nameaws-key-us-east-1
\ --security-group-idssg-004a7650
\ --user-data file://cloud-config.yml