I have noticed an annoying feature in the VMWare Workstation hypervisor. If you don’t use a virtual machine for some time, it is automatically suspended by the built-in Auto-Suspend feature. To continue using the VM, you have to click the Resume this virtual machine button.
Automatically suspend feature is enabled by default in VMWare Workstation Player/Fusion. It allows to save host resources by automatically freezing the VM state without shutting it down. To turn on the suspended VM, you need some seconds, but I find the feature annoying.
Firstly, it is not convenient if you test something on the VM and wait for the results of your process or script. Secondly, regular VM suspending and saving the memory state to disk will consume your SSD resource. Thirdly, I don’t want to wait for some seconds each time when VMWare Workstation resumes the VM.
VMWare Workstation can suspend the VM automatically or when it detects that a guest OS is in sleep/hibernate mode. For example, Windows 10 puts the device into sleep mode after 30 minutes of inactivity (Control Panel\Hardware and Sound\Power Options\Edit Plan Settings -> Put the computer to sleep).
Unfortunately, you cannot completely disable Auto Suspend in VMWare Workstation settings. However, you can prevent a hypervisor from suspending the specific VM in VMX config file settings.
- Shut down the VM;
- Look at the path to its VMX configuration file in the VM properties;
- Open the VMX file in any text editor and add the line
suspend.disabled = "TRUE"
to the end of the file. Then save it;Tip. You can add the line to the VMX text file using the PowerShell command:
Add-Content C:\VHD\win10x64\win10x64.vmx 'suspend.disabled = "TRUE"'
Make sure that the line was successfully added to the VM VMX file:
get-content C:\VHD\win10x64\win10x64.vmx | Select-String "suspend"
- Start the VM and make sure that your VMWare Workstation hypervisor no longer suspends the VM.