это баг кде-4. У меня тоже была такая трабла с разлоченым экраном после выхода из "suspend to ram". Блять, если бы не умные англоязычные хакеры, то пиздец.
Посилання видалено
и вот сам скрипт тут лежит:
Посилання видалено
Короче, создаешь файлик /usr/lib/pm-utils/sleep.d/50kde4-lock, ставишь права такие же, как и всех остальных в той директории и внутрь его копишь этот скрипт:
#!/bin/bash
#/usr/lib/pm-utils/sleep.d/50kde4-lock
# getXuser() is coped from acpi: /usr/share/acpi-support/power-funcs
getXuser() {
user=`finger| grep -m1 ":$displaynum " | awk '{print $1}'`
if [ x"$user" = x"" ]; then
user=`finger| grep -m1 ":$displaynum" | awk '{print $1}'`
fi
if [ x"$user" != x"" ]; then
userhome=`getent passwd $user | cut -d: -f6`
export XAUTHORITY=$userhome/.Xauthority
else
export XAUTHORITY=""
fi
}
. /usr/lib/pm-utils/functions
case "$1" in
thaw|resume)
for x in /tmp/.X11-unix/*; do
displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
getXuser;
if [ x"$XAUTHORITY" != x"" ]; then
export DISPLAY=":$displaynum"
su $user -c "dbus-send --session --dest=org.freedesktop.ScreenSaver --type=method_call --print-reply /ScreenSaver org.freedesktop.ScreenSaver.Lock"
fi
done
;;
*)
;;
esac
exit $?
только лучше скрипт тащи прямо со ссылки, а то тут форматирование не работает при копипастинге.