Linux または MacOS での AWS Tools for PowerShell のインストール - AWS Tools for PowerShell (バージョン 4)

のバージョン 5 (V5) AWS Tools for PowerShell がリリースされました。

新しいバージョンのツールの使用を開始するには、「AWS Tools for PowerShell ユーザーガイド (V5)」、特に V5 への移行に関するトピックを参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Linux または MacOS での AWS Tools for PowerShell のインストール

このトピックでは、AWS Tools for PowerShell を Linux または macOS にインストールする手順について説明します。

セットアップの概要

Linux または macOS コンピュータに AWS Tools for PowerShell をインストールする場合は、次の 2 つのパッケージオプションから選択できます。

  • AWS.Tools - モジュール化されたバージョンの AWS Tools for PowerShell。AWS の各サービスが、個別の小さなモジュールと、共通のサポートモジュール AWS.Tools.Common によってサポートされます。

  • AWSPowerShell.NetCore – AWS Tools for PowerShell の単独の大きなモジュールバージョン。AWS のすべてのサービスが、この大きな単独モジュールでサポートされます。

    注記

    単一のモジュールは大きすぎて AWS Lambda 関数で使用できない場合があることに注意してください。代わりに、上記のモジュール化されたバージョンを使用します。

Linux または macOS を実行しているコンピュータでこれらのいずれかをセットアップする方法は、このトピックの後半で詳しく説明します。

  1. サポートされているシステムに PowerShell Core 6.0 以降をインストールします。

  2. Microsoft PowerShell Core のインストール後、システムシェルで pwsh を実行して PowerShell を起動します。

  3. AWS.Tools または AWSPowerShell.NetCore のいずれかをインストールします。

  4. 適切な Import-Module コマンドレットを実行して、モジュールを PowerShell セッションにインポートします。

  5. Initialize-AWSDefaultConfiguration コマンドレットを実行して AWS 認証情報を指定します。

前提条件

AWS Tools for PowerShell Core を実行するには、コンピュータで PowerShell Core 6.0 以降が実行されている必要があります。

  • サポートされている Linux プラットフォームの一覧と、Linux ベースのコンピュータに PowerShell の最新バージョンをインストールする方法については、マイクロソフトのウェブサイトで 「Linux に PowerShell をインストールする」を参照してください。一部の Linux ベースのオペレーティングシステム (Arch、Kali、Raspbian など) は、公式にはサポートされていませんが、さまざまなレベルのコミュニティサポートがあります。

  • サポートされている macOS バージョンと macOS に PowerShell の最新バージョンをインストールする方法については、マイクロソフトのウェブサイトで 「macOS に PowerShell をインストールする」を参照してください。

Linux または MacOS での AWS.Tools のインストール

モジュール化されたバージョンの AWS Tools for PowerShell は、PowerShell Core 6.0 以降を実行しているコンピュータにインストールできます。PowerShell Core をインストールする方法については、Microsoft の PowerShell ウェブサイトの「PowerShell のさまざまなバージョンのインストール」を参照してください。

次の 3 つの方法のいずれかで AWS.Tools をインストールできます。

  • AWS.Tools.Installer モジュール内のコマンドレットを使用する。このモジュールは、他の AWS.Tools モジュールのインストールと更新を簡素化します。AWS.Tools.InstallerPowerShellGet を必要とし、その最新版を自動的にダウンロードしてインストールします。AWS.Tools.Installer は、モジュールのバージョンを自動的に同期させます。あるモジュールの新しいバージョンをインストールまたは更新すると、AWS.Tools.Installer 内のコマンドレットによって、他のすべての AWS.Tools モジュールが同じバージョンに自動的に更新されます。

    この方法については後述の手順で説明します。

  • AWS.Tools.zip からモジュールをダウンロードし、モジュールディレクトリの 1 つにそのモジュールを展開します。$Env:PSModulePath 変数の値を出力することで、モジュールディレクトリを検出できます。

  • Install-Module コマンドレットを使用して、PowerShell Gallery から各サービスモジュールをインストールします。

