Windows10 Pro + Hyper-V で Vagrant 2.1.1 switchidエラー対応

windows 10 Pro + hyper-v で、

vagrant up –provider=hyperv

としたところ、以下のエラー

  1. PS C:\workspaces\vm\centos7> vagrant up --provider=hyperv
  2. Bringing machine 'default' up with 'hyperv' provider...
  3. ==> default: Verifying Hyper-V is enabled...
  4. ==> default: Importing a Hyper-V instance
  5. default: Cloning virtual hard drive...
  6. default: Creating and registering the VM...
  7. An error occurred while executing a PowerShell script. This error
  8. is shown below. Please read the error message and see if this is
  9. a configuration error with your system. If it is not, then please
  10. report a bug.
  11.  
  12. Script: import_vm_xml.ps1
  13. Error:
  14.  
  15. C:\Programs\Vagrant\embedded\gems\2.1.1\gems\vagrant-2.1.1\plugins\providers\hyperv\scripts\import_vm_xml.ps1 : パラメ
  16. ーター名 'switchid' に一致するパラメーターが見つかりません。
  17. 発生場所 行:1 文字:327
  18. + ... achines/default/hyperv/Virtual Hard Disks/disk.vhd' -switchid 'c08cb7 ...
  19. + ~~~~~~~~~
  20. + CategoryInfo : InvalidArgument: (:) [import_vm_xml.ps1]、ParameterBindingException
  21. + FullyQualifiedErrorId : NamedParameterNotFound,import_vm_xml.ps1

Hyper-VでVagrant upできない人はこれを見てみて (Vagrant 2.1.1対応方法更新しました)

の対応方法に従い、レジストリを修正

コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\vmsmp\parameters\SwitchList

vagrant_regedit

するも、エラー修正されず。。。

https://github.com/hashicorp/vagrant/issues/9774

上記スレッドに解決しそうなコメントがあったので、試す。

以下のスクリプトを編集

{インストールディレクトリ}Vagrant\embedded\gems\2.1.1\gems\vagrant-2.1.1\plugins\providers\hyperv\scripts\import_vm_xml.ps1

ダミーパラメーターを追加

[string]$switchid

スイッチ名を先頭行に指定(値は、上記レジストリエディタで指定した値)

$switchname = “DefaultSwitch”

  1. Param(
  2. :
  3. [string]$enable_virtualization_extensions=$False,
  4. [string]$switchid
  5. )
  6. $switchname = "DefaultSwitch"

再度 vagrant up –provider=hyperv

vagrant_success

成功した!

vagrant_hyperv

SSHでの接続もOK

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です