Instalar o Ferramentas da AWS para PowerShell no Linux ou no macOS - Ferramentas da AWS para PowerShell (versão 4)

A versão 5 (V5) do Ferramentas da AWS para PowerShell foi lançada!

Para começar a usar a nova versão do SDK, consulte o Guia do usuário do Ferramentas da AWS para PowerShell (V5), especialmente o tópico Migração para V5.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Instalar o Ferramentas da AWS para PowerShell no Linux ou no macOS

Este tópico fornece instruções sobre como instalar o Ferramentas da AWS para PowerShell no Linux ou no macOS.

Visão geral da configuração

Para instalar o Ferramentas da AWS para PowerShell em um computador Linux ou macOS, você poderá escolher entre duas opções de pacote:

  • AWS.Tools: a versão modularizada do Ferramentas da AWS para PowerShell. Cada serviço da AWS é compatível com seu próprio módulo individual pequeno, com módulos compatíveis compartilhados AWS.Tools.Common.

  • AWSPowerShell.NetCore: a versão de módulo único do Ferramentas da AWS para PowerShell. Todos os serviços da AWS são compatíveis com esse único módulo grande.

    nota

    Esteja ciente de que o módulo único pode ser muito grande para ser usado com funções AWS Lambda. Em vez disso, use a versão modularizada mostrada acima.

A respectiva configuração em um computador com Linux ou macOS envolve as seguintes tarefas, descritas em detalhes posteriormente nesse tópico:

  1. Instale o PowerShell Core 6.0 ou posterior em um sistema compatível.

  2. Após instalar o PowerShell Core, inicie o PowerShell ao executar o pwsh no shell do sistema.

  3. Instale o AWS.Tools ou o AWSPowerShell.NetCore.

  4. Execute o cmdlet Import-Module apropriado para importar o módulo para a sessão do PowerShell.

  5. Execute o cmdlet Initialize-AWSDefaultConfiguration para fornecer suas credenciais da AWS.

Pré-requisitos

Para executar o AWS Tools for PowerShell Core, o seu computador deve estar executando o PowerShell Core 6.0 ou posterior.

  • Para obter uma lista das versões de plataformas Linux compatíveis e para obter informações sobre como instalar a versão mais recente do PowerShell em um computador baseado em Linux, consulte Instalação do PowerShell no Linux no site da Microsoft. Alguns sistemas operacionais baseados em Linux, como Arch, Kali e Raspbian, não são oficialmente compatíveis, mas têm níveis variáveis de suporte da comunidade.

  • Para obter uma lista de versões compatíveis do macOS e informações sobre como instalar o a versão mais recente do PowerShell no macOS, consulte Instalação do PowerShell no macOS no site da Microsoft.

Instalar o AWS.Tools no Linux ou no macOS

É possível instalar a versão modularizada do Ferramentas da AWS para PowerShell nos computadores que executam o PowerShell Core 6.0 ou posterior. Para obter informações sobre como instalar o PowerShell Core, consulte Instalar várias versões do PowerShell no site do Microsoft PowerShell.

Você pode instalar o AWS.Tools de três maneiras:

  • Usando os cmdlets do módulo AWS.Tools.Installer. Este módulo AWS.Tools simplifica a instalação e a atualização de outros módulos. O AWS.Tools.Installer exige PowerShellGet, e automaticamente baixa e instala uma versão atualizada dele. O AWS.Tools.Installer mantém automaticamente as versões do módulo sincronizadas. Quando você instala ou atualiza para uma nova versão de um módulo, os cmdlets em AWS.Tools.Installer atualizam automaticamente todos os outros módulos AWS.Tools para a mesma versão.

    Esse método está descrito no procedimento a seguir.

  • Download dos módulos de AWS.Tools.zip e extração em um dos diretórios do módulo. Você pode descobrir seus diretórios de módulo imprimindo o valor da variável $Env:PSModulePath.

  • Instalação de cada módulo de serviço na Galeria do PowerShell usando o cmdlet Install-Module.

