I když mám podezření, že to v současné době není možné, rád bych se zeptal, protože by to bylo podle mého názoru velmi užitečné. Protože když zavřu víko a jsem v GUI, můj počítač se pozastaví a poté vyžaduje heslo k odemčení. Pokud však udělám totéž v konzoli, nedojde k pozastavení a nebude po mě vyžadovat heslo pro opětovné přihlášení.
Nyní to může být potenciální bezpečnostní riziko, takže mě zajímalo, jestli existuje způsob, jak pozastavit vše běžící konzolou, když je víko zavřené, a tak, že když se stroj probudí, musíte zadat své heslo zpět do okna konzoly, takže „odemkne“ vaši relaci? Používám Ubuntu GNOME 15.04. Když říkám konzole, mám na mysli TTY.
Podíval jsem se na TTY[1-6]:Uzamknout obrazovku po prodlevě (jako spořič obrazovky), ale nemám pocit, že plně odpovídá na mou otázku, zejména na pozastavení všeho běžícího, aby to mohlo pokračovat po obnovení.
Používám Ubuntu GNOME 15.10 s GNOME 3.18.
Přijatá odpověď:
Další otázka, kterou Muru propojil v komentářích ( TTY[1-6]:Uzamknout obrazovku po prodlevě (jako spořič obrazovky) ) nám nabízí nástroj k zamykání tty , vlock
. Na nejjednodušší úrovni můžete kombinovat vlock -a
s pm-suspend
do .bashrc
funkce nebo skript. Tady je můj:
$ cat lockTTY.sh
#!/bin/bash
(sleep 3; sudo pm-suspend) &
vlock -a
Co se tady děje ? V podstatě spouštíme pm-suspend
se zpožděním v subshell, na pozadí. Mezitím používáme vlock -a
zamknout všechny ttys. Po 3 sekundách se notebook vypne.
Háček je zde však sudo pm-suspend
část. Musíte zabránit sudo
od požadavku na heslo pro pm-suspend
. Abychom toho dosáhli, přidáme následující řádek na konec /etc/sudosers
soubor
$USERNAME ALL = NOPASSWD: /usr/sbin/pm-suspend
Samozřejmě nahraďte $USERNAME
s vaším skutečným uživatelským jménem. Můžete zavolat sudo visudo
otevřete tento soubor pomocí výchozího textového editoru nastaveného v /etc/alternatives/editor
, jen pro jistotu, ale udělá to každý editor volaný s patřičnými oprávněními.
Co nám tento skript umožňuje? Pozastavit a uzamknout se stále běžícími procesy. vlock -a
má velkou výhodu v tom, že zabraňuje přepínání na jiné konzole, takže se nezamyká pouze jedna konzole, ale všechny – nemůžete přepnout na jiný tty, pokud je jeden uzamčen.
Můžete také nejprve pozastavit a poté uzamknout, tj. zavolat pm-suspend
první a vlock -a
druhý. Ale to znamená, že po obnovení existuje možnost, že někdo uvidí vaši obrazovku na zlomek sekundy před vlock
kopne.
Jaké by bylo jednoduché a špinavé řešení v případě, že nedůvěřujete vlock
a nechce se ti to instalovat? Vytvořte skript /etc/pm/sleep.d/10_lockTTY
s následujícím obsahem:
#!/bin/bash
case "${1}" in
hibernate|sleep)
;;
resume|thaw)
for NUM in $(seq 1 6); do service tty$NUM restart; done
;;
esac
Toto resetuje všechny tty po návratu z režimu spánku, ale pozor – všechny procesy, které jste tam měli, budou zabity.