Since I got my HP ProLiant MicroServer setup with Windows Home Server v1 (instead of 2011) I haven’t been able to suspend or hibernate it. Whilst I thought this would be a straightforward fix it turns out it can be a bit tricky. Whilst you can enable hibernation it is not possible to enable suspend as the hardware itself does not support it.

To go into hibernation, open the command prompt and use the following command:

powercfg -h on
powercfg /hibernate on

To check what sleep states are available on your system you can use the following command:

powercfg -a

If this doesn’t work and gives you an error message it might be for one (or more) of the following reasons…

Standard VGA Graphics Adapter

If you haven’t installed the VGA graphics adapter for the Mobility┬áRadeon HD 4200 then this will prevent the computer from going into hibernation. Whilst the rest of the drivers aren’t that hard to get from HP, installing the VGA driver it seems you may have to do manually. Luckily I found some instructions on the OCAU Forum

If you go to the AMD website and get the Radeon Mobility drivers for the 785E chipset, if you extract the contents (installing it normally didn’t work for me) then use the Update Driver option in the Device Manager and use the following path:

\Drivers\Display\XP_INF\

PAE mode

In the case that 32-bit processes would like to use more than 4GB of system memory, Physical Address Extension allows it to do just that (as far as I’m aware, I’m a Mac/Linux user most of the time now) but having it enabled prevents WHS from hibernating. However, displaying PAE on it’s own won’t work, as having DEP enabled will enable it anyway (so setting /nopae in boot.ini won’t do anything) so you will need to disable both.

Editing boot.ini to change the boot options is the same as in Windows XP it seems. Here’s an extract from the Microsoft knowledge base:

  1. Right-click My Computer, and then click Properties. -or-
    Click Start, click Run, type sysdm.cpl, and then click OK.
  2. On the Advanced tab, click Settings under Startup and Recovery.
  3. Under System Startup, click Edit.

Then delete /noexecute=optout and replace it with /execute then reboot the server. More information about PAE and DEP can be found from Microsoft.