Para instalar AWS.Tools no Linux ou no macOS usando o módulo AWS.Tools.Installer
  1. Inicie uma sessão do PowerShell Core executando o comando a seguir.

    $ pwsh
    nota

    Recomendamos que você não execute o PowerShell como um administrador com permissões elevadas, exceto quando for exigido pela tarefa m questão. Isso se deve ao risco potencial de segurança e é consistente com o princípio do privilégio mínimo.

  2. Para instalar o pacote AWS.Tools modularizado usando o módulo AWS.Tools.Installer, execute o comando a seguir.

    PS > Install-Module -Name AWS.Tools.Installer Untrusted repository You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): y

    Se você for notificado de que o repositório é "não confiável", você será solicitado a confirmar se deseja prosseguir com a instalação. Digite y para permitir que o PowerShell instale o módulo. Para evitar o prompt e instalar o módulo sem confiar no repositório, você pode executar o comando a seguir.

    PS > Install-Module -Name AWS.Tools.Installer -Force
  3. Agora você pode instalar o módulo para cada serviço que deseja usar. Por exemplo, o comando a seguir instala os módulos do Amazon EC2 e do Amazon S3. Esse comando também instala todos os módulos dependentes que são exigidos para que o módulo especificado funcione. Por exemplo, ao instalar o primeiro módulo do serviço AWS.Tools, ele também instala AWS.Tools.Common. Esse é um módulo compartilhado exigido por todos os módulos de serviço da AWS. Ele também remove as versões mais antigas dos módulos e atualiza outros módulos para a mesma versão mais recente.

    PS > Install-AWSToolsModule AWS.Tools.EC2,AWS.Tools.S3 -CleanUp Confirm Are you sure you want to perform this action? Performing the operation "Install-AWSToolsModule" on target "AWS Tools version 4.0.0.0". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Installing module AWS.Tools.Common version 4.0.0.0 Installing module AWS.Tools.EC2 version 4.0.0.0 Installing module AWS.Tools.Glacier version 4.0.0.0 Installing module AWS.Tools.S3 version 4.0.0.0 Uninstalling AWS.Tools version 3.3.618.0 Uninstalling module AWS.Tools.Glacier Uninstalling module AWS.Tools.S3 Uninstalling module AWS.Tools.SimpleNotificationService Uninstalling module AWS.Tools.SQS Uninstalling module AWS.Tools.Common
    nota

    O cmdlet Install-AWSToolsModule faz download de todos os módulos solicitados do PSRepository chamado PSGallery (https://www.powershellgallery.com/) e considera o repositório como uma fonte confiável. Use o comando Get-PSRepository -Name PSGallery para obter mais informações sobre esse PSRepository.

    O comando anterior instala os módulos nos diretórios-padrão do seu sistema. Os diretórios reais dependem da distribuição e da versão do sistema operacional e da versão do PowerShell que você instalou. Por exemplo, se você instalou o PowerShell 7 em um sistema semelhante ao RHEL, os módulos-padrão provavelmente estão localizados em /opt/microsoft/powershell/7/Modules (ou $PSHOME/Modules) e os módulos de usuário provavelmente estão localizados em ~/.local/share/powershell/Modules. Para obter mais informações, consulte Instalar o PowerShell no Linux no site do Microsoft PowerShell. Para ver onde os módulos estão instalados, execute o seguinte comando:

    PS > Get-Module -ListAvailable

    Para instalar outros módulos, execute comandos semelhantes com os nomes de módulo apropriados, conforme encontrado em PowerShell Gallery.

Instalar o AWSPowerShell.NetCore no Linux ou macOS

Para atualizar para uma versão mais recente do AWSPowerShell.NetCore, siga as instruções em Atualizar o Ferramentas da AWS para PowerShell no Linux ou no macOS. Desinstale as versões anteriores do AWSPowerShell.NetCore primeiro.

É possível instalar o AWSPowerShell.NetCore de uma duas formas:

  • Download do módulo de AWSPowerShell.NetCore.zip e extração em um dos diretórios do módulo. Você pode descobrir seus diretórios de módulo imprimindo o valor da variável $Env:PSModulePath.

  • Instalando a partir da Galeria do PowerShell usando o cmdlet Install-Module conforme descrito no procedimento a seguir.

Como instalar o AWSPowerShell.NetCore no Linux ou no macOS usando o cmdlet Install-Module

Inicie uma sessão do PowerShell Core executando o comando a seguir.

$ pwsh
nota

Recomendamos que você não inicie o PowerShell executando sudo pwsh para executar o PowerShell com direitos de administrador elevados. Isso se deve ao risco potencial de segurança e é consistente com o princípio do privilégio mínimo.

Para instalar o pacote AWSPowerShell.NetCore de módulo único a partir da Galeria do PowerShell, execute o comando a seguir.

PS > Install-Module -Name AWSPowerShell.NetCore Untrusted repository You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): y

Se você for notificado de que o repositório é "não confiável", você será solicitado a confirmar se deseja prosseguir com a instalação. Digite y para permitir que o PowerShell instale o módulo. Para evitar o prompt sem confiar no repositório, você pode executar o comando a seguir.

PS > Install-Module -Name AWSPowerShell.NetCore -Force

Não é necessário executar esse comando como raiz, a menos que você queira instalar o Ferramentas da AWS para PowerShell para todos os usuários de um computador. Para fazer isso, execute o comando a seguir em uma sessão do PowerShell que você iniciou com : sudo pwsh.

PS > Install-Module -Scope AllUsers -Name AWSPowerShell.NetCore -Force

Execução do script

O comando Set-ExecutionPolicy não está disponível em sistemas que não sejam Windows. Você pode executar Get-ExecutionPolicy, o qual mostra que a configuração da política de execução padrão no PowerShell Core em execução em sistemas que não sejam Windows é Unrestricted. Para obter mais informações, consulte About Execution Policies no site da Microsoft Technet.

Como o PSModulePath inclui o local do diretório do módulo da AWS, o cmdlet Get-Module -ListAvailable exibe o módulo instalado.

AWS.Tools

