Windows
 Computer >> コンピューター >  >> システム >> Windows

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

Windows 11またはWindows 10のPCで、Install-ModuleコマンドやUpdate-Moduleコマンドを使ってPowerShell Galleryからモジュールをインストール・更新しようとした際、「Install-Moduleコマンドはモジュール'PowerShellGet'内で見つかりましたが、モジュールを読み込めませんでした」というエラーメッセージが表示されることがあります。この記事では、この問題を解決するための具体的な対処法をわかりやすく解説します。

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

PowerShellGetモジュールとは?

PowerShellGetモジュールとは、モジュール、DSCリソース、ロール機能、スクリプトなどのPowerShellアーティファクトを検出・インストール・更新・公開するためのコマンド群です。なお、2020年4月以降、PowerShell GalleryではTLS(Transport Layer Security)1.0および1.1のサポートが終了している点にも注意が必要です。

Install-ModuleまたはUpdate-Moduleコマンドレットを実行した際にこの問題が発生すると、以下のような完全なエラーメッセージが表示されます。

Install-Module: 'Install-Module'コマンドはモジュール'PowerShellGet'内で見つかりましたが、モジュールを読み込めませんでした。詳細については、'Import-Module PowerShellGet'を実行してください。

さらに、エラーメッセージの指示に従ってImport-Module PowerShellGetを実行すると、今度は次のいずれかのエラーが表示されるケースがあります。

Import-Module: 必要なモジュール'PackageManagement'が読み込まれていません。モジュールを読み込むか、ファイルの'RequiredModules'から削除してください。

または

Import-Module: クラウドファイルプロバイダーが実行されていません。

2つ目のエラーメッセージは、OneDriveに関連している可能性が高いとされています。

「PowerShellGetモジュールをロードできませんでした」エラーの解決方法

Windows 11/10 PCでこのエラーが発生した場合は、以下の対処法を順不同で試して、問題が解決するかどうか確認してください。

  1. 実行ポリシーをUnrestrictedに設定する
  2. OneDrive Personalを有効にする(該当する場合)
  3. 別のユーザーアカウントにサインインする、または新しいユーザーアカウントを作成する
  4. Windows 11/10をリセットする

以下の対処法を試す前に、まずPowerShellが最新版に更新されていること、PSセッションでTLS v1.2以降が有効化されデフォルトプロトコルとして設定されていることを確認してください。その上で、管理者権限のコマンドプロンプトで以下のコマンドを実行します。

powershell.exe -NoLogo -NoProfile -Command 'Install-Module -Name PackageManagement -Force -MinimumVersion 1.4.6 -Scope CurrentUser -AllowClobber'

コマンドの実行後、PowerShellモジュールのインストール・更新を再試行し、正常に完了するかどうかを確認してください。

1. 実行ポリシーをUnrestrictedに設定する

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

多くのユーザーは、ExecutionPolicy(実行ポリシー)をUnrestrictedに設定するだけで、このエラーを解決できたと報告しています。この作業を行うには、「PowerShellでスクリプトの実行が無効になっている」問題を修正するガイドの手順に従ってください。

2. OneDrive Personalを有効にする(該当する場合)

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

この解決策は、Update-Moduleコマンドレットを実行し、Import-Module PowerShellGetの実行時に「クラウドファイルプロバイダーが実行されていません」というエラーが表示されたユーザーに特に有効でした。

実際、このケースはOneDrive Businessアカウントを持つユーザーに該当しました。Businessアカウント自体はすべて正しく設定されていたものの、OneDrive Personalアカウントが実行されておらず、個人用OneDriveのPowerShellフォルダーが$env:PSModulePathパス上に存在していたことが原因です。

この場合、問題を解決するにはOneDrive Personalアカウントを再度有効化する必要があります。具体的な手順については、「Windows 11/10で起動時にOneDriveが開かない問題を修正する方法」のガイドを参考にしてください。

3. 別のユーザーアカウントにサインインする、または新しいユーザーアカウントを作成する

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

