Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Here is an interesting question from the Hyper-V forums:
In essence – the situation is that the user has:
- Created a virtual machine
- Connected it to a virtual switch
- Taken a checkpoint
- Deleted and recreated the virtual switch
Now, whenever they apply the old checkpoint – they get a configuration error message. They can fix up the virtual machine settings each time – but this is annoying. However, checkpoints are read-only and there is nothing you can do – right? Actually, wrong.
Changing the settings on a checkpoint is potentially dangerous – so we disable this through the Hyper-V Management UI. However, you can reach into the heart of Hyper-V and tinker with checkpoint settings if you know what you are doing.
This problem can be fixed with a little bit of PowerShell know-how.
What we want to do is to get any checkpoints that have network adapters connected to the old virtual switch – and reconnect them to the new virtual switch. The first task is to get all network adapters associated with checkpoints. Ordinarily – Get-VMNetworkAdapter will only return network adapters associated with virtual machines.
To get network adapters associated with virtual machine checkpoints – we have to run Get-VMCheckpoint * | Get-VMNetworkAdapter. And to fix up the issue reported – we need to run something like this:
Get-VMCheckpoint * | Get-VMNetworkAdapter | ? SwitchName -eq "Old Missing Virtual Switch" | Connect-VMNetworkAdapter -SwitchName "New Virtual Switch"
With the logical substitutions for the virtual switch names – of course.
Cheers,
Ben