PS > Get-Module -ListAvailable Directory: /Users/username/.local/share/powershell/Modules ModuleType Version Name PSEdition ExportedCommands ---------- ------- ---- --------- ---------------- Binary 3.3.563.1 AWS.Tools.Common Desk {Clear-AWSHistory, Set-AWSHistoryConfiguration, Initialize-AWSDefaultConfiguration, Clear-AWSDefaultConfigurat…

AWSPowerShell.NetCore

PS > Get-Module -ListAvailable Directory: /Users/username/.local/share/powershell/Modules ModuleType Version Name ExportedCommands ---------- ------- ---- ---------------- Binary 3.3.563.1 AWSPowerShell.NetCore

Configurar um console do PowerShell para usar o AWS Tools for PowerShell Core (somente AWSPowerShell.NetCore)

O PowerShell Core normalmente carrega módulos automaticamente sempre que você executa um cmdlet no módulo. Mas isso não funciona para o AWSPowerShell.NetCore devido ao seu tamanho grande. Para começar a executar os cmdlets do AWSPowerShell.NetCore, é necessário executar primeiro o comando Import-Module AWSPowerShell.NetCore. Isso não é necessário para cmdlets nos módulos do AWS.Tools.

Inicializar a sessão do PowerShell

Quando você inicia o PowerShell em um sistema baseado em Linux ou macOS após ter instalado o Ferramentas da AWS para PowerShell, é necessário executar Initialize-AWSDefaultConfiguration para especificar qual chave de acesso da AWS deve ser usada. Para obter mais informações sobre o Initialize-AWSDefaultConfiguration, consulte Usar credenciais da AWS.

nota

Em versões mais antigas (anteriores a 3.3.96.0) do Ferramentas da AWS para PowerShell, esse cmdlet era chamado de Initialize-AWSDefaults.

Versionamento

A AWS lança novas versões do Ferramentas da AWS para PowerShell periodicamente para oferecer suporte a novos produtos e recursos da AWS. Para determinar a versão do Ferramentas da AWS para PowerShell que você instalou, execute o cmdlet Get-AWSPowerShellVersion.

Por exemplo:

PS > Get-AWSPowerShellVersion AWS Tools for PowerShell Version 4.1.849 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. Amazon Web Services SDK for .NET Core Runtime Version 3.7.402.75 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. Release notes: https://github.com/aws/aws-tools-for-powershell/blob/v4.1/changelogs/CHANGELOG.ALL.md This software includes third party software subject to the following copyrights: - Logging from log4net, Apache License [http://logging.apache.org/log4net/license.html]

Para ver uma lista dos serviços da AWS compatíveis com a versão atual das ferramentas, adicione o parâmetro -ListServiceVersionInfo a um cmdlet Get-AWSPowerShellVersion.

Para determinar a versão do PowerShell que você está executando, insira $PSVersionTable para visualizar o conteúdo da variável automática $PSVersionTable.

Por exemplo:

PS > $PSVersionTable Name Value ---- ----- PSVersion 6.2.2 PSEdition Core GitCommitId 6.2.2 OS Darwin 18.7.0 Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT 2019; root:xnu-4903.271.2~2/RELEASE_X86_64 Platform Unix PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…} PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 WSManStackVersion 3.0

Atualizar o Ferramentas da AWS para PowerShell no Linux ou no macOS

Periodicamente, à medida que versões atualizadas do Ferramentas da AWS para PowerShell são lançadas, você deve atualizar a versão que está sendo executada localmente.

Atualizar os módulos AWS.Tools modularizados

A fim de atualizar os módulos AWS.Tools para a versão mais recente, execute o seguinte comando:

PS > Update-AWSToolsModule -CleanUp

Esse comando atualiza todos os módulos AWS.Tools instalados atualmente e, para os módulos que foram atualizados com êxito, remove as versões anteriores.

nota

O cmdlet Update-AWSToolsModule faz download de todos os módulos do PSRepository chamado PSGallery (https://www.powershellgallery.com/) e o considera como uma fonte confiável. Use o comando Get-PSRepository -Name PSGallery para obter mais informações sobre esse PSRepository.

Atualizar o Tools for PowerShell Core

Execute o cmdlet Get-AWSPowerShellVersion para determinar a versão que você está executando e compará-la com a versão do Tools for Windows PowerShell que está disponível no site Galeria do PowerShell. Sugerimos verificar a cada duas ou três semanas. O suporte para novos comandos e produtos da AWS estará disponível somente após a atualização para uma versão com esse suporte.

Antes de instalar uma versão mais recente do AWSPowerShell.NetCore, desinstale o módulo existente. Feche todas as sessões do PowerShell antes de desinstalar o pacote existente. Execute o seguinte comando para desinstalar o pacote.

PS > Uninstall-Module -Name AWSPowerShell.NetCore -AllVersions

Depois de desinstalar o pacote, instale o módulo atualizado executando o comando a seguir.

PS > Install-Module -Name AWSPowerShell.NetCore

Após a instalação, execute o comando Import-Module AWSPowerShell.NetCore para carregar os cmdlets atualizados na sessão do PowerShell.

Informações relacionadas