如何从终端锁定屏幕?
我使用的是Ubuntu 12.04。 有没有办法从终端命令或脚本锁定屏幕或会话?
简单:
gnome-screensaver-command -l
如果屏幕保护程序在激活时设置为锁定(请参阅屏幕保护程序设置),则以下内容也可以正常工作,因为该命令会激活屏幕保护程序:
gnome-screensaver-command -a
您可以通过编辑主目录中的.bashrc
(或.bash_aliases
)文件为命令添加别名:
gedit $HOME/.bashrc
并添加以下行:
alias lock='gnome-screensaver-command -l'
然后从终端:
source .profile
这将激活别名。 从现在开始,终端中的别名lock
将具有锁定屏幕的效果。
除了1月所说的,这也有效:
gnome-screensaver-command --lock
要么
gnome-screensaver-command -l
根据gnome-screensaver-command
手册页…
-l, --lock Tells the running screensaver process to lock the screen immediately -a, --activate Turn the screensaver on (blank the screen)
为了进一步说明,这里是另一个问题/答案(也是1月),它描述了调用锁和激活屏幕保护程序之间的区别:
gnome-screensaver-command -a和gnome-screensaver-command -l之间的区别
请安装vlock 。 然后你可以切换到VT(文本终端,使用Ctrl + Alt + F1 )并运行
vlock -a -s
无论您是否运行X11,这都有效。
如果您需要在非GUI环境中锁定终端上的屏幕,您可以使用屏幕
在screen
按下以下按键组合以锁定终端。
Ctrl + a
Ctrl + x
从Ubuntu 14.04开始,Unity的锁屏不再使用gnome-screensaver。 命令gnome-screensaver-command -l
在大多数情况下仍然有效,但是看到这个例外的问题 。
如果该命令不起作用(例如,没有安装gnome-screensaver),则可以通过终端中的此命令启动正确的Unity锁定屏幕(而不是可以切换用户的欢迎程序):
dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
$!(sleep 10s ; xset dpms force suspend) & xdg-screensaver lock
这将在锁定模式下启动屏幕保护程序,然后将显示器置于待机状态。 甜蜜而简单,没有sudo。 命令行或shell脚本工作正常。 我用这个键盘热键。 Ubuntu Mate 15.10
对于LightDM用户,请尝试使用dm-tool switch-to-greeter
。
使用快捷键Ctrl + Alt + L从终端锁定屏幕的肮脏黑客:
-
从软件中心或终端安装xdotool,如下所示:
sudo apt-get install xdotool
-
键入以下内容以从终端锁定屏幕:
xdotool key Ctrl+alt+l
有关更多信息,请参阅xdotool的手册页。
这取决于您的显示管理器。 我有lightdm,我可以用dm-tool lock
来调出锁屏。 但是,这并不是很安全,我找到了一种绕过它的简单方法。
在我的情况下, xdg-screensaver lock
完全正常。 另外我通过设置保存它,或者当我按下窗口 + L时它会立即锁定屏幕
类似的情况锁定lubuntu屏幕
在lubuntu 17.10(不是ubuntu)这个工作xset dpms force off