Rename Windows guest without reboot
This commit is contained in:
parent
30c8f0708f
commit
90cbdd85e1
|
@ -14,12 +14,31 @@ module VagrantPlugins
|
||||||
|
|
||||||
# Rename and reboot host if rename succeeded
|
# Rename and reboot host if rename succeeded
|
||||||
script = <<-EOH
|
script = <<-EOH
|
||||||
$computer = Get-WmiObject -Class Win32_ComputerSystem
|
try
|
||||||
$retval = $computer.rename("#{name}").returnvalue
|
{
|
||||||
if ($retval -eq 0) {
|
$computer = Get-WmiObject -Class Win32_ComputerSystem
|
||||||
shutdown /r /t 5 /f /d p:4:1 /c "Vagrant Rename Computer"
|
$computer.rename("#{name}")
|
||||||
|
|
||||||
|
Remove-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -name "Hostname"
|
||||||
|
Remove-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -name "NV Hostname"
|
||||||
|
|
||||||
|
New-PSDrive -name HKU -PSProvider "Registry" -Root "HKEY_USERS"
|
||||||
|
|
||||||
|
Set-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\Computername\Computername" -name "Computername" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\Computername\ActiveComputername" -name "Computername" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -name "Hostname" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -name "NV Hostname" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" -name "AltDefaultDomainName" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" -name "DefaultDomainName" -value "#{name}"
|
||||||
|
Set-ItemProperty -path "HKCU:\Volatile Environment" -name "LOGONSERVER" -value "#{name}"
|
||||||
|
[Environment]::SetEnvironmentVariable("COMPUTERNAME", "#{name}", "User")
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
exit -1
|
||||||
}
|
}
|
||||||
exit $retval
|
|
||||||
EOH
|
EOH
|
||||||
|
|
||||||
machine.communicate.execute(
|
machine.communicate.execute(
|
||||||
|
|
Loading…
Reference in New Issue