Crie um arquivo dentro /lib/systemd/system-sleep/
, nomeado por exemplo lightdm
::
sudo touch /lib/systemd/system-sleep/lightdm
torne este arquivo executável:
sudo chmod +x /lib/systemd/system-sleep/lightdm
Toda vez que você "suspender" ou "reiniciar" seu Ubuntu, esse script será executado.
Abra-o usando o editor de texto desejado, por exemplo: sudo nano /lib/systemd/system-sleep/lightdm
e cole estas linhas nele e salve-o:
#!/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
O que faz?
Quando você está colocando o Ubuntu no modo "inativo", esse script salva os carimbos de data / hora atuais e, ao reiniciar o sistema, verifica os carimbos de data / hora antigos com o atual, se o diferente for superior a "600" segundo (10 minutos), será exibido você "lightdm" tela de bloqueio caso contrário, ele não faz nada.
Para o último passo:
abra "configurações do sistema" -> "Brilho e bloqueio". Desative a solicitação de senha após acordar da suspensão, pois deixamos de manipular a tela de bloqueio para o script.
Após a reinicialização ou desligamento, você ainda precisará digitar sua senha.