In Mint 13 XFCE suspend and Hibernation where broken on my Asus EEEPC, but with Mint 14 XFCE at least suspend is working.
All that remains is fixing the resume from hibernation. The system seems to go to Hibernation just fine and shuts down. But when I boot up and select Mint (Win7 dual boot) in Grub2.00 there's no 'Resume from disk xxx' message and it's treated as a normal boot.
So the swap file's disk image is not used (or written) for some reason. The swap file's obviously enabled as seen in swapon -s & the blkid output:
Code: Select all
Filename Type Size Used Priority
/dev/sda6 partition 1952764 168 -1
Code: Select all
/dev/sda1: LABEL="WIN7" UUID="F430478C304754B0" TYPE="ntfs"
/dev/sda2: LABEL="RECOV" UUID="CAD0-08A7" TYPE="vfat"
/dev/sda5: LABEL="SHARED" UUID="B614-DB8E" TYPE="vfat"
/dev/sda6: UUID="ad8066cd-478f-44bf-9171-9b9c116ab4bf" TYPE="swap"
/dev/sda7: UUID="e28ff18a-af9f-455e-a590-96bfb77dd942" TYPE="ext3"
/dev/sda8: UUID="2da104e0-ce4e-4f6c-acd3-9e7991d8afa2" TYPE="ext3"
Original Resume file:
Code: Select all
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
if [ -z "${resume}" ]; then
exit 0
fi
case $resume in
LABEL=*)
resume="${resume#LABEL=}"
# support any / in LABEL= path (escape to \x2f)
case "${resume}" in
*/*)
if command -v sed >/dev/null 2>&1; then
resume="$(echo ${resume} | sed 's,/,\\x2f,g')"
else
if [ "${resume}" != "${resume#/}" ]; then
resume="\x2f${resume#/}"
fi
if [ "${resume}" != "${resume%/}" ]; then
resume="${resume%/}\x2f"
fi
IFS='/'
newresume=
for s in $resume; do
newresume="${newresume:+${newresume}\\x2f}${s}"
done
unset IFS
resume="${newresume}"
fi
esac
resume="/dev/disk/by-label/${resume}"
;;
UUID=*)
resume="/dev/disk/by-uuid/${resume#UUID=}"
;;
esac
SWAPTYPE=$(wait-for-root "${resume}" ${RESUMEDELAY:-5})
case "${SWAPTYPE}" in
swsuspend|s1suspend|s2suspend|ulsuspend|tuxonice)
if [ -x /bin/plymouth ] && plymouth --ping; then
plymouth message --text="Resuming from $resume"
fi
# hardcode path, uswsusp ships an resume binary too
if [ -n "${resume_offset}" ]; then
/bin/resume ${resume} ${resume_offset}
else
/bin/resume ${resume}
fi
;;
esac
Code: Select all
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
if [ -z "${resume}" ]; then
exit 0
fi
case $resume in
LABEL=*)
resume="${resume#UUID=ad8066cd-478f-44bf-9171-9b9c116ab4bf}"
# support any / in LABEL= path (escape to \x2f)
case "${resume}" in
*/*)
if command -v sed >/dev/null 2>&1; then
resume="$(echo ${resume} | sed 's,/,\\x2f,g')"
else
if [ "${resume}" != "${resume#/}" ]; then
resume="\x2f${resume#/}"
fi
if [ "${resume}" != "${resume%/}" ]; then
resume="${resume%/}\x2f"
fi
IFS='/'
newresume=
for s in $resume; do
newresume="${newresume:+${newresume}\\x2f}${s}"
done
unset IFS
resume="${newresume}"
fi
esac
resume="/dev/disk/by-uuid/${resume#UUID=ad8066cd-478f-44bf-9171-9b9c116ab4bf}"
;;
UUID=*)
resume="/dev/disk/by-uuid/${resume#UUID=ad8066cd-478f-44bf-9171-9b9c116ab4bf}"
;;
esac
SWAPTYPE=$(wait-for-root "${resume}" ${RESUMEDELAY:-5})
case "${SWAPTYPE}" in
swsuspend|s1suspend|s2suspend|ulsuspend|tuxonice)
if [ -x /bin/plymouth ] && plymouth --ping; then
plymouth message --text="Resuming from $resume"
fi
# hardcode path, uswsusp ships an resume binary too
if [ -n "${resume_offset}" ]; then
/bin/resume ${resume} ${resume_offset}
else
/bin/resume ${resume}
fi
;;
esac