Gerenciar atualizações de pacotes e do sistema operacional no AL2023 - Amazon Linux 2023

Gerenciar atualizações de pacotes e do sistema operacional no AL2023

Diferentemente das versões anteriores do Amazon Linux, as AMIs do AL2023 estão vinculadas a uma versão específica do repositório do Amazon Linux. Para aplicar correções de segurança e de bugs a uma instância do AL2023, atualize a configuração do DNF para a versão mais recente disponível. Como alternativa, execute uma instância mais recente do AL2023.

Esta seção descreve como gerenciar pacotes e repositórios de DNF em uma instância em execução. Também descreve como configurar DNF a partir de um script de dados do usuário para habilitar o repositório Amazon Linux mais recente disponível no momento do lançamento. Para obter mais informações, consulte Referência de comandos da DNF.

É recomendável aplicar todas as atualizações disponíveis em um novo lançamento do AL2023. Escolher apenas atualizações de segurança ou apenas atualizações específicas deve ser a exceção, e não a regra. Para listar quais Recomendações de segurança são relevantes para uma instância específica, consulte Listar recomendações aplicáveis. Para obter informações sobre como instalar somente atualizações relevantes para uma recomendação específica, consulte Aplicar atualizações de segurança no local.

Importante

Se quiser relatar uma vulnerabilidade ou tiver uma preocupação de segurança em relação aos serviços de nuvem da AWS ou projetos de código aberto, entre em contato com a AWS Security por meio da página Vulnerability Reporting

Verificar as atualizações de pacotes disponíveis

Você pode usar o comando dnf check-update para verificar se há atualizações no seu sistema. Para o AL2023, recomendamos adicionar a opção --releasever=version-number ao comando.

Ao adicionar essa opção, DNF verifica também se há atualizações para uma versão posterior do repositório. Por exemplo, depois de executar o comando dnf check-update, use a última versão retornada como o valor para o version-number.

Se a instância for atualizada para usar a versão mais recente do repositório, a saída incluirá uma lista de todos os pacotes a serem atualizados.

nota

Se você não especificar a versão de lançamento com o sinalizador opcional no comando dnf check-update, somente a versão do repositório atualmente configurada será verificada. Isso significa que os pacotes na versão posterior do repositório não são verificados.

Updates in a specific version

Neste exemplo, veremos quais atualizações estão disponíveis no lançamento 2023.1.20230628 ao inicializar um contêiner do lançamento 2023.0.20230315.

nota

Este exemplo usa os lançamentos 2023.0.20230315 e 2023.1.20230628, e esses não são os lançamentos mais recentes do AL2023. Consulte AL2023 Release Notes para conferir as versões mais recentes, que contêm as atualizações de segurança mais recentes.

Neste exemplo, começaremos com uma imagem de contêiner para o lançamento 2023.0.20230315.

Primeiro, buscamos essa imagem de contêiner no registro de contêineres. O trecho .0 no final indica a versão da imagem para um lançamento específico, e essa versão da imagem geralmente é 0.

$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 2023.0.20230315.0: Pulling from amazonlinux/amazonlinux b76f3b09316a: Pull complete Digest: sha256:94e7183b0739140dbd5b639fb7600f0a2299cec5df8780c26d9cb409da5315a9 Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0

Agora podemos gerar um shell dentro do contêiner, por meio do qual verificaremos se há atualizações.

$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 bash-5.2#

O comando dnf check-update agora é usado para verificar as atualizações disponíveis no lançamento 2023.1.20230628.

nota

A aplicação de atualizações de pacotes é uma operação privilegiada. Embora normalmente não seja necessário elevar privilégios ao executar em um contêiner, se estiver executando em um ambiente sem contêineres, como uma instância do Amazon EC2, você poderá verificar se há atualizações sem elevar os privilégios.

$ dnf check-update --releasever=2023.1.20230628 Amazon Linux 2023 repository 60 MB/s | 15 MB 00:00 Last metadata expiration check: 0:00:02 ago on Mon Jul 22 17:25:34 2024. amazon-linux-repo-cdn.noarch 2023.1.20230628-0.amzn2023 amazonlinux ca-certificates.noarch 2023.2.60-1.0.amzn2023.0.2 amazonlinux curl-minimal.x86_64 8.0.1-1.amzn2023 amazonlinux glib2.x86_64 2.74.7-688.amzn2023.0.1 amazonlinux glibc.x86_64 2.34-52.amzn2023.0.3 amazonlinux glibc-common.x86_64 2.34-52.amzn2023.0.3 amazonlinux glibc-minimal-langpack.x86_64 2.34-52.amzn2023.0.3 amazonlinux gnupg2-minimal.x86_64 2.3.7-1.amzn2023.0.4 amazonlinux keyutils-libs.x86_64 1.6.3-1.amzn2023 amazonlinux libcap.x86_64 2.48-2.amzn2023.0.3 amazonlinux libcurl-minimal.x86_64 8.0.1-1.amzn2023 amazonlinux libgcc.x86_64 11.3.1-4.amzn2023.0.3 amazonlinux libgomp.x86_64 11.3.1-4.amzn2023.0.3 amazonlinux libstdc++.x86_64 11.3.1-4.amzn2023.0.3 amazonlinux libxml2.x86_64 2.10.4-1.amzn2023.0.1 amazonlinux ncurses-base.noarch 6.2-4.20200222.amzn2023.0.4 amazonlinux ncurses-libs.x86_64 6.2-4.20200222.amzn2023.0.4 amazonlinux openssl-libs.x86_64 1:3.0.8-1.amzn2023.0.3 amazonlinux python3-rpm.x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux rpm.x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux rpm-build-libs.x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux rpm-libs.x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux rpm-sign-libs.x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux system-release.noarch 2023.1.20230628-0.amzn2023 amazonlinux tzdata.noarch 2023c-1.amzn2023.0.1 amazonlinux bash-5.2#

A versão do pacote system-release mostra o lançamento para o qual um comando dnf upgrade faria a atualização, que é o lançamento 2023.1.20230628 solicitado no comando dnf check-update --releasever=2023.1.20230628.

Updates in the latest version

Neste exemplo, veremos quais atualizações estão disponíveis na versão latest do AL2023 ao inicializar um contêiner do lançamento 2023.4.20240319. No momento em que este artigo foi escrito, o lançamento latest era 2023.5.20240708, portanto, as atualizações listadas neste exemplo serão as desse lançamento.

nota

Este exemplo usa os lançamentos 2023.4.20240319 e 2023.5.20240708, sendo que este é o lançamento mais recente no momento em que este artigo foi escrito. Para obter mais informações sobre os lançamentos mais recentes, consulte AL2023 Release Notes.

Neste exemplo, começaremos com uma imagem de contêiner para o lançamento 2023.4.20240319.

Primeiro, buscamos essa imagem de contêiner no registro de contêineres. O trecho .1 no final indica a versão da imagem para um lançamento específico. Embora a versão da imagem geralmente seja 0, este exemplo usa um lançamento em que a versão da imagem é 1.

$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 2023.4.20240319.1: Pulling from amazonlinux/amazonlinux 6de065fda9a2: Pull complete Digest: sha256:b4838c4cc9211d966b6ea158dacc9eda7433a16ba94436508c2d9f01f7658b4e Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1

Agora podemos gerar um shell dentro do contêiner, por meio do qual verificaremos se há atualizações.

$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 bash-5.2#

