Kelola pembaruan paket dan sistem operasi di AL2023 - Amazon Linux 2023

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kelola pembaruan paket dan sistem operasi di AL2023

Tidak seperti versi Amazon Linux sebelumnya, AMI AL2023 dikunci ke versi tertentu dari repositori Amazon Linux. Untuk menerapkan perbaikan keamanan dan bug ke instans AL2023, perbarui konfigurasi. DNF Atau, luncurkan instans AL2023 yang lebih baru.

Bagian ini menjelaskan cara mengelola DNF paket dan repositori pada instance yang sedang berjalan. Ini juga menjelaskan cara mengkonfigurasi DNF dari skrip data pengguna untuk mengaktifkan repositori Amazon Linux terbaru yang tersedia pada waktu peluncuran. Untuk informasi selengkapnya, lihat Referensi Perintah DNF.

Memeriksa pembaruan paket yang tersedia

Anda dapat menggunakan dnf check-update perintah untuk memeriksa pembaruan apa pun untuk sistem Anda. Untuk AL2023, kami sarankan Anda menambahkan --releasever=version-number opsi ke perintah.

Saat Anda menambahkan opsi ini, periksa DNF juga pembaruan untuk versi repositori yang lebih baru. Misalnya, setelah Anda menjalankan dnf check-update perintah, gunakan versi terbaru yang dikembalikan sebagai nilai untukversion-number.

Jika instance diperbarui untuk menggunakan versi terbaru dari repositori, output menyertakan daftar semua paket yang akan diperbarui.

catatan

Jika Anda tidak menentukan versi rilis dengan tanda opsional ke dnf check-update perintah, hanya versi repositori yang saat ini dikonfigurasi yang dicentang. Ini berarti bahwa paket di versi repositori yang lebih baru tidak dicentang.

$ 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

Untuk perintah ini, jika ada paket yang lebih baru yang tersedia, kode pengembaliannya adalah 100. Jika tidak ada paket yang lebih baru yang tersedia, kode pengembaliannya adalah 0. Selain itu, output juga mencantumkan semua paket yang akan diperbarui.

Menerapkan pembaruan keamanan menggunakan DNF dan versi repositori

Pembaruan paket baru dan pembaruan keamanan hanya tersedia untuk versi repositori baru. Untuk contoh yang diluncurkan dari versi AMI AL2023 sebelumnya, Anda harus memperbarui versi repositori sebelum dapat menginstal pembaruan keamanan. dnf check-release-updatePerintah ini mencakup contoh perintah pembaruan yang memperbarui semua paket yang diinstal pada sistem ke versi dalam repositori yang lebih baru.

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

Anda dapat menambahkan --security opsi untuk memperbarui paket dengan fitur keamanan saja.

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

Untuk menemukan versi paket AL2023, lakukan satu atau beberapa hal berikut:

  • Jalankan perintah dnf check-update.

  • Berlangganan topik SNS pembaruan repositori Amazon Linux (). arn:aws:sns:us-east-1:137112412989:amazon-linux-2023-ami-updates Untuk informasi selengkapnya, lihat Berlangganan topik Amazon SNS di Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon.

  • Rujuk catatan rilis AL2023 secara teratur.

penting

Saat Anda menerapkan pembaruan keamanan ke instance yang sedang berjalan, pastikan DNF menunjuk ke versi repositori terbaru.

Restart layanan otomatis setelah pembaruan (keamanan)

Amazon Linux sekarang dikirimkan dengan paket smart-restart. Smart-restartrestart layanan systemd pada pembaruan sistem setiap kali paket diinstal atau dihapus menggunakan manajer paket sistem. Ini terjadi setiap kali dnf (update|upgrade|downgrade) dieksekusi.

Smart-restartmenggunakan needs-restarting paket dari dnf-utils dan mekanisme denylisting khusus untuk menentukan layanan mana yang perlu dimulai ulang dan apakah reboot sistem disarankan. Jika reboot sistem disarankan, file penanda petunjuk reboot dihasilkan (/run/smart-restart/reboot-hint-marker).

Untuk menginstal smart-restart

Jalankan DNF perintah berikut (seperti yang Anda lakukan dengan paket lainnya).

$ sudo dnf install smart-restart

Setelah instalasi, transaksi selanjutnya akan memicu smart-restart logika.

Denylist

Smart-restartdapat diinstruksikan untuk memblokir layanan tertentu agar tidak dimulai ulang. Layanan yang diblokir tidak akan berkontribusi pada keputusan apakah reboot diperlukan. Untuk memblokir layanan tambahan, tambahkan file dengan akhiran -denylist /etc/smart-restart-conf.d/ seperti yang ditunjukkan pada contoh berikut.

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

Semua *-denylist file dibaca dan dievaluasi saat membuat keputusan apakah reboot diperlukan.

Kait khusus

Selain denlisting, smart-restart menyediakan mekanisme untuk menjalankan skrip khusus sebelum dan sesudah upaya untuk memulai ulang layanan. Skrip kustom dapat digunakan untuk melakukan langkah-langkah persiapan secara manual atau untuk menginformasikan komponen lain dari restart yang tersisa atau selesai.

Semua skrip /etc/smart-restart-conf.d/ dengan akhiran -pre-restart atau -post-restart dieksekusi. Jika urutannya penting, awali semua skrip dengan nomor untuk memastikan perintah eksekusi seperti yang ditunjukkan pada contoh berikut.

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

Meluncurkan instance dengan versi repositori terbaru diaktifkan

