Créez un fichier à l'intérieur /lib/systemd/system-sleep/
, nommé par exemple lightdm
::
sudo touch /lib/systemd/system-sleep/lightdm
rendre ce fichier exécutable:
sudo chmod +x /lib/systemd/system-sleep/lightdm
Chaque fois que vous "suspendez" ou "reprenez" votre Ubuntu, ce script va être exécuté.
Ouvrez-le en utilisant l'éditeur de texte souhaité, par exemple sudo nano /lib/systemd/system-sleep/lightdm
:, et collez-y ces lignes, puis enregistrez-le:
#!/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
Ce qu'il fait?
Lorsque vous mettez votre Ubuntu en mode "veille", ce script enregistre les horodatages actuels, puis lors de la reprise du système, il vérifie les anciens horodatages avec l'actuel, si le différent était supérieur à "600" secondes (10 Menuets), il va s'afficher vous "lightdm" écran de verrouillage sinon il ne fait rien.
Pour la dernière étape:
ouvrez "Paramètres système" -> "Luminosité et verrouillage". Désactivez la demande de mot de passe après le réveil de la suspension, car nous laissons la gestion de l'écran de verrouillage au script.
Après le redémarrage ou l'arrêt, vous devez toujours entrer votre mot de passe.