O comando dnf check-update agora é usado para verificar as atualizações disponíveis no lançamento latest que, no momento em que este artigo foi escrito, era 2023.5.20240708.

nota

A aplicação de atualizações de pacotes é uma operação privilegiada. Embora normalmente não seja necessário elevar privilégios ao executar em um contêiner, se estiver executando em um ambiente sem contêineres, como uma instância do Amazon EC2, você poderá verificar se há atualizações sem elevar os privilégios.

$ dnf --releasever=latest check-update Amazon Linux 2023 repository 78 MB/s | 25 MB 00:00 Last metadata expiration check: 0:00:04 ago on Mon Jul 22 17:39:13 2024. amazon-linux-repo-cdn.noarch 2023.5.20240708-1.amzn2023 amazonlinux curl-minimal.x86_64 8.5.0-1.amzn2023.0.4 amazonlinux dnf.noarch 4.14.0-1.amzn2023.0.5 amazonlinux dnf-data.noarch 4.14.0-1.amzn2023.0.5 amazonlinux expat.x86_64 2.5.0-1.amzn2023.0.4 amazonlinux glibc.x86_64 2.34-52.amzn2023.0.10 amazonlinux glibc-common.x86_64 2.34-52.amzn2023.0.10 amazonlinux glibc-minimal-langpack.x86_64 2.34-52.amzn2023.0.10 amazonlinux krb5-libs.x86_64 1.21-3.amzn2023.0.4 amazonlinux libblkid.x86_64 2.37.4-1.amzn2023.0.4 amazonlinux libcurl-minimal.x86_64 8.5.0-1.amzn2023.0.4 amazonlinux libmount.x86_64 2.37.4-1.amzn2023.0.4 amazonlinux libnghttp2.x86_64 1.59.0-3.amzn2023.0.1 amazonlinux libsmartcols.x86_64 2.37.4-1.amzn2023.0.4 amazonlinux libuuid.x86_64 2.37.4-1.amzn2023.0.4 amazonlinux openssl-libs.x86_64 1:3.0.8-1.amzn2023.0.12 amazonlinux python3.x86_64 3.9.16-1.amzn2023.0.8 amazonlinux python3-dnf.noarch 4.14.0-1.amzn2023.0.5 amazonlinux python3-libs.x86_64 3.9.16-1.amzn2023.0.8 amazonlinux system-release.noarch 2023.5.20240708-1.amzn2023 amazonlinux yum.noarch 4.14.0-1.amzn2023.0.5 amazonlinux bash-5.2#

A versão do pacote system-release mostra o lançamento para o qual um comando dnf upgrade seria atualizado.

Para esse comando, se houver pacotes mais novos disponíveis, o código de retorno será 100. Se não houver pacotes mais novos disponíveis, o código de retorno será 0. Além disso, a saída também lista todos os pacotes a serem atualizados.

Aplicar atualizações de segurança usando DNF e versões do repositório

Novas atualizações de pacotes e atualizações de segurança são disponibilizadas somente para novas versões do repositório. Para instâncias que você lançou a partir de versões anteriores da AMI AL2023, você deve atualizar a versão do repositório antes de poder instalar as atualizações de segurança. O comando dnf check-release-update inclui um exemplo de comando update que atualiza todos os pacotes instalados no sistema para versões em um repositório mais novo.

nota

Se você não especificar a versão de lançamento com o sinalizador opcional no comando dnf check-update, somente a versão do repositório atualmente configurada será verificada. Isso significa que nenhuma atualização dos pacotes instalados presentes em qualquer versão posterior do repositório será aplicada.

Esta seção aborda o caminho de atualização recomendado para aplicar todas as atualizações disponíveis em vez de escolher atualizações individuais ou somente aquelas marcadas como atualizações de segurança. Ao aplicar todas as atualizações, as instâncias existentes são movidas para o mesmo conjunto de pacotes que a inicialização de uma AMI atualizada. Essa consistência reduz a variação das versões de pacotes em uma frota. Para obter mais informações sobre como aplicar atualizações específicas, consulte Aplicar atualizações de segurança no local.

Applying updates in a specific version

Neste exemplo, aplicaremos as atualizações disponíveis no lançamento 2023.1.20230628 ao inicializar um contêiner do lançamento 2023.0.20230315.

nota

Este exemplo usa os lançamentos 2023.0.20230315 e 2023.1.20230628, e esses não são os lançamentos mais recentes do AL2023. Consulte AL2023 Release Notes para conferir as versões mais recentes, que contêm as atualizações de segurança mais recentes.

Neste exemplo, começaremos com uma imagem de contêiner para o lançamento 2023.0.20230315.

Primeiro, buscamos essa imagem de contêiner no registro de contêineres. O trecho .0 no final indica a versão da imagem para um lançamento específico, e essa versão da imagem geralmente é 0.

$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 2023.0.20230315.0: Pulling from amazonlinux/amazonlinux b76f3b09316a: Pull complete Digest: sha256:94e7183b0739140dbd5b639fb7600f0a2299cec5df8780c26d9cb409da5315a9 Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0

Agora podemos gerar um shell dentro do contêiner, por meio do qual aplicaremos as atualizações.

$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0 bash-5.2#

O comando dnf upgrade agora é usado para aplicar todas as atualizações presentes no lançamento 2023.1.20230628.

nota

A aplicação de atualizações de pacotes é uma operação privilegiada. Embora normalmente não seja necessário elevar privilégios ao executar em um contêiner, se estiver executando em um ambiente sem contêineres, como uma instância do Amazon EC2, você precisará executar o comando dnf upgrade como usuário root. Isso pode ser feito utilizando os comandos sudo ou su.

$ dnf upgrade --releasever=2023.1.20230628 Amazon Linux 2023 repository 38 MB/s | 15 MB 00:00 Last metadata expiration check: 0:00:02 ago on Mon Jul 22 17:49:08 2024. Dependencies resolved. ================================================================================= Package Arch Version Repository Size ================================================================================= Upgrading: amazon-linux-repo-cdn noarch 2023.1.20230628-0.amzn2023 amazonlinux 18 k ca-certificates noarch 2023.2.60-1.0.amzn2023.0.2 amazonlinux 829 k curl-minimal x86_64 8.0.1-1.amzn2023 amazonlinux 150 k glib2 x86_64 2.74.7-688.amzn2023.0.1 amazonlinux 2.7 M glibc x86_64 2.34-52.amzn2023.0.3 amazonlinux 1.9 M glibc-common x86_64 2.34-52.amzn2023.0.3 amazonlinux 307 k glibc-minimal-langpack x86_64 2.34-52.amzn2023.0.3 amazonlinux 35 k gnupg2-minimal x86_64 2.3.7-1.amzn2023.0.4 amazonlinux 421 k keyutils-libs x86_64 1.6.3-1.amzn2023 amazonlinux 33 k libcap x86_64 2.48-2.amzn2023.0.3 amazonlinux 67 k libcurl-minimal x86_64 8.0.1-1.amzn2023 amazonlinux 249 k libgcc x86_64 11.3.1-4.amzn2023.0.3 amazonlinux 105 k libgomp x86_64 11.3.1-4.amzn2023.0.3 amazonlinux 280 k libstdc++ x86_64 11.3.1-4.amzn2023.0.3 amazonlinux 744 k libxml2 x86_64 2.10.4-1.amzn2023.0.1 amazonlinux 706 k ncurses-base noarch 6.2-4.20200222.amzn2023.0.4 amazonlinux 60 k ncurses-libs x86_64 6.2-4.20200222.amzn2023.0.4 amazonlinux 328 k openssl-libs x86_64 1:3.0.8-1.amzn2023.0.3 amazonlinux 2.2 M python3-rpm x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux 88 k rpm x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux 486 k rpm-build-libs x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux 90 k rpm-libs x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux 309 k rpm-sign-libs x86_64 4.16.1.3-12.amzn2023.0.6 amazonlinux 21 k system-release noarch 2023.1.20230628-0.amzn2023 amazonlinux 29 k tzdata noarch 2023c-1.amzn2023.0.1 amazonlinux 433 k Transaction Summary ================================================================================= Upgrade 25 Packages Total download size: 12 M Is this ok [y/N]:

