如何通过命令行锁定桌面屏幕?


Answers:


82

您可以通过运行锁定计算机gnome-screensaver-command-l像这样的标志:

gnome-screensaver-command -l

但是,只有在为会话运行Gnome屏幕保护程序(应该是-除非已将其禁用)时,此方法才有效,您可以从命令行使用以下命令启动它:

gnome-screensaver

10
cinnamon-screensaver-command -l肉桂!;))

4
同样,mate-screensaver-command -l用于MATE桌面。
alanaktion

28
gnome-screensaver-command -l

如果您处于其他(桌面)会话中(例如,虚拟控制台,切换到另一个登录名,SSH),请显式指定显示(:0默认显示):

DISPLAY=:0 gnome-screensaver-command -l

要解锁,请使用-d--deactivate)选项。


1
您能告诉我DISPALY =:0选项吗?
Renjith G

1
对不起,我的英语... DISPLAY是一个变量,它定义X Window System程序在其中呈现的显示(可以是另一个监视器)。在TTY中,此变量为空。默认情况下,第一个显示为“:0.0”。因此,在命令前使用DISPLAY =:x,指示在哪个显示中运行命令。并使用DISPLAY =:0或DISPLAY =:0.0表示:在第一个显示屏上运行程序。
剪断

@RenjithG如果您考虑一下,这很清楚,也请不要对之前评论的作者不礼貌。
ζ--

这很完美,谢谢!现在,我可以添加键盘快捷键来修复损坏的锁定屏幕命令。
domih's

18

gnome-screensaver-command --lock 会做的。


8

在较新版本的GNOME 3中,gnome-screensaver仅此而已。

通用解决方案似乎是

xdg-screensaver lock

您也可以直接调用dbus():

dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock

似乎他们也取消了从命令行解锁屏幕的可能性。


是。很好的答案。一个命令来统治他们!:-)
solsTiCe

4

在KDE下dm-tool lock可以工作(对我来说,在Kubuntu 15.04上)。


1

这是完成此任务的一种很长的方法(在下面添加一个更快的方法):

为了使锁定更加容易,您可以将可执行脚本添加到可执行路径,将其称为“ lock”,然后锁定屏幕就像在cli中键入“ lock”一样简单。

方法如下:

mkdir ~/bin

vim ~/bin/lock

#!/bin/bash
gnome-screensaver-command -l

保存并退出

chmod +x ~/bin/lock

不要忘记在〜/ .profile文件中添加〜/ bin-注意文件名开头的点,请注意这一点,请确保将其添加到正确的文件中。这是.profile关于它的内容:

# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.

因此,您首先要检查主目录中是否存在上述文件,应将其添加到主目录中,如果不存在,则将bin的路径添加到.profile中

vim ~/.profile # or one of the the other files if they exist

最后添加以下内容:

# set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"

此时,您可以从cli启动以下快捷方式

you@yourUbuntu:~$ lock

[编辑]这是快速简便的方法: 在〜/ .bashrc文件中添加一个别名,该别名在每次打开外壳程序时都会执行,从而确保Alias持久存在:

vim ~/.bashrc
# set lockscreen
alias lock="gnome-screensaver-command -l"

结果是一样的,但是更快


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.