AWS.Tools.Installer モジュールを使用して Linux または macOS に AWS.Tools をインストールするには
  1. 次のコマンドを実行して、PowerShell コアセッションを開始します。

    $ pwsh
    注記

    PowerShell は、実際のタスクで必要とされる場合を除き、昇格されたアクセス許可を持つ管理者として実行しないことをお勧めします。これは、潜在的なセキュリティリスクを避けるためであり、最小限の特権の原則にも反します。

  2. AWS.Tools モジュールを使用してモジュール化された AWS.Tools.Installer パッケージをインストールするには、次のコマンドを実行します。

    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
  3. これで、使用するサービスごとにモジュールをインストールできます。例えば、次のコマンドは 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 コマンドレットは、すべての要求されたモジュールを PSGallery という名前の PSRepository (https://www.powershellgallery.com/) からダウンロードし、このリポジトリを信頼できるソースと見なします。この Get-PSRepository -Name PSGallery の詳細を参照するには、PSRepository コマンドを使用します。

    前のコマンドは、システムのデフォルトディレクトリにモジュールをインストールします。実際のディレクトリは、オペレーティングシステムのディストリビューションとバージョン、およびインストールした PowerShell のバージョンによって異なります。例えば、PowerShell 7 を RHEL 互換システムにインストールした場合、デフォルトのモジュールは /opt/microsoft/powershell/7/Modules (または$PSHOME/Modules) に配置され、ユーザーモジュールは ~/.local/share/powershell/Modules に配置される可能性が最も高くなります。詳細については、Microsoft PowerShell ウェブサイトの「Linux に PowerShell をインストールする」を参照してください。モジュールがインストールされている場所を確認するには、次のコマンドを実行します。

    PS > Get-Module -ListAvailable

    他のモジュールをインストールするには、PowerShell Gallery にある適切なモジュール名で同様のコマンドを実行します。

Linux または MacOS に AWSPowerShell.NetCore をインストールする

AWSPowerShell.NetCore の新しいリリースにアップグレードするには、Linux または macOS での AWS Tools for PowerShell の更新 の手順に従います。最初に AWSPowerShell.NetCore の以前のバージョンをアンインストールします。

次の 2 つの方法のうちの 1 つで AWSPowerShell.NetCore をインストールできます。

  • AWSPowerShell.NetCore.zip からモジュールをダウンロードし、モジュールディレクトリの 1 つにそのモジュールを展開します。$Env:PSModulePath 変数の値を出力することで、モジュールディレクトリを検出できます。

  • 次の手順で説明するように、Install-Module コマンドレットを使用して PowerShell ギャラリーからインストールする。

Install-Module コマンドレットを使用して Linux または macOS に AWSPowerShell.NetCore をインストールするには

次のコマンドを実行して、PowerShell コアセッションを開始します。

$ pwsh
注記

sudo pwsh を実行して、昇格された、管理者権限で PowerShellを実行することで PowerShell を起動しないことをお勧めします。これは、潜在的なセキュリティリスクを避けるためであり、最小限の特権の原則にも反します。

PowerShell ギャラリーから 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

スクリプトの実行

Set-ExecutionPolicy コマンドは、Windows 以外のシステムでは使用できません。Get-ExecutionPolicy は実行できます。これは、Windows 以外のシステムで実行されている PowerShell Core のデフォルトの実行ポリシー設定が Unrestricted であることを示します。詳細については、Microsoft Technet ウェブサイトの「About Execution Policies」を参照してください。

PSModulePath には AWS モジュールのディレクトリの場所が含まれているため、Get-Module -ListAvailable コマンドレットにより、インストール済みのモジュールが表示されます。

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

AWS Tools for PowerShell Core を使用するための PowerShell コンソールの設定 (AWSPowerShell.NetCore のみ)

PowerShell Core は、通常、モジュールでコマンドレットを実行するたびにモジュールを自動的にロードします。しかし、これはサイズが大きいため AWSPowerShell.NetCore には機能しません。AWSPowerShell.NetCore コマンドレットの実行を開始するには、まず Import-Module AWSPowerShell.NetCore コマンドを実行する必要があります。これは、AWS.Tools モジュール内のコマンドレットには必要ありません。

PowerShell セッションの初期化

AWS Tools for PowerShell のインストール後に Linux ベースまたは macOS ベースのシステムで PowerShell を起動する場合は、Initialize-AWSDefaultConfiguration を実行して、使用する AWS アクセスキーを指定する必要があります。Initialize-AWSDefaultConfiguration の詳細については、「AWS 認証情報の使用」を参照してください。

注記

AWS Tools for PowerShell の以前 (3.3.96.0 より前) のリリースでは、このコマンドレットは Initialize-AWSDefaults という名前でした。

バージョニング

新しい AWS サービスと機能をサポートするために、AWS Tools for PowerShell は AWS の新しいバージョンを定期的にリリースします。インストール済みの AWS Tools for PowerShell のバージョンを確認するには、Get-AWSPowerShellVersion コマンドレットを実行します。

例:

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 のサービスを一覧表示するには、-ListServiceVersionInfo パラメータを Get-AWSPowerShellVersion コマンドレットに追加します。

実行中の PowerShell のバージョンを確認するには、「$PSVersionTable」と入力して、$PSVersionTable 自動変数の内容を表示します。

例:

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 の更新

AWS Tools for PowerShell の更新されたバージョンがリリースされると、ローカルで実行しているバージョンを定期的に更新する必要があります。

モジュール化された AWS.Tools パッケージのモジュールを更新する

AWS.Tools モジュールを最新バージョンに更新するには、次のコマンドを実行します。

PS > Update-AWSToolsModule -CleanUp

このコマンドは、現在インストールされているすべての AWS.Tools モジュールを更新し、正常に更新されたモジュールについては、以前のバージョンを削除します。

注記

Update-AWSToolsModule コマンドレットは、すべてのモジュールを PSGallery という名前の PSRepository (https://www.powershellgallery.com/) からダウンロードし、これを信頼できるソースと見なします。この Get-PSRepository -Name PSGallery の詳細を参照するには、PSRepository コマンドを使用します。

Tools for PowerShell Core の更新

Get-AWSPowerShellVersion コマンドレットを実行して実行中のバージョンを確認し、PowerShell Gallery ウェブサイトにある Tools for Windows PowerShell のバージョンと比較します。2~3 週間ごとにチェックすることをお勧めします。新しいコマンドおよび AWS サービスのサポートは、そのサポートのあるバージョンに更新した後にのみ利用できます。

AWSPowerShell.NetCore の新しいリリースをインストールする前に、既存のモジュールをアンインストールします。既存のパッケージをアンインストールする前に、開いているすべての PowerShell セッションを閉じます。次のコマンドを実行して、パッケージをアンインストールします。

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

パッケージがアンインストールされたら、次のコマンドを実行して、更新されたモジュールをインストールします。

PS > Install-Module -Name AWSPowerShell.NetCore

インストール後、コマンド Import-Module AWSPowerShell.NetCore を実行して、更新されたコマンドレットを PowerShell セッションにロードします。

関連情報