A versão do pacote system-release mostra o lançamento para o qual um comando dnf upgrade faria a atualização, que é o lançamento 2023.1.20230628 solicitado no comando dnf upgrade --releasever=2023.1.20230628.

Por padrão, dnf solicitará que você confirme se deseja aplicar as atualizações. Você pode ignorar esse prompt usando o sinalizador -y para dnf. Neste exemplo, o comando dnf upgrade -y --releasever=2023.1.20230628 não solicitará confirmação antes de aplicar as atualizações. Isso é útil em scripts ou outros ambientes de automação.

Depois de confirmar que deseja aplicar as atualizações, dnf as aplica.

Is this ok [y/N]:y Downloading Packages: (1/25): libcap-2.48-2.amzn2023.0.3.x86_64.rpm 1.5 MB/s | 67 kB 00:00 (2/25): python3-rpm-4.16.1.3-12.amzn2023.0.6.x86 2.1 MB/s | 88 kB 00:00 (3/25): libcurl-minimal-8.0.1-1.amzn2023.x86_64. 2.6 MB/s | 249 kB 00:00 (4/25): glib2-2.74.7-688.amzn2023.0.1.x86_64.rpm 26 MB/s | 2.7 MB 00:00 (5/25): glibc-minimal-langpack-2.34-52.amzn2023. 1.3 MB/s | 35 kB 00:00 (6/25): rpm-build-libs-4.16.1.3-12.amzn2023.0.6. 2.8 MB/s | 90 kB 00:00 (7/25): rpm-libs-4.16.1.3-12.amzn2023.0.6.x86_64 6.6 MB/s | 309 kB 00:00 (8/25): libgcc-11.3.1-4.amzn2023.0.3.x86_64.rpm 3.9 MB/s | 105 kB 00:00 (9/25): glibc-common-2.34-52.amzn2023.0.3.x86_64 11 MB/s | 307 kB 00:00 (10/25): glibc-2.34-52.amzn2023.0.3.x86_64.rpm 31 MB/s | 1.9 MB 00:00 (11/25): rpm-sign-libs-4.16.1.3-12.amzn2023.0.6. 877 kB/s | 21 kB 00:00 (12/25): gnupg2-minimal-2.3.7-1.amzn2023.0.4.x86 15 MB/s | 421 kB 00:00 (13/25): openssl-libs-3.0.8-1.amzn2023.0.3.x86_6 35 MB/s | 2.2 MB 00:00 (14/25): libxml2-2.10.4-1.amzn2023.0.1.x86_64.rp 14 MB/s | 706 kB 00:00 (15/25): curl-minimal-8.0.1-1.amzn2023.x86_64.rp 4.2 MB/s | 150 kB 00:00 (16/25): rpm-4.16.1.3-12.amzn2023.0.6.x86_64.rpm 11 MB/s | 486 kB 00:00 (17/25): libgomp-11.3.1-4.amzn2023.0.3.x86_64.rp 7.0 MB/s | 280 kB 00:00 (18/25): libstdc++-11.3.1-4.amzn2023.0.3.x86_64. 14 MB/s | 744 kB 00:00 (19/25): keyutils-libs-1.6.3-1.amzn2023.x86_64.r 1.6 MB/s | 33 kB 00:00 (20/25): ncurses-libs-6.2-4.20200222.amzn2023.0. 10 MB/s | 328 kB 00:00 (21/25): tzdata-2023c-1.amzn2023.0.1.noarch.rpm 11 MB/s | 433 kB 00:00 (22/25): amazon-linux-repo-cdn-2023.1.20230628-0 781 kB/s | 18 kB 00:00 (23/25): ca-certificates-2023.2.60-1.0.amzn2023. 16 MB/s | 829 kB 00:00 (24/25): system-release-2023.1.20230628-0.amzn20 1.5 MB/s | 29 kB 00:00 (25/25): ncurses-base-6.2-4.20200222.amzn2023.0. 3.1 MB/s | 60 kB 00:00 --------------------------------------------------------------------------------- Total 28 MB/s | 12 MB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Upgrading : libgcc-11.3.1-4.amzn2023.0.3.x86_64 1/50 Running scriptlet: libgcc-11.3.1-4.amzn2023.0.3.x86_64 1/50 Upgrading : system-release-2023.1.20230628-0.amzn2023.noarch 2/50 Upgrading : amazon-linux-repo-cdn-2023.1.20230628-0.amzn2023.no 3/50 Upgrading : ncurses-base-6.2-4.20200222.amzn2023.0.4.noarch 4/50 Upgrading : tzdata-2023c-1.amzn2023.0.1.noarch 5/50 Upgrading : glibc-common-2.34-52.amzn2023.0.3.x86_64 6/50 Running scriptlet: glibc-2.34-52.amzn2023.0.3.x86_64 7/50 Upgrading : glibc-2.34-52.amzn2023.0.3.x86_64 7/50 Running scriptlet: glibc-2.34-52.amzn2023.0.3.x86_64 7/50 Upgrading : glibc-minimal-langpack-2.34-52.amzn2023.0.3.x86_64 8/50 Upgrading : libcap-2.48-2.amzn2023.0.3.x86_64 9/50 Upgrading : gnupg2-minimal-2.3.7-1.amzn2023.0.4.x86_64 10/50 Upgrading : libgomp-11.3.1-4.amzn2023.0.3.x86_64 11/50 Running scriptlet: ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch 12/50 Upgrading : ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch 12/50 Running scriptlet: ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch 12/50 Upgrading : openssl-libs-1:3.0.8-1.amzn2023.0.3.x86_64 13/50 Upgrading : libcurl-minimal-8.0.1-1.amzn2023.x86_64 14/50 Upgrading : curl-minimal-8.0.1-1.amzn2023.x86_64 15/50 Upgrading : rpm-libs-4.16.1.3-12.amzn2023.0.6.x86_64 16/50 Upgrading : rpm-4.16.1.3-12.amzn2023.0.6.x86_64 17/50 Upgrading : rpm-build-libs-4.16.1.3-12.amzn2023.0.6.x86_64 18/50 Upgrading : rpm-sign-libs-4.16.1.3-12.amzn2023.0.6.x86_64 19/50 Upgrading : python3-rpm-4.16.1.3-12.amzn2023.0.6.x86_64 20/50 Upgrading : glib2-2.74.7-688.amzn2023.0.1.x86_64 21/50 Upgrading : libxml2-2.10.4-1.amzn2023.0.1.x86_64 22/50 Upgrading : libstdc++-11.3.1-4.amzn2023.0.3.x86_64 23/50 Upgrading : keyutils-libs-1.6.3-1.amzn2023.x86_64 24/50 Upgrading : ncurses-libs-6.2-4.20200222.amzn2023.0.4.x86_64 25/50 Cleanup : glib2-2.73.2-680.amzn2023.0.3.x86_64 26/50 Cleanup : libstdc++-11.3.1-4.amzn2023.0.2.x86_64 27/50 Cleanup : libxml2-2.10.3-2.amzn2023.0.1.x86_64 28/50 Cleanup : python3-rpm-4.16.1.3-12.amzn2023.0.5.x86_64 29/50 Cleanup : rpm-build-libs-4.16.1.3-12.amzn2023.0.5.x86_64 30/50 Cleanup : rpm-sign-libs-4.16.1.3-12.amzn2023.0.5.x86_64 31/50 Cleanup : rpm-libs-4.16.1.3-12.amzn2023.0.5.x86_64 32/50 Cleanup : libcap-2.48-2.amzn2023.0.2.x86_64 33/50 Cleanup : gnupg2-minimal-2.3.7-1.amzn2023.0.3.x86_64 34/50 Cleanup : ncurses-libs-6.2-4.20200222.amzn2023.0.3.x86_64 35/50 Cleanup : libgomp-11.3.1-4.amzn2023.0.2.x86_64 36/50 Cleanup : rpm-4.16.1.3-12.amzn2023.0.5.x86_64 37/50 Cleanup : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64 38/50 Cleanup : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64 39/50 Cleanup : openssl-libs-1:3.0.8-1.amzn2023.0.1.x86_64 40/50 Cleanup : keyutils-libs-1.6.1-2.amzn2023.0.2.x86_64 41/50 Cleanup : amazon-linux-repo-cdn-2023.0.20230315-1.amzn2023.no 42/50 Cleanup : system-release-2023.0.20230315-1.amzn2023.noarch 43/50 Cleanup : ca-certificates-2023.2.60-1.0.amzn2023.0.1.noarch 44/50 Cleanup : ncurses-base-6.2-4.20200222.amzn2023.0.3.noarch 45/50 Cleanup : glibc-minimal-langpack-2.34-52.amzn2023.0.2.x86_64 46/50 Cleanup : glibc-2.34-52.amzn2023.0.2.x86_64 47/50 Cleanup : glibc-common-2.34-52.amzn2023.0.2.x86_64 48/50 Cleanup : tzdata-2022g-1.amzn2023.0.1.noarch 49/50 Cleanup : libgcc-11.3.1-4.amzn2023.0.2.x86_64 50/50 Running scriptlet: libgcc-11.3.1-4.amzn2023.0.2.x86_64 50/50 Running scriptlet: ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch 50/50 Running scriptlet: rpm-4.16.1.3-12.amzn2023.0.6.x86_64 50/50 Running scriptlet: libgcc-11.3.1-4.amzn2023.0.2.x86_64 50/50 Verifying : libcurl-minimal-8.0.1-1.amzn2023.x86_64 1/50 Verifying : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64 2/50 Verifying : libcap-2.48-2.amzn2023.0.3.x86_64 3/50 Verifying : libcap-2.48-2.amzn2023.0.2.x86_64 4/50 Verifying : glib2-2.74.7-688.amzn2023.0.1.x86_64 5/50 Verifying : glib2-2.73.2-680.amzn2023.0.3.x86_64 6/50 Verifying : python3-rpm-4.16.1.3-12.amzn2023.0.6.x86_64 7/50 Verifying : python3-rpm-4.16.1.3-12.amzn2023.0.5.x86_64 8/50 Verifying : glibc-minimal-langpack-2.34-52.amzn2023.0.3.x86_64 9/50 Verifying : glibc-minimal-langpack-2.34-52.amzn2023.0.2.x86_64 10/50 Verifying : rpm-libs-4.16.1.3-12.amzn2023.0.6.x86_64 11/50 Verifying : rpm-libs-4.16.1.3-12.amzn2023.0.5.x86_64 12/50 Verifying : rpm-build-libs-4.16.1.3-12.amzn2023.0.6.x86_64 13/50 Verifying : rpm-build-libs-4.16.1.3-12.amzn2023.0.5.x86_64 14/50 Verifying : glibc-2.34-52.amzn2023.0.3.x86_64 15/50 Verifying : glibc-2.34-52.amzn2023.0.2.x86_64 16/50 Verifying : libgcc-11.3.1-4.amzn2023.0.3.x86_64 17/50 Verifying : libgcc-11.3.1-4.amzn2023.0.2.x86_64 18/50 Verifying : glibc-common-2.34-52.amzn2023.0.3.x86_64 19/50 Verifying : glibc-common-2.34-52.amzn2023.0.2.x86_64 20/50 Verifying : rpm-sign-libs-4.16.1.3-12.amzn2023.0.6.x86_64 21/50 Verifying : rpm-sign-libs-4.16.1.3-12.amzn2023.0.5.x86_64 22/50 Verifying : openssl-libs-1:3.0.8-1.amzn2023.0.3.x86_64 23/50 Verifying : openssl-libs-1:3.0.8-1.amzn2023.0.1.x86_64 24/50 Verifying : gnupg2-minimal-2.3.7-1.amzn2023.0.4.x86_64 25/50 Verifying : gnupg2-minimal-2.3.7-1.amzn2023.0.3.x86_64 26/50 Verifying : libxml2-2.10.4-1.amzn2023.0.1.x86_64 27/50 Verifying : libxml2-2.10.3-2.amzn2023.0.1.x86_64 28/50 Verifying : curl-minimal-8.0.1-1.amzn2023.x86_64 29/50 Verifying : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64 30/50 Verifying : rpm-4.16.1.3-12.amzn2023.0.6.x86_64 31/50 Verifying : rpm-4.16.1.3-12.amzn2023.0.5.x86_64 32/50 Verifying : libstdc++-11.3.1-4.amzn2023.0.3.x86_64 33/50 Verifying : libstdc++-11.3.1-4.amzn2023.0.2.x86_64 34/50 Verifying : libgomp-11.3.1-4.amzn2023.0.3.x86_64 35/50 Verifying : libgomp-11.3.1-4.amzn2023.0.2.x86_64 36/50 Verifying : keyutils-libs-1.6.3-1.amzn2023.x86_64 37/50 Verifying : keyutils-libs-1.6.1-2.amzn2023.0.2.x86_64 38/50 Verifying : ncurses-libs-6.2-4.20200222.amzn2023.0.4.x86_64 39/50 Verifying : ncurses-libs-6.2-4.20200222.amzn2023.0.3.x86_64 40/50 Verifying : ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch 41/50 Verifying : ca-certificates-2023.2.60-1.0.amzn2023.0.1.noarch 42/50 Verifying : tzdata-2023c-1.amzn2023.0.1.noarch 43/50 Verifying : tzdata-2022g-1.amzn2023.0.1.noarch 44/50 Verifying : amazon-linux-repo-cdn-2023.1.20230628-0.amzn2023.no 45/50 Verifying : amazon-linux-repo-cdn-2023.0.20230315-1.amzn2023.no 46/50 Verifying : system-release-2023.1.20230628-0.amzn2023.noarch 47/50 Verifying : system-release-2023.0.20230315-1.amzn2023.noarch 48/50 Verifying : ncurses-base-6.2-4.20200222.amzn2023.0.4.noarch 49/50 Verifying : ncurses-base-6.2-4.20200222.amzn2023.0.3.noarch 50/50 Upgraded: amazon-linux-repo-cdn-2023.1.20230628-0.amzn2023.noarch ca-certificates-2023.2.60-1.0.amzn2023.0.2.noarch curl-minimal-8.0.1-1.amzn2023.x86_64 glib2-2.74.7-688.amzn2023.0.1.x86_64 glibc-2.34-52.amzn2023.0.3.x86_64 glibc-common-2.34-52.amzn2023.0.3.x86_64 glibc-minimal-langpack-2.34-52.amzn2023.0.3.x86_64 gnupg2-minimal-2.3.7-1.amzn2023.0.4.x86_64 keyutils-libs-1.6.3-1.amzn2023.x86_64 libcap-2.48-2.amzn2023.0.3.x86_64 libcurl-minimal-8.0.1-1.amzn2023.x86_64 libgcc-11.3.1-4.amzn2023.0.3.x86_64 libgomp-11.3.1-4.amzn2023.0.3.x86_64 libstdc++-11.3.1-4.amzn2023.0.3.x86_64 libxml2-2.10.4-1.amzn2023.0.1.x86_64 ncurses-base-6.2-4.20200222.amzn2023.0.4.noarch ncurses-libs-6.2-4.20200222.amzn2023.0.4.x86_64 openssl-libs-1:3.0.8-1.amzn2023.0.3.x86_64 python3-rpm-4.16.1.3-12.amzn2023.0.6.x86_64 rpm-4.16.1.3-12.amzn2023.0.6.x86_64 rpm-build-libs-4.16.1.3-12.amzn2023.0.6.x86_64 rpm-libs-4.16.1.3-12.amzn2023.0.6.x86_64 rpm-sign-libs-4.16.1.3-12.amzn2023.0.6.x86_64 system-release-2023.1.20230628-0.amzn2023.noarch tzdata-2023c-1.amzn2023.0.1.noarch Complete! bash-5.2#
Updates in the latest version

