I’ve been having problems suspending my Ubuntu VMs (12.04.4 in this case) for awhile now, despite having VMware Tools installed properly. It would try to suspend, throw an error, then disable the ability to suspend until the next power cycle. It finally annoyed me enough on my CI VM that I tracked down the solution on this extremely helpful thread on communities.vmware.com.

There is a bit in the /etc/vmware-tools/scripts/vmware/network script that is the entire culprit (line 81 in my install):

service=`which service 2>/dev/null`

Apparently the referenced service script is broken for this version of Ubuntu. Commenting out that line makes suspend work great. Remember that if you’ve tried to suspend the VM prior to commenting out the line, you’ll probably have to power cycle (reboot doesn’t seem to be enough) the VM.