GNU/Linux >> Znalost Linux >  >> Ubuntu

Lze konzoli pozastavit a požádat o heslo při probuzení?

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.

Související:Jak získat přístup ke sdílené složce ve Virtualboxu v Ubuntu?

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.


Ubuntu
  1. Mohu vytvořit vyhrazený oddíl pro Gparted a spustit z Grub?

  2. Sudo už nepožaduje heslo?

  3. Poháry Admin Uživatel a heslo Prohnané?

  1. Kde mohu najít a nainstalovat závislosti pro pygame?

  2. jak mohu vyhledat soubory a zazipovat je do jednoho souboru zip

  3. Jaké je výchozí uživatelské jméno a heslo pro Ubuntu Live CD?

  1. Jak přimět Firefox, aby používal úschovnu klíčů Gnome pro ukládání a načítání hesel?

  2. Deja-dup stále žádá o heslo?

  3. Jak může odpadkový koš fungovat a kde k němu najdu oficiální dokumentaci, reference nebo specifikace?