Neste exemplo, aplicaremos as atualizações disponíveis na versão latest do AL2023 ao inicializar um contêiner do lançamento 2023.4.20240319. No momento em que este artigo foi escrito, o lançamento latest era 2023.5.20240708, portanto, as atualizações listadas neste exemplo serão as desse lançamento.

nota

Este exemplo usa os lançamentos 2023.4.20240319 e 2023.5.20240708, sendo que este é o lançamento mais recente no momento em que este artigo foi escrito. Para obter mais informações sobre os lançamentos mais recentes, consulte AL2023 Release Notes.

Neste exemplo, começaremos com uma imagem de contêiner para o lançamento 2023.4.20240319.

Primeiro, buscamos essa imagem de contêiner no registro de contêineres. O trecho .1 no final indica a versão da imagem para um lançamento específico. Embora a versão da imagem geralmente seja 0, este exemplo usa um lançamento em que a versão da imagem é 1.

$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 2023.4.20240319.1: Pulling from amazonlinux/amazonlinux 6de065fda9a2: Pull complete Digest: sha256:b4838c4cc9211d966b6ea158dacc9eda7433a16ba94436508c2d9f01f7658b4e Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1

Agora podemos gerar um shell dentro do contêiner, por meio do qual aplicaremos as atualizações.

$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1 bash-5.2#

