Jak zablokować ekran pulpitu za pomocą wiersza polecenia?


Odpowiedzi:


82

Można zablokować komputer, uruchamiając gnome-screensaver-commandz -lflagą tak:

gnome-screensaver-command -l

Działa to jednak tylko wtedy, gdy dla twojej sesji działa Gnome Screensaver (powinno być - chyba że go wyłączyłeś) możesz rozpocząć od wiersza poleceń za pomocą:

gnome-screensaver

10
cinnamon-screensaver-command -ldo cynamonu! ;))

4
Podobnie, użyj mate-screensaver-command -ldla pulpitu MATE.
alanaktion

28
gnome-screensaver-command -l

Jeśli uczestniczysz w innej sesji (stacjonarnej) (np. Konsoli wirtualnej, przełączono na inny login, SSH), jawnie określ ekran ( :0jest to ekran domyślny):

DISPLAY=:0 gnome-screensaver-command -l

Aby odblokować, użyj opcji -d( --deactivate).


1
czy możesz mi wyjaśnić opcję DISPALY =: 0?
Renjith G

1
Przepraszam za mój angielski ... WYŚWIETLACZ jest zmienną i określa, w jakim ekranie ma być renderowany program X Window System (może to być inny monitor). W TTY ta zmienna jest pusta. Domyślnie pierwszy ekran to „: 0.0”. Więc użyj DISPLAY =: x przed poleceniem, wskazuje, na którym wyświetlaczu uruchom polecenie. I użyj DISPLAY =: 0 lub DISPLAY =: 0.0 oznacza: uruchom program na pierwszym ekranie.
Snip,

@RenjithG jest to dość jasne, jeśli się nad tym zastanowić, proszę również nie bądź nieuprzejmy wobec autora poprzedniego komentarza.
ζ--

Działa idealnie, dzięki! Teraz mogę dodać skrót klawiaturowy, aby naprawić moje zepsute polecenie blokady ekranu.
domih


8

W nowszych wersjach GNOME 3 gnome-screensavernie ma już.

Wydaje się, że jest to ogólne rozwiązanie

xdg-screensaver lock

Zamiast tego możesz również bezpośrednio wywołać dbus ( źródło ):

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

Wygląda również na to, że zabrali możliwość odblokowania ekranu z linii poleceń.


tak. bardzo dobra odpowiedź. jedno polecenie, aby rządzić nimi wszystkimi! :-)
solsTiCe

4

Pod KDE dm-tool lockbędzie działać (dla mnie na Kubuntu 15.04).


1

Oto długa droga do jego osiągnięcia (dodanie szybszej metody poniżej):

aby jeszcze łatwiej było zablokować, możesz dodać skrypt wykonywalny do ścieżki wykonywalnej, nazwać go „blokadą”, a wtedy zablokowanie ekranu będzie tak proste, jak wpisanie „blokady” w cli

Oto jak to zrobić:

mkdir ~/bin

vim ~/bin/lock

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

Zapisz i wyjdź

chmod +x ~/bin/lock

nie zapomnij dodać ~ / bin do ~ / .profile - zwróć uwagę na kropkę na początku nazwy jednego słowa ostrzeżenia na ten temat, upewnij się, że dodałeś go do odpowiedniego pliku. Oto, co mówi na ten temat .profile:

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

dlatego chcesz najpierw sprawdzić, czy wyżej wymienione pliki istnieją w twoim katalogu domowym, powinieneś je tam dodać, jeśli nie istnieją, a następnie dodać ścieżkę do bin do .profile

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

dołącz na końcu:

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

w tym momencie możesz uruchomić następujący skrót z cli

you@yourUbuntu:~$ lock

[EDYCJA] Oto szybki i łatwy sposób, aby to zrobić: dodaj alias do pliku ~ / .bashrc, który jest wykonywany przy każdym otwarciu powłoki, zapewniając w ten sposób Alias:

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

wynik jest taki sam, ale szybszy


0

Istnieje również wiele minimalistycznych narzędzi, które naprawdę tylko blokują , nie robią nic więcej. (Może to być bezpieczniejsze, ponieważ generalnie proste programowanie prowadzi do mniej błędów).

Na przykład:

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.