Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I've been able to successfully hibernate and resume my Ubuntu 12.04 Desktop PC using procedure that I've documented in this answer. However, I now have a problem that whenever the PC resumes, it does not locks the screen.

How can I lock the screen after the system resumes back from hibernation?

share|improve this question

3 Answers 3

I have added an alias into ~/.bashrc file

alias hibernate='sudo echo "Hibernating..."; gnome-screensaver-command -l; sudo pm-hibernate;'

So that it locks the screen before hibernating.

share|improve this answer

i have another workaround. i copied this from /etc/acpi/sleep.sh to /etc/acpi/hibernate.sh just before pm-hibernate

if [ x$LOCK_SCREEN = xtrue ]; then
    if pidof xscreensaver > /dev/null; then
    for x in /tmp/.X11-unix/*; do
        displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
        if [ x"$XAUTHORITY" != x"" ]; then
        export DISPLAY=":$displaynum"
        . /usr/share/acpi-support/screenblank

now i can hibernate with lock from power menu or a sleep button

share|improve this answer
It works beautifully on 14.04 with encrypted swap (and home), however I can't see sleep.sh there – just to share experience and push some keywords. –  AliNa Oct 1 '14 at 19:26

I've been able to workaround this issue, by using the following command

sudo pm-hibernate; gnome-screensaver-command -l

Do note that, you should run this as a normal user and not as root user for locking to work, because by default in Ubuntu, there is no password for the root user so after resume, lock-screen can be unlocked by simply shaking the mouse.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.