Windows 11/10 PCに複数のユーザーアカウントが設定されている場合は、現在アクティブなアカウントからサインアウトし、別のアカウントにサインインしたうえで、PowerShellモジュールのインストールまたは更新操作を再度実行してみてください。この方法で問題が解決したという報告も多数あります。他のユーザーアカウントが存在しない場合は、新規に作成してから試してください。

4. Windows 11/10をリセットする

【Windows 11/10】Install-ModuleコマンドがPowerShellGetモジュールで見つかるがロードできないエラーの対処法

ここまでの方法で問題が解決しない場合は、Windows 11/10 PCをリセットすることを検討してください。リセットを実行する際は、必ず「個人のファイルを保持する」オプションを選択しましょう。リセット完了後、Install-ModuleまたはUpdate-Moduleを再試行し、問題なくタスクが完了するか確認してください。それでも解決しない場合は、前述の対処法をもう一度順番に試してみてください。

関連記事:PowerShellのGet-Appxpackageが動作しない・アクセス拒否される場合の対処法

PowerShellGetモジュールのインストール方法

Windows 11/10システムに最新バージョンのPowerShellGetモジュールをインストールするには、以下の手順を実行します。

  • PSセッションでTLS1.2をデフォルトプロトコルとして設定します。
  • PowerShellGetを更新する前に、必ず最新のNuGetプロバイダーをインストールします。
  • 未設定の場合は、PSリポジトリを登録します。
  • PowerShellGetをインストールします。

PowerShellGetモジュールの更新方法

PowerShellGetとPackageManagementを更新するには、以下のコマンドを順に実行します。

  • Get-Module -ListAvailable PackageManagement, PowerShellGet
  • Install-PackageProvider Nuget –Force Exit
  • Install-Module –Name PowerShellGet –Force Exit
  • Set-ExecutionPolicy RemoteSigned Install-Module –Name PowerShellGet –Force -AllowClobber

PowerShellGetがインストールされているか確認する方法

Windows 11/10コンピューターにPowerShellGetがインストールされているかどうかを確認するには、Get-Module -ListAvailable PowerShellGetコマンドを実行します。また、PowerShellセッションからSave-Moduleを使用すると、現在のバージョンのPowerShellGetをダウンロードできます。このときダウンロードされるのは「PowerShellGet」と「PackageManagement」の2つのフォルダーで、それぞれのフォルダー内にはバージョン番号の付いたサブフォルダーが含まれています。

  1. Windows 10で「指定されたモジュールが見つかりません」エラー(0x0000007e)を修正する方法

    「指定されたモジュールが見つかりません」というエラーに悩んでいませんか?0x0000007eエラーの最適な解決方法をお探しの方は、まさにうってつけの記事です。本記事では、この問題の概要と具体的な解決策について詳しく解説します。 「指定されたモジュールが見つかりません」はDLLエラーの一種で、主にWindowsの起動時に表示されます。場合によっては、インターネットに接続したときや特定のアプリケーションを使用した際にも発生することがあります。幸い、この問題の修正はそれほど難しくありません。 無効なレジストリエントリの削除、マルウェアの駆除、破損したシステムファイルのチェックと修復を行うことで、この

  2. Windows 10で「ネットワークパスが見つかりません」エラーを解決する4つの方法

    Microsoftでは、同じネットワーク上のコンピュータ同士がリモートアクセスしてファイルをやり取りできるようになっています。このデータやリソースの共有機能は、2台以上のデバイスを同時に使用する際に非常に便利です。しかし、利用者が問題に遭遇することもあり、その中でもよく見られるのが「ネットワークパスが見つかりません」というエラーです。本記事では、この問題を解決するための4つのトラブルシューティング手法を詳しく解説します。 Windowsで「ネットワークパスが見つかりません」エラーを修正する方法 方法1:TCP/IP NetBIOS Helperサービスを再起動する リモートデバイスに接続してフ