Windows10 Pro + Hyper-V で Vagrant 2.1.1 switchidエラー対応
windows 10 Pro + hyper-v で、
vagrant up –provider=hyperv
としたところ、以下のエラー
- PS C:\workspaces\vm\centos7> vagrant up --provider=hyperv
- Bringing machine 'default' up with 'hyperv' provider...
- ==> default: Verifying Hyper-V is enabled...
- ==> default: Importing a Hyper-V instance
- default: Cloning virtual hard drive...
- default: Creating and registering the VM...
- An error occurred while executing a PowerShell script. This error
- is shown below. Please read the error message and see if this is
- a configuration error with your system. If it is not, then please
- report a bug.
- Script: import_vm_xml.ps1
- Error:
- C:\Programs\Vagrant\embedded\gems\2.1.1\gems\vagrant-2.1.1\plugins\providers\hyperv\scripts\import_vm_xml.ps1 : パラメ
- ーター名 'switchid' に一致するパラメーターが見つかりません。
- 発生場所 行:1 文字:327
- + ... achines/default/hyperv/Virtual Hard Disks/disk.vhd' -switchid 'c08cb7 ...
- + ~~~~~~~~~
- + CategoryInfo : InvalidArgument: (:) [import_vm_xml.ps1]、ParameterBindingException
- + FullyQualifiedErrorId : NamedParameterNotFound,import_vm_xml.ps1
Hyper-VでVagrant upできない人はこれを見てみて (Vagrant 2.1.1対応方法更新しました)
の対応方法に従い、レジストリを修正
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\vmsmp\parameters\SwitchList
するも、エラー修正されず。。。
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”
- Param(
- :
- [string]$enable_virtualization_extensions=$False,
- [string]$switchid
- )
- $switchname = "DefaultSwitch"
再度 vagrant up –provider=hyperv
成功した!
SSHでの接続もOK