O comando dnf upgrade agora é usado para aplicar as atualizações disponíveis no lançamento latest que, no momento em que este artigo foi escrito, era 2023.5.20240708.

nota

A aplicação de atualizações de pacotes é uma operação privilegiada. Embora normalmente não seja necessário elevar privilégios ao executar em um contêiner, se estiver executando em um ambiente sem contêineres, como uma instância do Amazon EC2, você precisará executar o comando dnf upgrade como usuário root. Isso pode ser feito utilizando os comandos sudo ou su.

Por padrão, dnf solicitará que você confirme se deseja aplicar as atualizações. Neste exemplo, ignoramos esse prompt usando o sinalizador -y para dnf.

$ dnf -y --releasever=latest update Amazon Linux 2023 repository 75 MB/s | 25 MB 00:00 Last metadata expiration check: 0:00:04 ago on Mon Jul 22 18:00:10 2024. Dependencies resolved. ================================================================================= Package Arch Version Repository Size ================================================================================= Upgrading: amazon-linux-repo-cdn noarch 2023.5.20240708-1.amzn2023 amazonlinux 17 k curl-minimal x86_64 8.5.0-1.amzn2023.0.4 amazonlinux 160 k dnf noarch 4.14.0-1.amzn2023.0.5 amazonlinux 460 k dnf-data noarch 4.14.0-1.amzn2023.0.5 amazonlinux 34 k expat x86_64 2.5.0-1.amzn2023.0.4 amazonlinux 117 k glibc x86_64 2.34-52.amzn2023.0.10 amazonlinux 1.9 M glibc-common x86_64 2.34-52.amzn2023.0.10 amazonlinux 295 k glibc-minimal-langpack x86_64 2.34-52.amzn2023.0.10 amazonlinux 23 k krb5-libs x86_64 1.21-3.amzn2023.0.4 amazonlinux 758 k libblkid x86_64 2.37.4-1.amzn2023.0.4 amazonlinux 105 k libcurl-minimal x86_64 8.5.0-1.amzn2023.0.4 amazonlinux 275 k libmount x86_64 2.37.4-1.amzn2023.0.4 amazonlinux 132 k libnghttp2 x86_64 1.59.0-3.amzn2023.0.1 amazonlinux 79 k libsmartcols x86_64 2.37.4-1.amzn2023.0.4 amazonlinux 62 k libuuid x86_64 2.37.4-1.amzn2023.0.4 amazonlinux 26 k openssl-libs x86_64 1:3.0.8-1.amzn2023.0.12 amazonlinux 2.2 M python3 x86_64 3.9.16-1.amzn2023.0.8 amazonlinux 27 k python3-dnf noarch 4.14.0-1.amzn2023.0.5 amazonlinux 409 k python3-libs x86_64 3.9.16-1.amzn2023.0.8 amazonlinux 7.3 M system-release noarch 2023.5.20240708-1.amzn2023 amazonlinux 28 k yum noarch 4.14.0-1.amzn2023.0.5 amazonlinux 32 k Transaction Summary ================================================================================= Upgrade 21 Packages Total download size: 14 M Downloading Packages: (1/21): amazon-linux-repo-cdn-2023.5.20240708-1. 345 kB/s | 17 kB 00:00 (2/21): dnf-4.14.0-1.amzn2023.0.5.noarch.rpm 6.8 MB/s | 460 kB 00:00 (3/21): dnf-data-4.14.0-1.amzn2023.0.5.noarch.rp 1.6 MB/s | 34 kB 00:00 (4/21): expat-2.5.0-1.amzn2023.0.4.x86_64.rpm 4.6 MB/s | 117 kB 00:00 (5/21): glibc-2.34-52.amzn2023.0.10.x86_64.rpm 38 MB/s | 1.9 MB 00:00 (6/21): glibc-common-2.34-52.amzn2023.0.10.x86_6 8.8 MB/s | 295 kB 00:00 (7/21): glibc-minimal-langpack-2.34-52.amzn2023. 1.7 MB/s | 23 kB 00:00 (8/21): curl-minimal-8.5.0-1.amzn2023.0.4.x86_64 998 kB/s | 160 kB 00:00 (9/21): libblkid-2.37.4-1.amzn2023.0.4.x86_64.rp 4.1 MB/s | 105 kB 00:00 (10/21): krb5-libs-1.21-3.amzn2023.0.4.x86_64.rp 16 MB/s | 758 kB 00:00 (11/21): libmount-2.37.4-1.amzn2023.0.4.x86_64.r 7.9 MB/s | 132 kB 00:00 (12/21): libnghttp2-1.59.0-3.amzn2023.0.1.x86_64 5.6 MB/s | 79 kB 00:00 (13/21): libsmartcols-2.37.4-1.amzn2023.0.4.x86_ 4.4 MB/s | 62 kB 00:00 (14/21): libcurl-minimal-8.5.0-1.amzn2023.0.4.x8 7.1 MB/s | 275 kB 00:00 (15/21): libuuid-2.37.4-1.amzn2023.0.4.x86_64.rp 1.1 MB/s | 26 kB 00:00 (16/21): python3-3.9.16-1.amzn2023.0.8.x86_64.rp 1.5 MB/s | 27 kB 00:00 (17/21): python3-dnf-4.14.0-1.amzn2023.0.5.noarc 19 MB/s | 409 kB 00:00 (18/21): system-release-2023.5.20240708-1.amzn20 1.9 MB/s | 28 kB 00:00 (19/21): yum-4.14.0-1.amzn2023.0.5.noarch.rpm 1.6 MB/s | 32 kB 00:00 (20/21): openssl-libs-3.0.8-1.amzn2023.0.12.x86_ 26 MB/s | 2.2 MB 00:00 (21/21): python3-libs-3.9.16-1.amzn2023.0.8.x86_ 59 MB/s | 7.3 MB 00:00 --------------------------------------------------------------------------------- Total 34 MB/s | 14 MB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Upgrading : glibc-common-2.34-52.amzn2023.0.10.x86_64 1/42 Upgrading : glibc-minimal-langpack-2.34-52.amzn2023.0.10.x86_64 2/42 Running scriptlet: glibc-2.34-52.amzn2023.0.10.x86_64 3/42 Upgrading : glibc-2.34-52.amzn2023.0.10.x86_64 3/42 Running scriptlet: glibc-2.34-52.amzn2023.0.10.x86_64 3/42 Upgrading : libuuid-2.37.4-1.amzn2023.0.4.x86_64 4/42 Upgrading : openssl-libs-1:3.0.8-1.amzn2023.0.12.x86_64 5/42 Upgrading : krb5-libs-1.21-3.amzn2023.0.4.x86_64 6/42 Upgrading : libblkid-2.37.4-1.amzn2023.0.4.x86_64 7/42 Running scriptlet: libblkid-2.37.4-1.amzn2023.0.4.x86_64 7/42 Upgrading : expat-2.5.0-1.amzn2023.0.4.x86_64 8/42 Upgrading : python3-3.9.16-1.amzn2023.0.8.x86_64 9/42 Upgrading : python3-libs-3.9.16-1.amzn2023.0.8.x86_64 10/42 Upgrading : libnghttp2-1.59.0-3.amzn2023.0.1.x86_64 11/42 Upgrading : libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64 12/42 Upgrading : system-release-2023.5.20240708-1.amzn2023.noarch 13/42 Upgrading : amazon-linux-repo-cdn-2023.5.20240708-1.amzn2023.no 14/42 Upgrading : dnf-data-4.14.0-1.amzn2023.0.5.noarch 15/42 Upgrading : python3-dnf-4.14.0-1.amzn2023.0.5.noarch 16/42 Upgrading : dnf-4.14.0-1.amzn2023.0.5.noarch 17/42 Running scriptlet: dnf-4.14.0-1.amzn2023.0.5.noarch 17/42 Upgrading : yum-4.14.0-1.amzn2023.0.5.noarch 18/42 Upgrading : curl-minimal-8.5.0-1.amzn2023.0.4.x86_64 19/42 Upgrading : libmount-2.37.4-1.amzn2023.0.4.x86_64 20/42 Upgrading : libsmartcols-2.37.4-1.amzn2023.0.4.x86_64 21/42 Cleanup : yum-4.14.0-1.amzn2023.0.4.noarch 22/42 Running scriptlet: dnf-4.14.0-1.amzn2023.0.4.noarch 23/42 Cleanup : dnf-4.14.0-1.amzn2023.0.4.noarch 23/42 Running scriptlet: dnf-4.14.0-1.amzn2023.0.4.noarch 23/42 Cleanup : python3-dnf-4.14.0-1.amzn2023.0.4.noarch 24/42 Cleanup : amazon-linux-repo-cdn-2023.4.20240319-1.amzn2023.no 25/42 Cleanup : libmount-2.37.4-1.amzn2023.0.3.x86_64 26/42 Cleanup : curl-minimal-8.5.0-1.amzn2023.0.2.x86_64 27/42 Cleanup : libcurl-minimal-8.5.0-1.amzn2023.0.2.x86_64 28/42 Cleanup : krb5-libs-1.21-3.amzn2023.0.3.x86_64 29/42 Cleanup : libblkid-2.37.4-1.amzn2023.0.3.x86_64 30/42 Cleanup : libnghttp2-1.57.0-1.amzn2023.0.1.x86_64 31/42 Cleanup : libsmartcols-2.37.4-1.amzn2023.0.3.x86_64 32/42 Cleanup : system-release-2023.4.20240319-1.amzn2023.noarch 33/42 Cleanup : dnf-data-4.14.0-1.amzn2023.0.4.noarch 34/42 Cleanup : python3-3.9.16-1.amzn2023.0.6.x86_64 35/42 Cleanup : python3-libs-3.9.16-1.amzn2023.0.6.x86_64 36/42 Cleanup : openssl-libs-1:3.0.8-1.amzn2023.0.11.x86_64 37/42 Cleanup : libuuid-2.37.4-1.amzn2023.0.3.x86_64 38/42 Cleanup : expat-2.5.0-1.amzn2023.0.3.x86_64 39/42 Cleanup : glibc-2.34-52.amzn2023.0.8.x86_64 40/42 Cleanup : glibc-minimal-langpack-2.34-52.amzn2023.0.8.x86_64 41/42 Cleanup : glibc-common-2.34-52.amzn2023.0.8.x86_64 42/42 Running scriptlet: glibc-common-2.34-52.amzn2023.0.8.x86_64 42/42 Verifying : amazon-linux-repo-cdn-2023.5.20240708-1.amzn2023.no 1/42 Verifying : amazon-linux-repo-cdn-2023.4.20240319-1.amzn2023.no 2/42 Verifying : curl-minimal-8.5.0-1.amzn2023.0.4.x86_64 3/42 Verifying : curl-minimal-8.5.0-1.amzn2023.0.2.x86_64 4/42 Verifying : dnf-4.14.0-1.amzn2023.0.5.noarch 5/42 Verifying : dnf-4.14.0-1.amzn2023.0.4.noarch 6/42 Verifying : dnf-data-4.14.0-1.amzn2023.0.5.noarch 7/42 Verifying : dnf-data-4.14.0-1.amzn2023.0.4.noarch 8/42 Verifying : expat-2.5.0-1.amzn2023.0.4.x86_64 9/42 Verifying : expat-2.5.0-1.amzn2023.0.3.x86_64 10/42 Verifying : glibc-2.34-52.amzn2023.0.10.x86_64 11/42 Verifying : glibc-2.34-52.amzn2023.0.8.x86_64 12/42 Verifying : glibc-common-2.34-52.amzn2023.0.10.x86_64 13/42 Verifying : glibc-common-2.34-52.amzn2023.0.8.x86_64 14/42 Verifying : glibc-minimal-langpack-2.34-52.amzn2023.0.10.x86_64 15/42 Verifying : glibc-minimal-langpack-2.34-52.amzn2023.0.8.x86_64 16/42 Verifying : krb5-libs-1.21-3.amzn2023.0.4.x86_64 17/42 Verifying : krb5-libs-1.21-3.amzn2023.0.3.x86_64 18/42 Verifying : libblkid-2.37.4-1.amzn2023.0.4.x86_64 19/42 Verifying : libblkid-2.37.4-1.amzn2023.0.3.x86_64 20/42 Verifying : libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64 21/42 Verifying : libcurl-minimal-8.5.0-1.amzn2023.0.2.x86_64 22/42 Verifying : libmount-2.37.4-1.amzn2023.0.4.x86_64 23/42 Verifying : libmount-2.37.4-1.amzn2023.0.3.x86_64 24/42 Verifying : libnghttp2-1.59.0-3.amzn2023.0.1.x86_64 25/42 Verifying : libnghttp2-1.57.0-1.amzn2023.0.1.x86_64 26/42 Verifying : libsmartcols-2.37.4-1.amzn2023.0.4.x86_64 27/42 Verifying : libsmartcols-2.37.4-1.amzn2023.0.3.x86_64 28/42 Verifying : libuuid-2.37.4-1.amzn2023.0.4.x86_64 29/42 Verifying : libuuid-2.37.4-1.amzn2023.0.3.x86_64 30/42 Verifying : openssl-libs-1:3.0.8-1.amzn2023.0.12.x86_64 31/42 Verifying : openssl-libs-1:3.0.8-1.amzn2023.0.11.x86_64 32/42 Verifying : python3-3.9.16-1.amzn2023.0.8.x86_64 33/42 Verifying : python3-3.9.16-1.amzn2023.0.6.x86_64 34/42 Verifying : python3-dnf-4.14.0-1.amzn2023.0.5.noarch 35/42 Verifying : python3-dnf-4.14.0-1.amzn2023.0.4.noarch 36/42 Verifying : python3-libs-3.9.16-1.amzn2023.0.8.x86_64 37/42 Verifying : python3-libs-3.9.16-1.amzn2023.0.6.x86_64 38/42 Verifying : system-release-2023.5.20240708-1.amzn2023.noarch 39/42 Verifying : system-release-2023.4.20240319-1.amzn2023.noarch 40/42 Verifying : yum-4.14.0-1.amzn2023.0.5.noarch 41/42 Verifying : yum-4.14.0-1.amzn2023.0.4.noarch 42/42 Upgraded: amazon-linux-repo-cdn-2023.5.20240708-1.amzn2023.noarch curl-minimal-8.5.0-1.amzn2023.0.4.x86_64 dnf-4.14.0-1.amzn2023.0.5.noarch dnf-data-4.14.0-1.amzn2023.0.5.noarch expat-2.5.0-1.amzn2023.0.4.x86_64 glibc-2.34-52.amzn2023.0.10.x86_64 glibc-common-2.34-52.amzn2023.0.10.x86_64 glibc-minimal-langpack-2.34-52.amzn2023.0.10.x86_64 krb5-libs-1.21-3.amzn2023.0.4.x86_64 libblkid-2.37.4-1.amzn2023.0.4.x86_64 libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64 libmount-2.37.4-1.amzn2023.0.4.x86_64 libnghttp2-1.59.0-3.amzn2023.0.1.x86_64 libsmartcols-2.37.4-1.amzn2023.0.4.x86_64 libuuid-2.37.4-1.amzn2023.0.4.x86_64 openssl-libs-1:3.0.8-1.amzn2023.0.12.x86_64 python3-3.9.16-1.amzn2023.0.8.x86_64 python3-dnf-4.14.0-1.amzn2023.0.5.noarch python3-libs-3.9.16-1.amzn2023.0.8.x86_64 system-release-2023.5.20240708-1.amzn2023.noarch yum-4.14.0-1.amzn2023.0.5.noarch Complete! bash-5.2#

