Hi PintoZ,
I had pretty much the same problem (i.e. it would hibernate but not thaw).
In my case, the problem was that I had recreated the swap (with mkswap). The point is that to resume, ubuntu needs to know where the resume data were saved. This info is in the initramfs and reference is often made to the UUID of the partition rather than the device (e.g. /dev/sda3), which changes if you remake the swap. So:
1. identify the initramfs that you are currently using. You can look at /boot/grub/menu.lst. The line
says which option is booted by default. The corresponding initrd option specifies the image file, e.g.
Code:
initrd /boot/initrd.img-2.6.24-17-generic
2. copy that image to /tmp and extract it:
Code:
mkdir /tmp/initramfs
cp /boot/initrd.img-2.6.24-17-generic /tmp/initramfs/image.gz
gunzip -c -9 /tmp/initramfs/image.gz | cpio -i -d -H newc --no-absolute-filenames
now look at the file /tmp/initramfs/conf/conf.d/resume. It will be something like:
Code:
RESUME=UUID=11e49f41-85e5-4889-873e-efc1be92f07d
3. You could change this UUID to match that of your swap partition and remake the initrd file or, more easily, just remake the swap so that it has the UUID you found:
Code:
swapoff -a
mkswap -U 11e49f41-85e5-4889-873e-efc1be92f07d /dev/sda3
swapon -a
Naturally, you will have to change all the specifics (UUID, /dev/sda3 , initrdxxx) to match your configuration. You may also need root privileges for some commands.
Hope it helps.
Actually, you mentioned your swap's UUID changes continuously (?). In that case, maybe you can remake the initramfs with a /tmp/initramfs/conf/conf.d/resume file that looks like this: RESUME=/dev/sda3
Bookmarks