

AWS Tools for PowerShell V4가 유지 관리 모드로 전환되었습니다.

[AWS Tools for PowerShell V5](https://docs.aws.amazon.com/powershell/v5/userguide/)로 마이그레이션하는 것이 좋습니다. 마이그레이션 방법에 대한 자세한 내용과 정보는 [유지 관리 모드 공지](https://aws.amazon.com/blogs/developer/aws-tools-for-powershell-v4-maintenance-mode-announcement/)를 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Linux 또는 macOS AWS Tools for PowerShell 에 설치
<a name="pstools-getting-set-up-linux-mac"></a>

이 주제에서는 Linux 또는 macOS에를 설치하는 방법에 AWS Tools for PowerShell 대한 지침을 제공합니다.

## 설정 개요
<a name="pstools-installing-core-prerequisites"></a>

Linux 또는 macOS 컴퓨터에 AWS Tools for PowerShell 를 설치하려면 다음 두 가지 패키지 옵션 중에서 선택할 수 있습니다.
+ [**`AWS.Tools`**](#install-aws.tools-on-linux-macos) - 모듈화된 버전입니다 AWS Tools for PowerShell. 각 AWS 서비스는 공유 지원 모듈와 함께 자체 개별 소형 모듈에서 지원됩니다`AWS.Tools.Common`.
+ [**AWSPowerShell.NetCore**](#install-netcore-on-linux-macos) -의 단일 대형 모듈 버전입니다 AWS Tools for PowerShell. 모든 AWS 서비스는이 단일 대형 모듈에서 지원됩니다.
**참고**  
단일 모듈이 너무 커서 [AWS Lambda](https://aws.amazon.com/lambda/) 함수와 함께 사용하지 못할 수 있다는 점에 유의하세요. 대신 위에 나온 모듈화된 버전을 사용합니다.

 Linux 또는 macOS를 실행하는 컴퓨터에서 이러한 작업을 설정하려면 다음 작업이 필요합니다(이 항목의 뒷부분에 자세히 설명).

1. 지원되는 시스템에 PowerShell Core 6.0 이상을 설치합니다.

1. PowerShell Core를 설치한 후 시스템 셸에서 `pwsh`를 실행하여 PowerShell을 시작합니다.

1. `AWS.Tools` 또는 AWSPowerShell.NetCore 중 하나를 설치합니다.

1. 적절한 `Import-Module` cmdlet을 실행하여 모듈을 PowerShell 세션으로 가져옵니다.

1. [Initialize-AWSDefaultConfiguration](https://docs.aws.amazon.com/powershell/v4/reference/items/Initialize-AWSDefaultConfiguration.html) cmdlet을 실행하여 AWS 자격 증명을 제공합니다.

## 사전 조건
<a name="prerequisites"></a>

를 실행하려면 AWS Tools for PowerShell Core컴퓨터에서 PowerShell Core 6.0 이상을 실행해야 합니다.
+ 지원되는 Linux 플랫폼 목록 및 Linux 기반 컴퓨터에 PowerShell 최신 버전을 설치하는 방법에 대한 자세한 내용은 Microsoft 웹 사이트의 [Linux에 PowerShell 설치](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux)를 참조하세요. Arch, Kali, Raspbian 등과 같은 Linux 기반의 일부 운영 체제는 공식적으로 지원되지 않지만 다양한 수준의 커뮤니티 지원이 이루어지고 있습니다.
+ 지원되는 macOS 버전 및 macOS에 PowerShell 최신 버전을 설치하는 방법에 대한 자세한 내용은 Microsoft 웹 사이트의 [macOS에 PowerShell 설치](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-macos)를 참조하세요.

## Linux 또는 macOS에 `AWS.Tools` 설치
<a name="install-aws.tools-on-linux-macos"></a>

PowerShell Core 6.0 이상을 실행하는 AWS Tools for PowerShell 컴퓨터에 모듈화된 버전의를 설치할 수 있습니다. PowerShell Core 설치 방법에 대한 자세한 내용은 Microsoft PowerShell 웹 사이트의 [다양한 버전의 PowerShell 설치](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell)를 참조하십시오.

다음 세 가지 방법 중 하나로 `AWS.Tools`를 설치할 수 있습니다.
+ `AWS.Tools.Installer` 모듈에서 cmdlet을 사용합니다. 이 모듈은 다른 `AWS.Tools` 모듈의 설치 및 업데이트를 간소화합니다. `AWS.Tools.Installer`는 `PowerShellGet`의 업데이트된 버전을 요청하고 이 버전을 자동으로 다운로드하고 설치합니다. `AWS.Tools.Installer`는 자동으로 모듈 버전의 동기화를 유지합니다. 한 모듈의 최신 버전을 설치하거나 업데이트하면 `AWS.Tools.Installer`의 cmdlet은 다른 모든 `AWS.Tools` 모듈을 동일한 버전으로 자동으로 업데이트합니다.

  이 방법은 다음 절차에 설명되어 있습니다.
+ `[AWS.Tools.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWS.Tools.zip)`에서 모듈을 다운로드하고 모듈 디렉터리 중 하나에 압축을 해제합니다. `$Env:PSModulePath` 변수의 값을 인쇄하여 모듈 디렉터리를 찾을 수 있습니다.
+ `Install-Module` cmdlet을 사용하여 PowerShell Gallery에서 각 서비스 모듈을 설치합니다.

**`AWS.Tools.Installer` 모듈을 사용하여 Linux 또는 macOS에 `AWS.Tools`를 설치하려면**

1. 다음 명령을 실행하여 PowerShell Core 세션을 시작합니다.

   ```
   $ pwsh
   ```
**참고**  
수행해야 하는 작업에서 요구하는 경우를 제외하고 승격된 권한을 가진 관리자로 PowerShell을 *실행하지 않는* 것이 좋습니다. 이는 잠재적 보안 위험 때문이며 최소 권한의 원칙과 일치하지 않습니다.

1. `AWS.Tools.Installer` 모듈을 사용하여 모듈화된 `AWS.Tools` 패키지를 설치하려면 다음 명령을 실행합니다.

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

   저장소가 ‘신뢰할 수 없음’이라는 알림이 표시되면 어쨌든 설치를 원하는지 묻는 메시지가 표시됩니다. PowerShell에서 모듈을 설치할 수 있도록 하려면 **y**를 입력합니다. 메시지가 표시되지 않도록 하고 저장소를 신뢰하지 않은 상태에서 모듈을 설치하려면 다음 명령을 실행할 수 있습니다.

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

1. 이제 사용하려는 각 서비스에 대해 모듈을 설치할 수 있습니다. 예를 들어 다음 명령은 Amazon EC2 및 Amazon S3 모듈을 설치합니다. 이 명령은 지정된 모듈이 작동하는 데 필요한 모든 종속 모듈도 설치합니다. 예를 들어 첫 번째 `AWS.Tools` 서비스 모듈을 설치하면 `AWS.Tools.Common`도 설치됩니다. 이는 모든 AWS 서비스 모듈에 필요한 공유 모듈입니다. 또한 이전 버전의 모듈을 제거하고 다른 모듈을 동일한 최신 버전으로 업데이트합니다.

   ```
   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
   ```
**참고**  
이 `Install-AWSToolsModule` cmdlet은 이름이 `PSRepository`인 `PSGallery`([https://www.powershellgallery.com/](https://www.powershellgallery.com/))에서 요청된 모든 모듈을 다운로드하고 해당 리포지토리를 신뢰할 수 있는 소스로 간주합니다. `Get-PSRepository -Name PSGallery` 명령을 사용하여 이 `PSRepository`에 대해 자세히 알아볼 수 있습니다.

   이전 명령은 모듈을 시스템의 기본 디렉터리에 설치합니다. 실제 디렉터리는 운영 체제 배포판 및 버전과 설치한 PowerShell 버전에 따라 달라집니다. 예를 들어, RHEL과 유사한 시스템에 PowerShell 7을 설치한 경우 기본 모듈은 `/opt/microsoft/powershell/7/Modules`(또는 `$PSHOME/Modules`)에 있고 사용자 모듈은 대부분 `~/.local/share/powershell/Modules`에 있습니다. 자세한 내용은 Microsoft PowerShell 웹 사이트의 [Install PowerShell on Linux](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-linux)를 참조하세요. 모듈이 설치된 위치를 확인하려면 다음 명령을 실행합니다.

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

   다른 모듈을 설치하려면 [PowerShell Gallery](https://www.powershellgallery.com/packages?q=aws)에 있는 것과 같이 적절한 모듈 이름을 사용하여 유사한 명령을 실행합니다.

## Linux 또는 macOS에 AWSPowerShell.NetCore 설치
<a name="install-netcore-on-linux-macos"></a>

AWSPowerShell.NetCore의 최신 릴리스로 업그레이드하려면 [Linux 또는 macOS AWS Tools for PowerShell 에서 업데이트](#pstools-updating-linux)의 지침을 따릅니다. 먼저 이전 버전의 AWSPowerShell.NetCore를 제거합니다.

AwspowerShell.NetCore는 두 가지 방법 중에 선택해서 설치할 수 있습니다.
+ `[AWSPowerShell.NetCore.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWSPowerShell.NetCore.zip)`에서 모듈을 다운로드하고 모듈 디렉터리 중 하나에 압축을 해제합니다. `$Env:PSModulePath` 변수의 값을 인쇄하여 모듈 디렉터리를 찾을 수 있습니다.
+ 다음 절차에 설명된 대로 `Install-Module` cmdlet을 사용하여 PowerShell Gallery에서 설치합니다.

**Install-Module cmdlet을 사용하여 Linux 또는 macOS에 AWSPowerShell.NetCore를 설치하려면**

다음 명령을 실행하여 PowerShell Core 세션을 시작합니다.

```
$ pwsh
```

**참고**  
승격된 관리자 권한으로 PowerShell 실행하기 위해 `sudo pwsh`를 실행해서 PowerShell을 *시작하지는 마십시오*. 이는 잠재적 보안 위험 때문이며 최소 권한의 원칙과 일치하지 않습니다.

PowerShell Gallery에서 AWSPowerShell.NetCore 단일 모듈 패키지를 설치하려면 다음 명령을 실행합니다.

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

저장소가 ‘신뢰할 수 없음’이라는 알림이 표시되면 어쨌든 설치를 원하는지 묻는 메시지가 표시됩니다. PowerShell에서 모듈을 설치할 수 있도록 하려면 **y**를 입력합니다. 저장소를 신뢰하지 않은 상태에서 메시지가 표시되지 않도록 하려면 다음 명령을 실행할 수 있습니다.

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

컴퓨터의 모든 사용자 AWS Tools for PowerShell 에 대해를 설치하지 않는 한이 명령을 루트로 실행할 필요가 없습니다. 이렇게 하려면 `sudo pwsh`에서 시작한 PowerShell 세션에서 다음 명령을 실행합니다.

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

## 스크립트 실행
<a name="enable-script-execution"></a>

이 `Set-ExecutionPolicy` 명령은 Windows 이외의 시스템에서는 사용할 수 없습니다. `Get-ExecutionPolicy`를 실행할 수 있으며, 이는 Windows 기반이 아닌 시스템에서 실행하는 PowerShell Core의 기본 실행 정책이 `Unrestricted`임을 보여줍니다. 자세한 내용은 Microsoft Technet 웹 사이트의 [실행 정책 소개](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-5.1)를 참조하십시오.

 에는 AWS 모듈 디렉터리의 위치가 `PSModulePath` 포함되어 있으므로 `Get-Module -ListAvailable` cmdlet에는 설치한 모듈이 표시됩니다.

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

## 를 사용하도록 PowerShell 콘솔 구성 AWS Tools for PowerShell Core (AWSPowerShell.NetCore만 해당)
<a name="pstools-config-ps-window"></a>

PowerShell Core는 일반적으로 모듈에서 cmdlet을 실행할 때마다 모듈을 자동으로 로드합니다. 그러나 이것은 크기가 큰 AWSPowerShell.NetCore에서는 효과적이지 않습니다. AWSPowerShell.NetCore cmdlet 실행을 시작하려면 먼저 `Import-Module AWSPowerShell.NetCore` 명령을 실행해야 합니다. 이는 `AWS.Tools` 모듈의 cmdlet에서는 필요하지 않습니다.

## PowerShell 세션 초기화
<a name="linux-config-init"></a>

를 설치한 후 Linux 기반 또는 macOS 기반 시스템에서 PowerShell을 시작하는 AWS Tools for PowerShell경우 [Initialize-AWSDefaultConfiguration](https://docs.aws.amazon.com/powershell/v4/reference/items/Initialize-AWSDefaultConfiguration.html)을 실행하여 사용할 AWS 액세스 키를 지정해야 합니다. `Initialize-AWSDefaultConfiguration`에 대한 자세한 정보는 [AWS 자격 증명 사용](specifying-your-aws-credentials.md) 섹션을 참조하세요.

**참고**  
의 이전(3.3.96.0 이전) 릴리스에서는 AWS Tools for PowerShell이 cmdlet의 이름이 로 지정되었습니다`Initialize-AWSDefaults`.

## 버전 관리
<a name="pstools-versioning"></a>

AWS 는 새로운 AWS 서비스와 기능을 지원하기 위해의 새 버전을 AWS Tools for PowerShell 정기적으로 릴리스합니다. 설치 AWS Tools for PowerShell 한의 버전을 확인하려면 [Get-AWSPowerShellVersion](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-AWSPowerShellVersion.html) cmdlet을 실행합니다.

예제:

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

현재 버전의 도구에서 지원되는 AWS 서비스 목록을 보려면 [Get-AWSPowerShellVersion](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-AWSPowerShellVersion.html) cmdlet에 `-ListServiceVersionInfo` 파라미터를 추가합니다.

실행 중인 PowerShell 버전을 확인하려면 `$PSVersionTable`을 입력하여 `$PSVersionTable` [자동 변수](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-6)의 내용을 봅니다.

예제:

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

## Linux 또는 macOS AWS Tools for PowerShell 에서 업데이트
<a name="pstools-updating-linux"></a>

정기적으로의 업데이트된 버전이 AWS Tools for PowerShell 릴리스되면 로컬에서 실행 중인 버전을 업데이트해야 합니다.

### 모듈화된 `AWS.Tools` 모듈 업데이트
<a name="update-aws.tools-all-systems"></a>

`AWS.Tools` 모듈을 최신 버전으로 업그레이드하려면 다음 명령을 실행합니다.

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

이 명령은 현재 설치된 모든 `AWS.Tools` 모듈을 업데이트하고 성공적으로 업데이트된 모듈에 대해서는 이전 버전을 제거합니다.

**참고**  
이 `Update-AWSToolsModule` cmdlet은 이름이 `PSRepository`인 `PSGallery`([https://www.powershellgallery.com/](https://www.powershellgallery.com/))의 모든 모듈을 다운로드하고 신뢰할 수 있는 소스로 간주합니다. `Get-PSRepository -Name PSGallery` 명령을 사용하여 이 `PSRepository`에 대해 자세히 알아볼 수 있습니다.

### Tools for PowerShell Core 업데이트
<a name="update-netcore-all-systems"></a>

`Get-AWSPowerShellVersion` cmdlet을 실행하여 실행 중인 버전을 확인한 후, [PowerShell Gallery](https://www.powershellgallery.com/packages/AWSPowerShell) 웹 사이트에서 제공하는 Tools for Windows PowerShell 버전과 비교합니다. 2\$13주마다 확인하는 것이 좋습니다. 새 명령 및 AWS 서비스에 대한 지원은 해당 지원이 포함된 버전으로 업데이트한 후에만 사용할 수 있습니다.

AWSPowerShell.NetCore의 새 릴리스를 설치하기 전에 기존 모듈을 제거합니다. 기존 패키지를 제거하기 전에 열려 있는 PowerShell 세션을 모두 닫습니다. 다음 명령을 실행하여 패키지를 제거합니다.

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

패키지를 제거한 후 다음 명령을 실행하여 업데이트 된 모듈을 설치합니다.

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

설치 후 `Import-Module AWSPowerShell.NetCore` 명령을 실행하여 업데이트된 cmdlet을 PowerShell 세션에 로드합니다.

## 관련 정보
<a name="pstools-seealso-setup"></a>
+  [AWS Tools for Windows PowerShell 시작](pstools-getting-started.md) 
+  [에서 AWS 서비스 작업 AWS Tools for PowerShell](pstools-using.md) 