通过CLI锁定屏幕?


8

有什么方法可以锁定屏幕CLI样式?我正在尝试针对尽可能多的桌面管理器(主要是LightDM,但是GDM,KDM,SLiM,XScreensaver等也将是不错的选择),但是我只能为GDM和XScreensaver进行挖掘。

对于GDM,它将是:

gnome-screensaver-command -l

对于XScreensaver:

xscreensaver-command -lock

KDM和LightDM是否有类似的命令?


您可以启动屏幕保护程序并在ssh和ps中查看正在运行的屏幕保护程序,然后从中推断出要运行的命令吗?(我是如何找到gnome-screensaver-command的)
多项式

1
man lightdm看起来不太有希望... moleberry.com/man/l/lightdm.1.html
jasonwryan 2011年

也许您可以尝试通过d-busdbus-send用于发送适当的锁定消息)来控制它们。
andcoz 2011年

@andcoz:dbus-send在谷歌搜索时我看到了一些东西,但遗憾的是它们都没有起作用。我什至查看了LightDM API参考以获取解决方案,但即使如此,它也一无所有。哎呀,我什至试图查看Ubuntu用户切换面板的来源(对不起,无法读取1,000,000的C语言)。我可能会尝试通过电子邮件发送给开发人员列表以寻求帮助...
Blender

@polynomial:这似乎是一个很好的解决方案(也许将其发布为答案?)。我没有第二台用于SSH的计算机,但是我可以尝试每秒打印一次进程列表,以推断出正在发生的事情。
Blender

Answers:


10

我用Google搜索/发送了一些电子邮件,并得到了这两个命令。

锁定屏幕:

xflock4

要激活用户切换:

gdmflexiserver

对于Lightdm,此文件位于一个奇怪的位置(至少在Arch Linux上):

/usr/lib/lightdm/lightdm/gdmflexiserver

如果有人感兴趣,我将这两者合并到XFCE的注销按钮对话框中,因此可在以下位置获得补丁:https : //aur.archlinux.org/packages.php?ID=52816


Xflock4必须具有gnome屏幕保护程序
Prvt_Yadav '18

4

您可以使用锁定X上的所有屏幕保护程序。 xdg-screensaver

xdg-screensaver lock

它将处理血腥细节。


1

有几种与DM无关的简单解决方案,例如alockslockxtrlockmanpage)。请注意,它们甚至可能不会显示任何提示输入密码的输入窗口-您只需在屏幕空白时输入密码,然后按Enter(slock至少是这种情况)。

如果您希望储物柜能够显示屏幕保护程序并在解锁时显示自定义提示,请尝试xlock使用xlockmore软件包随附的软件(请参阅此信息联机帮助页)。


我不是在寻找锁定屏幕(plock为此,我有自己的:P)。我正在寻找一种触发锁定屏幕的方法(无论它是什么)。
Blender

1
然后,xautolock(这是一部分xlockmore)提供此功能-看看最后两个链接我张贴,并xautolock手册页
rozcietrzewiacz 2011年

1

对于与环境无关的锁应用程序,i3lock还可以使用该应用程序设置锁屏背景。

对于LightDM,您可以light-locker在会话中作为后台进程运行。屏幕保护程序启动/系统从挂起状态恢复后,它将立即锁定您的会话。


0

这不是很好,但是通过cli(命令行)从屏幕保护程序解锁kde或lightdm会话的有效解决方案:

qdbus | grep kscreenlocker_greet | xargs -I {} qdbus {} /MainApplication quit
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.