Este script simples faz o truque:
#!/bin/sh
case "$1" in
hibernate|suspend)
/usr/bin/vlock -ans &
;;
thaw|resume)
;;
*) exit $NA
;;
esac
No X, usei o seguinte script ( daqui ) para bloquear o computador com o i3lock sempre que pm-suspend
ou pm-hibernate
são invocados.
/etc/pm/sleep.d/00screensaver-lock:
#!/bin/sh
# 00screensaver-lock: lock workstation on hibernate or suspend
username=andreas
userhome=/home/$username
export XAUTHORITY="$userhome/.Xauthority"
export DISPLAY=":0"
case "$1" in
hibernate|suspend)
su $username -c "/usr/bin/i3lock &
;;
thaw|resume)
;;
*) exit $NA
;;
esac
Agora estou no processo de configurar um laptop somente para o console (uma instalação Debian mínima sem o servidor X instalado.)
Eu tentei usar o script acima nessa máquina para bloquear minha sessão usando o vlock. (Ou seja: eu mudei i3lock
com vlock
na versão do script que estou usando na máquina do console.) Eu também tentei comentar as duas linhas começando com export XAUTHORITY
e export DISPLAY=":0"
como eles são específicos do X.
O script não funciona na máquina no-X.
Como devo chamar o vlock toda vez que o computador suspender / hibernar?