如何从命令行锁定桌面屏幕?
您可以通过使用gnome-screensaver-command
标志运行-l
来锁定计算机,如下所示:
gnome-screensaver-command -l
但是,这只有在您的会话中运行Gnome Screensaver时才会起作用(应该是 - 除非您已禁用它),您可以从命令行启动它:
gnome-screensaver
gnome-screensaver-command -l
如果您处于不同的(桌面)会话(例如,虚拟控制台,切换到另一个登录,SSH),请明确指定显示(:0
是默认显示):
DISPLAY=:0 gnome-screensaver-command -l
要解锁,请使用-d
(--deactivate
)选项。
gnome-screensaver-command --lock
会做到这一点。
在较新版本的GNOME 3中,gnome-screensaver
已不复存在。
通用解决方案似乎是
xdg-screensaver lock
您也可以直接调用dbus( source ):
dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
它似乎也已经取消了un从命令行锁定屏幕的可能性。
在KDE下dm-tool lock
将起作用(对我来说,在Kubuntu 15.04上)。
这是一个很长的方法来完成它(在下面添加一个更快的方法):
为了使它更容易锁定,您可以将可执行脚本添加到可执行路径,将其称为“锁定”,然后锁定屏幕就像在cli中键入“lock”一样简单
这是怎么做的:
mkdir ~/bin
vim ~/bin/lock
#!/bin/bash
gnome-screensaver-command -l
保存并退出
chmod +x ~/bin/lock
不要忘记将〜/ bin添加到你的〜/ .profile中 - 注意文件名开头的点一个注意事项,请确保将其添加到正确的文件中。以下是.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启动以下快捷方式
[email protected]:~$ lock
[编辑]以下是快速简便的方法:为〜/ .bashrc文件添加别名,每次打开Shell时都会执行该别名,从而确保Alias持续存在:
vim ~/.bashrc
# set lockscreen
alias lock="gnome-screensaver-command -l"
结果是一样的,但更快