Ubuntu has always had problems getting their system to shutdown successfully into a state of hibernation. There’s never been a single solution that fits all machines or all machines. This article is a combination of resources explaining how to enable hibernation by default, or use TuxOnIce to patch the kernel.