Para descobrir as atualizações do AL2023, execute um ou mais dos seguintes:

  • Execute o comando dnf check-update. Isso verifica se há atualizações não aplicadas na versão do Amazon Linux com a qual você tem vínculo. Isso pode mostrar atualizações se você atualizou apenas o pacote system-release, movendo a versão dos repositórios à qual a instância está vinculada, mas sem aplicar nenhuma das atualizações disponíveis nela.

  • Inscreva-se no tópico SNS de atualização do repositório Amazon Linux (arn:aws:sns:us-east-1:137112412989:amazon-linux-2023-ami-updates). Para obter instruções, consulte Assinatura de um tópico do Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.

  • Consulte regularmente as notas de lançamento do AL2023.

  • Descubra novas versões ao Verificar versões mais recentes do repositório com dnf check-release-update.

Importante

Novas versões do AL2023 contendo atualizações de segurança são lançadas com frequência. Fique por dentro dos patches de segurança relevantes.

Reinício automático do serviço após atualizações (de segurança)

O Amazon Linux agora é distribuído com o pacote smart-restart. Smart-restart reinicia os serviços de systemd nas atualizações do sistema sempre que um pacote é instalado ou excluído usando o gerenciador de pacotes do sistema. Isso ocorre sempre que dnf (update|upgrade|downgrade) é executado.

