私がdebian、ubuntu、およびrhel7でうまく使用した回避策は、gnomeセッションにログインすると自動的に開始される短いpythonスクリプトを作成することです。rhel7では、ロックするキーの組み合わせはsuper + lであることに注意してください。
次のように/etc/xdg/autostart/gscreenlock.pyを作成します。
#!/usr/bin/python
import dbus
import dbus.service
import dbus.glib
import gobject
import os
class ScreenDbusObj(dbus.service.Object):
def __init__(self):
session_bus = dbus.SessionBus()
bus_name=dbus.service.BusName("org.gnome.ScreenSaver",bus=session_bus)
dbus.service.Object.__init__(self,bus_name, '/org/gnome/ScreenSaver')
@dbus.service.method("org.gnome.ScreenSaver")
def Lock(self):
os.system( "xscreensaver-command -lock" )
if __name__ == '__main__':
object=ScreenDbusObj()
gobject.MainLoop().run()
次に、実行可能にします。
chmod a+rx /etc/xdg/autostart/gscreenlock.py
/etc/xdg/autostart/gscreenlock.desktopを次のように編集します。
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=gscreenlock
TryExec=/etc/xdg/autostart/gscreenlock.py
Exec=/etc/xdg/autostart/gscreenlock.py
NoDisplay=true
NotShowIn=XFCE;KDE;
Comment=Allows screen locking in gnome
Ctrl + Alt + L
。動作しますか?