Я пытаюсь работать с модулем Windows Azure PowerShell в Windows 8.1. Я скачал и установил модуль Azure, и при запуске я могу запустить и использовать «Windows Azure PowerShell», который представляет собой PS, который просто загружает Azure. Когда я открываю простое окно PS и выполняю Import-Module Azure, происходит сбой:
import-module :The specified module 'Azure' was not loaded because no valid module file was found in any module directory.
Я подозреваю, что это как-то связано с версиями powershell или 64 \ 32-битными версиями.
Все двоичные файлы Windows Azure SDK и соответствующие командлеты PowerShell являются 32-разрядными, поэтому ярлык «Windows Azure Powershell» всегда запускает 32-разрядную оболочку.
Вы можете импортировать модуль Azure в существующий сеанс PowerShell, ссылаясь на путь файловой системы к манифесту модуля:
Чтобы получить доступ к модулю только по имени, вам нужно включить его местоположение в PSModulePathпеременную окружения (здесь, в мельчайших подробностях, для разработчиков):
Спасибо, это работает и для 64-битной PS. Есть ли способ заставить ярлык работать и в 64-битной PS?
итайск
2
Для меня команда, которую я должен был выполнить, была: Import-Module "C: \ Program Files (x86) \ Microsoft SDKs \ Azure \ PowerShell \ ServiceManagement \ Azure \ Azure.psd1"
Kai G
7
Если вы только что установили Azure PowerShell SDK, сначала перезагрузите компьютер. После установки требуется перезагрузка, в противном случае будет выдано это исключение.
Также попробуйте запустить программу установки от имени администратора, щелкнув правой кнопкой мыши исполняемый файл программы установки и выбрав «Запуск от имени администратора». После завершения перезагрузите компьютер. Вы также можете запустить импорт, как указано выше, но вам не нужно делать это с новыми установщиками.
вам могут понадобиться политики выполнения, поскольку powershell запрашивает подтверждение, прежде чем импортировать модули. Вот ссылка для выполнения политик выполнения.
У меня точная проблема, указанная в вопросе. Но я использую Powershell Core. Мой симптом был немного другим (и очень запутанным)
Import-Module:Could not load file or assembly 'System.Windows.Forms,
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.The system
cannot find the file specified.
После нескольких daysскитаний в темноте я обнаружил эту проблему на github для Powershell Core: https://github.com/PowerShell/PowerShell/issues/4090 и глубоко скрыл в ней комментарий анонимного пользователя. А именно: @LaurentPrat how are you importing AzureRM on linux? O_O you are supposed to load azurerm.netcore. Пока речь шла о Linux, реализации момента лампочки было достаточно. Появились новые модули для ядра Azure PowerShell.
Если вы только что установили Azure PowerShell SDK, сначала перезагрузите компьютер. После установки требуется перезагрузка, в противном случае будет выдано это исключение.
источник
В Windows 10 путь изменился. Смотрите правильную версию ниже:
источник
Для модуля режима Azure Resource Manager (2015/09/11) используйте следующее:
источник
Также попробуйте запустить программу установки от имени администратора, щелкнув правой кнопкой мыши исполняемый файл программы установки и выбрав «Запуск от имени администратора». После завершения перезагрузите компьютер. Вы также можете запустить импорт, как указано выше, но вам не нужно делать это с новыми установщиками.
источник
В зависимости от установленной версии SDK, у вас может быть папка «Windows Azure» или просто «Azure» в пути.
Для моей настройки я использую это:
источник
Для AzureRM 4.2.1 (на момент этого ответа). Его путь модуля отличается в моем случае это
Я использовал его на машине x64, Windows 10 OS.
вам могут понадобиться политики выполнения, поскольку powershell запрашивает подтверждение, прежде чем импортировать модули. Вот ссылка для выполнения политик выполнения.
источник
У меня точная проблема, указанная в вопросе. Но я использую Powershell Core. Мой симптом был немного другим (и очень запутанным)
После нескольких
days
скитаний в темноте я обнаружил эту проблему на github для Powershell Core: https://github.com/PowerShell/PowerShell/issues/4090 и глубоко скрыл в ней комментарий анонимного пользователя. А именно:@LaurentPrat how are you importing AzureRM on linux? O_O you are supposed to load azurerm.netcore
. Пока речь шла о Linux, реализации момента лампочки было достаточно. Появились новые модули для ядра Azure PowerShell.Мой профиль запуска PS теперь имеет это заявление
источник