Anda dapat menambahkan DNF perintah ke skrip data pengguna untuk mengontrol RPM paket apa yang diinstal pada AMI Amazon Linux saat diluncurkan. Dalam contoh berikut, skrip data pengguna digunakan untuk memastikan bahwa setiap instance yang diluncurkan dengan skrip data pengguna memiliki pembaruan paket yang sama diinstal.

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

Anda harus menjalankan skrip ini sebagai superuser (root). Untuk melakukan ini, jalankan perintah berikut.

$ sudo sh -c "bash nameofscript.sh"

Untuk informasi selengkapnya, lihat Data pengguna dan skrip shell di Panduan Pengguna Amazon EC2.

catatan

Alih-alih menggunakan skrip data pengguna, luncurkan AMI Amazon Linux terbaru atau AMI khusus yang didasarkan pada AMI Amazon Linux. Amazon Linux AMI terbaru memiliki semua pembaruan yang diperlukan diinstal dan dikonfigurasikan untuk menunjuk ke versi repositori tertentu.

Mendapatkan informasi dukungan paket

AL2023 menggabungkan banyak proyek perangkat lunak sumber terbuka yang berbeda. Masing-masing proyek ini dikelola secara independen dari Amazon Linux dan memiliki rilis dan end-of-support jadwal yang berbeda. Untuk memberi Anda informasi spesifik Amazon Linux tentang paket yang berbeda ini, DNF supportinfo plugin menyediakan metadata tentang sebuah paket. Dalam contoh berikut, dnf supportinfo perintah mengembalikan metadata untuk paket. 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.

Memeriksa versi repositori yang lebih baru

Dalam instance AL2023, Anda dapat menggunakan DNF utilitas untuk mengelola repositori dan menerapkan paket yang diperbarui. RPM Paket-paket ini tersedia di repositori Amazon Linux. Anda dapat menggunakan DNF perintah dnf check-release-update untuk memeriksa versi baru dari DNF repositori.

$ 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

Ini mengembalikan daftar lengkap semua versi DNF repositori yang lebih baru yang tersedia. Jika tidak ada yang dikembalikan, ini berarti saat ini DNF dikonfigurasi untuk menggunakan versi terbaru yang tersedia. Versi system-release paket yang saat ini diinstal menetapkan releasever DNF variabel. Untuk memeriksa versi repositori saat ini, jalankan perintah berikut.

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

Saat Anda menjalankan transaksi DNF paket (seperti menginstal, memperbarui, atau menghapus perintah), pesan peringatan akan memberi tahu Anda tentang versi repositori baru. Misalnya, jika Anda menginstal httpd paket pada instance yang diluncurkan dari versi AL2023 yang lebih lama, output berikut akan dikembalikan.

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

Menambahkan, mengaktifkan, atau menonaktifkan repositori baru

Untuk menginstal paket dari repositori yang berbeda dengan sistem manajemen DNF paket, tambahkan informasi repositori ke /etc/dnf/dnf.conf file atau ke repository.repo file sendiri di direktori. /etc/yum.repos.d Anda dapat melakukan ini secara manual. Namun, sebagian besar DNF repositori menyediakan repository.repo file mereka sendiri di URL repositori mereka.

catatan

Saat ini, tidak ada repositori tambahan yang dapat ditambahkan ke AL2023. Ini mungkin berubah di masa depan. Selain itu, Anda dapat menulis paket Anda sendiri, dan membuat paket tersebut tersedia untuk lingkungan perusahaan AL2023 Anda. Sebelum Anda dapat menggunakan paket, Anda harus menambahkan dan mengaktifkan repositori tempat paket disimpan.

Untuk mengetahui repositori apa yang saat ini diaktifkan, Anda dapat menjalankan perintah berikut:

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

Jika Anda tidak menambahkan tanda --verbose opsi, output hanya menyertakanRepo-id,Repo-name, dan Repo-status informasi.

Untuk menambahkan yum repositori ke /etc/yum.repos.d direktori:

  1. Temukan lokasi file .repo. Dalam contoh ini, file .repo ada di https://www.example.com/repository.repo.

  2. Tambahkan repositori dengan perintah 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

Setelah menginstal repositori, Anda harus mengaktifkannya seperti yang dijelaskan di prosedur selanjutnya.

Untuk mengaktifkan yum repositori di/etc/yum.repos.d, gunakan dnf config-manager perintah dengan --enable bendera dan nama repositori.

$ sudo dnf config-manager --enable repository
catatan

Untuk menonaktifkan repositori, gunakan sintaks perintah yang sama, tetapi ganti --enable dengan --disable dalam perintah.

Menambahkan repositori dengan cloud-init

Selain menambahkan repositori menggunakan metode sebelumnya, Anda juga dapat menambahkan repositori baru menggunakan kerangka kerja. cloud-init

Untuk menambahkan repositori paket baru, kami merekomendasikan penggunaan template berikut. Pertimbangkan untuk menyimpan file ini secara lokal.

#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
catatan

Salah satu keuntungan menggunakan cloud-init adalah Anda dapat menambahkan packages: bagian ke file konfigurasi Anda. Di bagian ini, Anda dapat memasukkan nama-nama paket yang ingin Anda instal. Anda dapat menginstal paket dari repositori default atau repositori baru yang Anda tambahkan dalam file. cloud-config

Untuk informasi lebih spesifik tentang struktur file YAMM, lihat Menambahkan repositori YUM dalam dokumentasi. cloud-init

Setelah Anda mengatur file format YAMM, Anda dapat menjalankannya dalam cloud-init kerangka kerja di AWS CLI file. Pastikan untuk menyertakan --userdata opsi dan nama .yml file untuk memanggil operasi yang diinginkan.

$ 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