Smart-restart usa o pacote needs-restarting de dnf-utils e um mecanismo personalizado de lista de negações para determinar quais serviços precisam ser reiniciados e se a reinicialização do sistema é recomendada. Se uma reinicialização do sistema for recomendada, um arquivo marcador de dica de reinicialização será gerado (/run/smart-restart/reboot-hint-marker).

Para instalar smart-restart

Execute o comando de DNF a seguir (da mesma forma que você executaria em outros pacotes).

$ sudo dnf install smart-restart

Após a instalação, as transações subsequentes acionarão a lógica smart-restart.

Lista de negações

Smart-restart pode ser instruído a impedir que determinados serviços sejam reiniciados. Os serviços bloqueados não contribuirão para a decisão de necessidade de reinicialização. Para bloquear serviços adicionais, adicione um arquivo com o sufixo -denylist em /etc/smart-restart-conf.d/, conforme mostrado no exemplo a seguir.

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

Todos os arquivos *-denylist são lidos e avaliados ao decidir se uma reinicialização é necessária.

Hooks personalizados

Além da lista de negações, smart-restart fornece um mecanismo para executar scripts personalizados antes e depois das tentativas de reiniciar o serviço. Os scripts personalizados podem ser usados para executar manualmente as etapas de preparação ou para informar outros componentes sobre uma reinicialização pendente ou concluída.

Todos os scripts em /etc/smart-restart-conf.d/ com o sufixo -pre-restart ou -post-restart são executados. Se a ordem for importante, coloque um número antes de todos os scripts para garantir a ordem de execução, conforme mostrado no exemplo a seguir.

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

Quando é necessário reinicializar para aplicar as atualizações de segurança?

