A maneira preferida de fazer isso em um sistema operacional com o systemd é usando /usr/lib/systemd/system-sleep/
:
systemd executa todos os executáveis em /usr/lib/systemd/system-sleep/
, passando dois argumentos para cada um deles:
Argumento 1: pré ou pós, dependendo se a máquina vai dormir ou acordar Argumento 2: suspender, hibernar ou dormir híbrido, dependendo de qual está sendo invocado
Em contraste com pm-utils
, o systemd executará esses scripts simultaneamente e não um após o outro.
A saída de qualquer script personalizado será registrada por systemd-suspend.service, systemd-hibernate.service ou systemd-hybrid-sleep.service. Você pode ver sua saída no diário do systemd
Um script de exemplo:
#!/bin/sh
case $1/$2 in
pre/*)
echo "Going to $2..."
;;
post/*)
echo "Waking up from $2..."
;;
esac
Extraído de: link