

Herramientas de AWS para PowerShell La V4 ha entrado en modo de mantenimiento.

Le recomendamos que migre a la [Herramientas de AWS para PowerShell V5](https://docs.aws.amazon.com/powershell/v5/userguide/). Para obtener información y detalles adicionales sobre cómo realizar la migración, consulta nuestro [anuncio sobre el modo de mantenimiento](https://aws.amazon.com/blogs/developer/aws-tools-for-powershell-v4-maintenance-mode-announcement/).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Instalación Herramientas de AWS para PowerShell en Linux o macOS
<a name="pstools-getting-set-up-linux-mac"></a>

En este tema se proporcionan instrucciones sobre cómo instalarlo Herramientas de AWS para PowerShell en Linux o macOS.

## Información general de la configuración
<a name="pstools-installing-core-prerequisites"></a>

Para instalarlo Herramientas de AWS para PowerShell en un ordenador Linux o macOS, puede elegir entre dos opciones de paquetes:
+ [**`AWS.Tools`**](#install-aws.tools-on-linux-macos)— La versión modularizada de. Herramientas de AWS para PowerShell Cada AWS servicio está respaldado por su propio módulo pequeño e individual, con módulos de soporte compartidos. `AWS.Tools.Common`
+ [**AWSPowerConcha. NetCore**](#install-netcore-on-linux-macos) — La versión única de módulos grandes de Herramientas de AWS para PowerShell. Todos los AWS servicios son compatibles con este módulo único y grande.
**nota**  
Tenga en cuenta que el módulo individual puede ser demasiado grande para usarlo con funciones de [AWS Lambda](https://aws.amazon.com/lambda/). En su lugar, utilice la versión modularizada que se muestra arriba.

 La configuración de cualquiera de estas versiones en un equipo con Linux o macOS implica las siguientes tareas, que se describen en detalle más adelante en este tema:

1. Instale PowerShell Core 6.0 o una versión posterior en un sistema compatible.

1. Tras instalar PowerShell Core, empiece PowerShell por ejecutarlo `pwsh` en el shell del sistema.

1. Instale uno de `AWS.Tools` ellos o AWSPower Shell. NetCore.

1. Ejecute el `Import-Module` cmdlet correspondiente para importar el módulo a la sesión PowerShell.

1. Ejecute el cmdlet [Initialize- AWSDefault Configuration](https://docs.aws.amazon.com/powershell/v4/reference/items/Initialize-AWSDefaultConfiguration.html) para proporcionar sus credenciales. AWS 

## Requisitos previos
<a name="prerequisites"></a>

Para ejecutarlo AWS Tools for PowerShell Core, su equipo debe ejecutar PowerShell Core 6.0 o una versión posterior. 
+ Para obtener una lista de las versiones de la plataforma Linux compatibles e información sobre cómo instalar la última versión de PowerShell en un equipo basado en Linux, consulte [Instalación PowerShell en Linux en el sitio web](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux) de Microsoft. Algunos sistemas operativos basados en Linux, como Arch, Kali y Raspbian, no se admiten oficialmente, pero reciben diversos grados de soporte de la comunidad.
+ Para obtener información sobre las versiones de macOS compatibles y sobre cómo instalar la última versión de PowerShell en macOS, consulta [Instalación PowerShell en macOS](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-macos) en el sitio web de Microsoft.

## Instalación de `AWS.Tools` en Linux o macOS
<a name="install-aws.tools-on-linux-macos"></a>

Puede instalar la versión modularizada de Herramientas de AWS para PowerShell en ordenadores que ejecuten PowerShell Core 6.0 o una versión posterior. Para obtener información acerca de cómo instalar PowerShell Core, consulte [Instalación de varias versiones de PowerShell](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell) en el PowerShell sitio web de Microsoft. 

Puede instalar `AWS.Tools` de tres maneras:
+ Utilizando los cmdlets del módulo `AWS.Tools.Installer`. Este módulo simplifica la instalación y la actualización de otros módulos de `AWS.Tools`. Como `AWS.Tools.Installer` necesita una versión actualizada de `PowerShellGet`, la descarga e instala automáticamente. Además, `AWS.Tools.Installer` mantiene automáticamente las versiones de tus módulos sincronizadas. Cuando se instala un módulo o se actualiza a una versión más reciente, los cmdlets de `AWS.Tools.Installer` actualizan automáticamente todos los demás módulos de `AWS.Tools` a la misma versión.

  Este método se describe en el siguiente procedimiento.
+ Descargando los módulos de `[AWS.Tools.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWS.Tools.zip)` y extrayéndolos en uno de los directorios del módulo. Para saber cuáles son los directorios del módulo, puede imprimir el valor de la variable `$Env:PSModulePath`.
+ Instalar cada módulo de servicio de la PowerShell Galería mediante el `Install-Module` cmdlet.

**Cómo instalar `AWS.Tools` en Linux o macOS con el módulo de `AWS.Tools.Installer`**

1. Inicie una sesión PowerShell básica ejecutando el siguiente comando.

   ```
   $ pwsh
   ```
**nota**  
Te recomendamos que *no* te postules PowerShell como administrador con permisos elevados, excepto cuando lo exija la tarea en cuestión. Esto puede suponer un riesgo para la seguridad y no se atiene al principio de privilegios mínimos.

1. Para instalar el paquete de varios módulos de `AWS.Tools` con el módulo `AWS.Tools.Installer`, ejecute el siguiente comando.

   ```
   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
   ```

   Si se le notifica que el repositorio no es de confianza, se le preguntará si desea realizar la instalación de todos modos. Introduzca **y** para PowerShell permitir la instalación del módulo. Para evitar que aparezca el mensaje e instalar el módulo sin confiar en el repositorio, puede ejecutar el siguiente comando.

   ```
   PS > Install-Module -Name AWS.Tools.Installer -Force
   ```

1. Ahora puede instalar el módulo para cada servicio que desee utilizar. Por ejemplo, el siguiente comando instala los módulos de Amazon EC2 y Amazon S3. Este comando también instala los módulos dependientes necesarios para que el módulo especificado funcione. Por ejemplo, cuando instala el primer módulo de servicio `AWS.Tools`, también se instala `AWS.Tools.Common`. Se trata de un módulo compartido que requieren todos los módulos AWS de servicio. También elimina las versiones anteriores de los módulos y actualiza otros módulos a la misma versión.

   ```
   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**  
El `Install-AWSToolsModule` cmdlet descarga todos los módulos solicitados del `PSRepository` nombre `PSGallery` ([https://www.powershellgallery.com/](https://www.powershellgallery.com/)) y considera el repositorio como una fuente de confianza. Utilice el comando `Get-PSRepository -Name PSGallery` para obtener más información sobre este repositorio de `PSRepository`.

   El comando anterior instala los módulos en los directorios predeterminados del sistema. Los directorios reales dependen de la distribución y la versión del sistema operativo y de la versión PowerShell que haya instalado. Por ejemplo, si instaló PowerShell 7 en un sistema similar a RHEL, lo más probable es que los módulos predeterminados estén ubicados en `/opt/microsoft/powershell/7/Modules` (o`$PSHOME/Modules`) y los módulos de usuario probablemente estén ubicados en. `~/.local/share/powershell/Modules` Para obtener más información, consulte [Instalar PowerShell en Linux](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-linux) en el PowerShell sitio web de Microsoft. Para ver dónde están instalados los módulos, ejecute el siguiente comando:

   ```
   PS > Get-Module -ListAvailable
   ```

   Para instalar otros módulos, ejecute comandos similares con los nombres de módulo correspondientes, tal y como se encuentra en la [PowerShell Galería](https://www.powershellgallery.com/packages?q=aws).

## Instale AWSPower Shell. NetCore en Linux o macOS
<a name="install-netcore-on-linux-macos"></a>

Para actualizar a una versión más reciente de AWSPower Shell. NetCore, siga las instrucciones que se indican en[Actualización del Herramientas de AWS para PowerShell en Linux o macOS](#pstools-updating-linux). Desinstale las versiones anteriores de AWSPower Shell. NetCore primero.

Puede instalar AWSPower Shell. NetCore de dos maneras:
+ Descargando el módulo de `[AWSPowerShell.NetCore.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWSPowerShell.NetCore.zip)` y extrayéndolo en uno de los directorios del módulo. Para saber cuáles son los directorios del módulo, puede imprimir el valor de la variable `$Env:PSModulePath`.
+ Instalación desde la PowerShell Galería mediante el `Install-Module` cmdlet tal y como se describe en el siguiente procedimiento.

**Para instalar AWSPower Shell. NetCore en Linux o macOS mediante el cmdlet Install-Module**

Inicie una sesión de PowerShell Core ejecutando el siguiente comando.

```
$ pwsh
```

**nota**  
Te recomendamos que *no* empieces PowerShell por correr `sudo pwsh` para correr PowerShell con derechos de administrador elevados. Esto puede suponer un riesgo para la seguridad y no se atiene al principio de privilegios mínimos.

Para instalar el AWSPower Shell. NetCore paquete de un solo módulo de la PowerShell Galería, ejecute el siguiente comando.

```
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
```

Si se le notifica que el repositorio no es de confianza, se le preguntará si desea realizar la instalación de todos modos. Introduzca **y** para PowerShell permitir la instalación del módulo. Para evitar que aparezca el mensaje que indica que el repositorio no es de confianza, puede ejecutar el siguiente comando.

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

No tiene que ejecutar este comando como root, a menos que desee instalarlo Herramientas de AWS para PowerShell para todos los usuarios de un equipo. Para ello, ejecute el siguiente comando en una PowerShell sesión con la que haya empezado`sudo pwsh`.

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

## Ejecución de scripts
<a name="enable-script-execution"></a>

El comando `Set-ExecutionPolicy` no está disponible en los sistemas que no son Windows. Puede ejecutar`Get-ExecutionPolicy`, lo que demuestra que la configuración de política de ejecución predeterminada en PowerShell Core que se ejecuta en sistemas que no son Windows es`Unrestricted`. Para obtener más información, vea [Acerca de las directivas de ejecución](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-5.1) en el sitio web de Microsoft Technet.

 Como `PSModulePath` incluye la ubicación del directorio del AWS módulo, el `Get-Module -ListAvailable` cmdlet muestra el módulo que ha 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…
```

**AWSPowerConcha. NetCore**

```
PS > Get-Module -ListAvailable

Directory: /Users/username/.local/share/powershell/Modules

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Binary     3.3.563.1  AWSPowerShell.NetCore
```

## Configure una PowerShell consola para usar el AWS Tools for PowerShell Core (AWSPowerShell). NetCore (Solo)
<a name="pstools-config-ps-window"></a>

PowerShell Por lo general, Core carga los módulos automáticamente cada vez que se ejecuta un cmdlet en el módulo. Pero esto no funciona para AWSPower Shell. NetCore debido a su gran tamaño. Para empezar a ejecutar AWSPower Shell. NetCore En los cmdlets, primero debe ejecutar el `Import-Module AWSPowerShell.NetCore` comando. Esto no es necesario en los cmdlets de los módulos `AWS.Tools`.

## Inicialice su sesión PowerShell
<a name="linux-config-init"></a>

Cuando inicie PowerShell en un sistema basado en Linux o macOS después de haber instalado el Herramientas de AWS para PowerShell, debe ejecutar [Initialize- AWSDefault Configuration](https://docs.aws.amazon.com/powershell/v4/reference/items/Initialize-AWSDefaultConfiguration.html) para especificar qué clave de acceso usar. AWS Para obtener más información acerca de `Initialize-AWSDefaultConfiguration`, consulte [Uso de AWS credenciales](specifying-your-aws-credentials.md).

**nota**  
En versiones anteriores (anteriores a la 3.3.96.0) del, este cmdlet recibía el nombre. Herramientas de AWS para PowerShell`Initialize-AWSDefaults`

## Control de versiones
<a name="pstools-versioning"></a>

AWS publica nuevas versiones del Herramientas de AWS para PowerShell periódicamente para admitir nuevos servicios y características. AWS Para determinar la versión Herramientas de AWS para PowerShell que ha instalado, ejecute el AWSPower ShellVersion cmdlet [Get-](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-AWSPowerShellVersion.html).

Por ejemplo:

```
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 una lista de los AWS servicios compatibles en la versión actual de las herramientas, agregue el `-ListServiceVersionInfo` parámetro a un cmdlet [Get- AWSPower ShellVersion](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-AWSPowerShellVersion.html).

Para determinar la versión PowerShell que está ejecutando, escriba `$PSVersionTable` para ver el contenido de la variable `$PSVersionTable` [automática](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-6).

Por ejemplo:

```
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
```

## Actualización del Herramientas de AWS para PowerShell en Linux o macOS
<a name="pstools-updating-linux"></a>

Periódicamente, a medida que Herramientas de AWS para PowerShell se publiquen versiones actualizadas del, debes actualizar la versión que estás ejecutando localmente. 

### Actualización de módulos de `AWS.Tools` modularizados
<a name="update-aws.tools-all-systems"></a>

Para actualizar los módulos `AWS.Tools` a la versión más reciente, ejecute el siguiente comando:

```
PS > Update-AWSToolsModule -CleanUp
```

Este comando actualiza todos los módulos `AWS.Tools` que hay instalados actualmente y, en los módulos que se actualizaron correctamente, elimina las versiones anteriores.

**nota**  
El `Update-AWSToolsModule` cmdlet descarga todos los módulos del `PSRepository` nombre `PSGallery` ([https://www.powershellgallery.com/](https://www.powershellgallery.com/)) y lo considera una fuente de confianza. Utilice el comando `Get-PSRepository -Name PSGallery` para obtener más información sobre este repositorio de `PSRepository`.

### Actualice las herramientas para Core PowerShell
<a name="update-netcore-all-systems"></a>

Ejecute el `Get-AWSPowerShellVersion` cmdlet para determinar la versión que está ejecutando y compárela con la versión de Tools para Windows PowerShell que está disponible en el sitio web de [PowerShell Gallery](https://www.powershellgallery.com/packages/AWSPowerShell). Le sugerimos que revise cada dos o tres semanas. Support para nuevos comandos y AWS servicios solo está disponible después de actualizar a una versión con ese soporte.

Antes de instalar una versión más reciente de AWSPower Shell. NetCore, desinstale el módulo existente. Cierre todas PowerShell las sesiones abiertas antes de desinstalar el paquete existente. Ejecute el siguiente comando para desinstalar el paquete.

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

Cuando se haya completado la desinstalación del paquete, instale el módulo actualizado ejecutando el siguiente comando.

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

Tras la instalación, ejecute el comando `Import-Module AWSPowerShell.NetCore` para cargar los cmdlets actualizados en la sesión PowerShell .

## Información relacionada
<a name="pstools-seealso-setup"></a>
+  [Comenzar a utilizar AWS SDK for JavaScript AWS Tools for Windows PowerShell](pstools-getting-started.md) 
+  [Trabaje con AWS los servicios del Herramientas de AWS para PowerShell](pstools-using.md) 