Em algumas situações, o Amazon Linux exige uma reinicialização para aplicar as atualizações:

  • As atualizações do pacote de kernel do Linux exigem uma reinicialização para ativar o novo kernel com as atualizações de segurança mais recentes. A aplicação de patches do kernel em tempo real pode permitir que você adie as atualizações de segurança por um período limitado. Para obter detalhes, consulte Aplicação de patches do kernel em tempo real no AL2023.

  • Em instâncias Metal do EC2, o Amazon Linux fornece atualizações de microcódigo (por meio do pacote microcode_ctl para CPUs Intel e do pacote amd-ucode-firmware para CPUs AMD). Essas atualizações de microcódigo só serão ativadas nas reinicializações subsequentes da instância. Para instâncias do EC2 virtualizadas, o AWS Nitro System lida com as atualizações de microcódigo para você.

  • Alguns serviços de systemd em execução só funcionarão corretamente após a reinicialização completa do sistema. O mecanismo smart-restart informará você sobre essas situações apresentando dicas de reinicialização. Consulte Reinício automático do serviço após atualizações (de segurança).

Lançamento de uma instância com a versão mais recente do repositório ativada

Você pode adicionar comandos DNF a um script de dados do usuário para controlar quais pacotes RPM são instalados em um Amazon Linux AMI quando ele é lançado. No exemplo a seguir, um script de dados de usuário é usado para garantir que qualquer instância iniciada com o script de dados de usuário tenha as mesmas atualizações de pacote instaladas.

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

Você deve executar esse script como superusuário (raiz). Para fazer isso, execute o comando a seguir.

$ sudo sh -c "bash nameofscript.sh"

Para obter mais informações, consulte Dados de usuário e scripts de shell no Guia do usuário do Amazon EC2.

nota

Em vez de usar um script de dados do usuário, inicie a Amazon Linux AMI mais recente ou uma AMI personalizada baseada na Amazon Linux AMI. O Amazon Linux AMI mais recente tem todas as atualizações necessárias instaladas e está configurado para apontar para uma versão específica do repositório.

Obtendo informações de suporte do pacote

O AL2023 incorpora muitos projetos diferentes de software de código aberto. Cada um desses projetos é gerenciado de forma independente do Amazon Linux e tem cronogramas diferentes de lançamento e fim de suporte. Para fornecer informações específicas do Amazon Linux sobre esses diferentes pacotes, o plug-in DNF supportinfo fornece metadados sobre um pacote. No exemplo a seguir, o comando dnf supportinfo retorna metadados para o pacote 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.

As informações de suporte a pacotes também estão disponíveis na seção de declarações de suporte em AL2023 Release Notes.

Verificar versões mais recentes do repositório com dnf check-release-update

Em uma instância do AL2023, você pode usar o utilitário DNF para gerenciar repositórios e aplicar pacotes RPM atualizados. Esses pacotes estão disponíveis nos repositórios do Amazon Linux. Você pode usar o comando dnf check-release-update do DNF para verificar novas versões do repositório DNF.

nota

Por padrão, as imagens de contêiner do AL2023 não incluem o comando dnf check-release-update.

$ dnf check-release-update No such command: check-release-update. Please use /usr/bin/dnf --help It could be a DNF plugin command, try: "dnf install 'dnf-command(check-release-update)'"

Quando dnf install 'dnf-command(check-release-update)' for executado, dnf instalará o pacote que fornece o comando check-release-update, que é o pacote dnf-plugin-release-notification. No exemplo abaixo, o argumento -q é fornecido a dnf para que ele tenha uma saída silenciosa.

$ dnf -y -q install 'dnf-command(check-release-update)' Installed: dnf-plugin-release-notification-1.2-1.amzn2023.0.2.noarch

Em ambientes sem contêineres, como uma instância do Amazon EC2, o comando check-release-update é incluído por padrão.

$ 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 upgrade --releasever=2023.0.20230210 Release notes: https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes.html

Isso retorna uma lista completa de todas as versões mais recentes dos repositórios DNF que estão disponíveis. Se nada for retornado, isso significa que DNF está atualmente configurado para usar a versão mais recente disponível. A versão do pacote system-release instalado atualmente define a variável releasever DNF. Para verificar a versão atual do repositório, execute o comando a seguir.

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

Quando você executa transações de pacotes DNF (como comandos de instalação, atualização ou remoção), uma mensagem de aviso o notifica sobre qualquer nova versão do repositório. Por exemplo, se você instalar o pacote httpd em uma instância que foi executada a partir de uma versão mais antiga do AL2023, a saída a seguir será retornada.

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

Adicionar, habilitar ou desabilitar novos repositórios

Atenção

Adicione somente repositórios projetados para serem usados com o AL2023.

Embora os repositórios projetados para outras distribuições possam funcionar atualmente, não há garantia de que continuarão funcionando com todas as atualizações de pacote no AL2023 ou com o repositório não projetado para uso com o AL2023.

Para instalar um pacote de um repositório diferente dos repositórios padrão do Amazon Linux, você precisará configurar o sistema de gerenciamento de pacotes DNF para saber onde está o repositório.

Para informar ao dnf sobre um repositório de pacotes, adicione as informações do repositório a um arquivo de configuração para esse repositório no diretório /etc/yum.repos.d/. Muitos repositórios de terceiros fornecem o conteúdo do arquivo de configuração ou um pacote instalável que inclui o arquivo de configuração.

nota

Embora os repositórios possam ser configurados diretamente no arquivo /etc/dnf/dnf.conf, isso não é recomendado. É recomendável que cada repositório seja configurado em seu próprio arquivo em /etc/yum.repos.d/.

Para descobrir quais repositórios estão atualmente habilitados, você pode executar o seguinte comando:

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

Se você não adicionar o sinalizador de opção --verbose, a saída incluirá somente as informações de Repo-id, Repo-name e Repo-status.

Para adicionar um repositório yum ao diretório /etc/yum.repos.d:

  1. Encontre a localização do arquivo .repo. Neste exemplo, o arquivo .repo está em https://www.example.com/repository.repo.

  2. Adicione um repositório com o comando 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

Após instalar um repositório, é necessário habilitá-lo como descrito no próximo procedimento.

Para habilitar um repositório yum em /etc/yum.repos.d, use o comando dnf config-manager com o sinalizador --enable e o nome do repositório.

$ sudo dnf config-manager --enable repository
nota

Para desativar um repositório, use a mesma sintaxe de comando, mas substitua --enable por --disable no comando.

Adicionando repositórios com cloud-init

Além de adicionar um repositório usando o método anterior, você também pode adicionar um novo repositório usando a estrutura de cloud-init.

Para adicionar um novo repositório de pacotes, recomendamos o uso do modelo a seguir. Considere salvar esse arquivo localmente.

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

Uma vantagem de usar cloud-init é que você pode adicionar uma seção de packages: ao seu arquivo de configuração. Nesta seção, você pode incluir os nomes dos pacotes que você deseja instalar. Você pode instalar pacotes do repositório padrão ou do novo repositório que você adicionou ao arquivo cloud-config.

Para obter informações mais específicas sobre a estrutura do arquivo YAML, consulte Adicionar um repositório YUM na Documentação do cloud-init.

Depois de configurar o arquivo no formato YAML, você pode executá-lo na estrutura do cloud-init na AWS CLI. Certifique-se de incluir a opção --userdata e o nome do arquivo .yml para chamar as operações desejadas.

$ 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