Como bloqueio a tela da área de trabalho via linha de comando?

Respostas:

82

Você pode bloquear o computador executando gnome-screensaver-commando -lsinalizador da seguinte maneira:

gnome-screensaver-command -l

No entanto, isso só funcionará se você tiver o Gnome Screensaver em execução na sua sessão (deve ser - a menos que você o tenha desativado), você pode iniciá-lo na linha de comando com:

gnome-screensaver
Marco Ceppi
fonte
10
cinnamon-screensaver-command -lpara canela! ;))
4
Da mesma forma, use mate-screensaver-command -lpara o MATE desktop.
alanaktion
28
gnome-screensaver-command -l

Se você estiver em uma sessão (desktop) diferente (por exemplo, console virtual, alternado para outro login, SSH), especifique a exibição explicitamente ( :0é a exibição padrão):

DISPLAY=:0 gnome-screensaver-command -l

Para desbloquear, use a opção -d( --deactivate).

Recorte
fonte
1
você pode me esclarecer a opção DISPALY =: 0?
precisa
1
Desculpe pelo meu inglês ... DISPLAY é uma variável e define em qual exibição um programa do Sistema X Window é renderizado (pode ser outro monitor). Em TTY esta variável está vazia. Por padrão, a primeira exibição é ": 0.0". Portanto, use DISPLAY =: x antes do seu comando, indica em qual tela o comando é executado. E use DISPLAY =: 0 ou DISPLAY =: 0.0 indica: execute o programa no primeiro visor.
Recorte
@ RenjithG isso é bastante claro se você pensar sobre isso, também não seja rude com o autor do comentário anterior.
ζ--
Isso funciona perfeito, thx! Agora posso adicionar um atalho de teclado para corrigir meu comando de tela de bloqueio quebrado.
domih
18

gnome-screensaver-command --lock vai fazer isso.

mgunes
fonte
8

Nas versões mais recentes do GNOME 3, gnome-screensavernão existe mais.

A solução genérica parece ser

xdg-screensaver lock

Você também pode ligar diretamente para o dbus ( fonte ):

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

Parece também que eles tiraram a possibilidade de desbloquear a tela da linha de comando.

Marian
fonte
sim. resposta muito boa um comando para governar todos eles! :-)
solsTiCe
4

No KDE dm-tool lockfuncionará (para mim no Kubuntu 15.04).

pbhj
fonte
1

Aqui está um longo caminho para alcançá-lo (adicionando uma maneira mais rápida abaixo):

para facilitar ainda mais o bloqueio, você pode adicionar um script executável a um caminho executável, chamá-lo de "bloqueio" e, em seguida, o bloqueio da tela será tão fácil quanto digitar "bloquear" no cli

Veja como fazê-lo:

mkdir ~/bin

vim ~/bin/lock

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

salvar e sair

chmod +x ~/bin/lock

não esqueça de adicionar ~ / bin ao seu perfil ~ /. - observe o ponto no início do nome do arquivo com uma palavra de cautela sobre isso, certifique-se de adicioná-lo ao arquivo correto. Aqui está o que o .profile diz sobre isso:

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

portanto, você deseja verificar primeiro se os arquivos mencionados acima existem no diretório inicial, adicione-os, se não existirem, e adicione o caminho para bin no arquivo .profile

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

acrescente o seguinte no final:

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

Nesse ponto, você pode iniciar o seguinte atalho do cli

you@yourUbuntu:~$ lock

[EDIT] Aqui está a maneira rápida e fácil de fazer isso: adicione um alias ao seu arquivo ~ / .bashrc, que é executado toda vez que um shell é aberto, garantindo assim que o Alias ​​persista:

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

o resultado é o mesmo, mas mais rápido

George Mogilevsky
fonte
0

Também existem muitos utilitários minimalistas que realmente bloqueiam , eles não fazem mais nada. (Isso pode ser mais seguro, pois, em geral, manter o software simples leva a menos erros.)

Por exemplo:

Alois Mahdal
fonte