Segue o código do script
wifi-wakeup:
#!/bin/sh
# Autor: Marcos Antonio Mello Estevão.
# Nome do script: wifi-wakeup.
# Este script é baseado no:
# /etc/pm/sleep.d/60_wpa_supplicant
# Este é um script de ação que baixa e levanta o móduli rt73usb do adaptador WIFI.
# O objetivo é executar durante o evento RESUME, no caso do SUSPEND e THAW, no caso do HIBERNATE.
PATH=/sbin:/usr/sbin:/bin:/usr/bin
resume_action()
{
rmmod rt73usb
modprobe rt73usb
}
case "$1" in
resume|thaw|post)
resume_action
;;
esac
exit 0
O local correto onde colocar o script
O script é bem simples e pode ser utilizado tanto no pm-utils quanto no systemd e foi testado nos dois softwares.
Em pm-utils:
O caminho dos scripts pre e post do pm-utils está localizado em:
- /usr/lib/pm-utils/sleep.d/
Em systemd:
O caminho dos scripts pre e post do systemd está localizado em:
- /lib/systemd/system-sleep/
Uma forma de identificar o caminho adequado para abrigar o script é conhecer o local onde o script hdparm é executado na função sleep. O comando a seguir irá ajudá-lo:
# find /lib /usr -name "*hdparm*" | grep sleep
A saída do comando é algo semelhante a isto:
/lib/systemd/system-sleep/hdparm
/usr/lib/pm-utils/sleep.d/95hdparm-apm
Obs.: veja que em pm-utils é necessário colocar um número inteiro de dois dígitos que define a ordem da sequência da execução do script. Neste caso, sugiro colocá-lo mais ao final.
Agora faça o teste.
Conclusão
O que motivou a escrever este tutorial foi a dificuldade de achar tutoriais em português que tratam deste problema.
Sei que a solução abrange apenas a este problema em específico, embora seja possível utilizar as informações colocadas aqui para solucionar outros problemas semelhantes.
Espero que ajude e um abraço a todos.
"Bem-aventurada é a nação cujo Deus é o Senhor, e o povo ao qual escolheu para sua herança."
Salmos 33:12