Utwórz plik w /lib/systemd/system-sleep/
nazwie o nazwie np . lightdm
:
sudo touch /lib/systemd/system-sleep/lightdm
uczyń ten plik wykonywalnym:
sudo chmod +x /lib/systemd/system-sleep/lightdm
Za każdym razem, gdy „zawieszasz” lub „wznawiasz” swój system Ubuntu, ten skrypt będzie uruchamiany.
Otwórz go za pomocą odpowiedniego edytora tekstu, np .: sudo nano /lib/systemd/system-sleep/lightdm
i wklej do niego te linie, a następnie zapisz:
#!/bin/sh
set -e
case "$1" in
pre)
#Store current timestamp (while suspending)
/bin/echo "$(date +%s)" > /tmp/_suspend
;;
post)
#Compute old and current timestamp
oldts="$(cat /tmp/_suspend)"
ts="$(date +%s)"
#Prompt for password if suspended > 10 minutes
if [ $((ts-oldts)) -ge 600 ];
then
export XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
/usr/bin/dm-tool lock
fi
/bin/rm /tmp/_suspend
;;
esac
Co to robi?
Kiedy wprowadzasz Ubuntu w tryb „uśpienia”, ten skrypt zapisze bieżące znaczniki czasu, a następnie podczas wznawiania systemu sprawdzi stare znaczniki czasu z bieżącym, jeśli inny był dłuższy niż „600” sekund (10 minut) pokaże ekran blokady „lightdm”, w przeciwnym razie nic nie robi.
Na ostatni krok:
otwórz „Ustawienia systemu” -> „Jasność i blokada”. Wyłącz pytanie o hasło po przebudzeniu, ponieważ pozostawiamy obsługę ekranu blokady skryptowi.
Po ponownym uruchomieniu lub zamknięciu nadal musisz wprowadzić hasło.