Не удалось загрузить PowerShell модуль

При попытке запустить командлет из установленного на компьютере модуля PowerShell может появится ошибка:

🎓 Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и "под микроскопом" изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
The command XXX was found in the module, but the module YYY could not be loaded.

В моем случае эта ошибка появилась при попытке подключиться к тенанту Microsoft 365 с помощью модуля Exchange Online PowerShell.

Connect-ExchangeOnline : The 'Connect-ExchangeOnline' command was found in the module 'ExchangeOnlineManagement', but the module could not be loaded. For more information, run 'Import-Module ExchangeOnlineManagement'.
+ CategoryInfo : ObjectNotFound: (Connect-ExchangeOnline:String) [], CommandNotFoundException + FullyQualifiedErrorId : CouldNotAutoloadMatchingModule

Ошибка при загрузке команды из PowerShell модуля в сессию

Чаще всего эта ошибка означает, что у вас на компьютере запуск сторонних модулей ограничивается настройками PowerShell Execution Policy.

Выполните команду:

Get-ExecutionPolicy

В данном случае политика Restricted запрещает запуск сторонних скриптов.

Get-ExecutionPolicy

Попробуйте загрузить модуль командой:

Import-Module ExchangeOnlineManagement

Должна появится ошибка:

Import-Module: File C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\3.3.0\netFramework\ExchangeOnlineManagement.psm1 cannot be loaded because running scripts is disabled on this system.

Запуск PowerShell скриптов ограничен на этом компьютере

Можно разрешить запускать команды из внешних PowerShell модулей только в текущей сессии:

Set-ExecutionPolicy RemoteSigned -scope Process

Или можно запустить запуск любых локальных скриптов для текущего пользователя:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Если при попытке импортировать модуль появится ошибка вида:

Import-Module : Could not load file or assemblyor one of its dependencies. The system cannot find the file specified.

В этом случае скорее всего модуль загружен не полностью или поврежден. Удалите каталог с модулем с диска и переустановите модуль. PowerShell модули устаналиваются в одну из следующих директорий:

  • C:\Users\YourUserName\Documents\WindowsPowerShell\Modules – в профиле текущего пользователя
  • C:\Program Files\WindowsPowerShell\Modules – обычно сюда устаналиваются сторониие модулиЮ доступные для всех пользователей
  • C:\Windows\system32\WindowsPowerShell\v1.0\Modules – встроенные в Windows модули

Еще один вариант ошибки импорта модуля:

import-module : File …\…\modulename.psm1 cannot be loaded. The file …\…\modulename.psm1 is not digitally signed. You cannot run this script on the current system

Кроме исправления настроек политики запуска PowerShell скриптов причина такой ошибки может быть в том, что указанный файл модуля был вручную скачан с Интернета. В этом случае нужно просто разблокировать скачанный файл командой:

Unblock-File …\…\modulename.psm1

🎓 Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и "под микроскопом" изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Предыдущая статья Следующая статья


Комментариев: 0 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)