Um script de inicialização executado depois que as placas de rede são configuradas deve fazer o truque. O Ubuntu usa upstart. Depois de ler sobre trabalhos iniciantes, ethtool, escrever um script inicial e pesquisar as interwebs em busca de uma solução melhor, eu criei isso jevinskie (você vai querer colocar isso em um arquivo em /etc/init
):
start on started network
script
for interface in $(cut -d: -f1 /proc/net/dev | tail -n +3); do
logger -t 'wakeonlan init script' enabling wake on lan for $interface
ethtool -s $interface wol g
done
end script
- Inicia quando as nics são inicializadas
- Pega os nomes legais de / proc / net / dev
- Registra ações no syslog
- Atua em todas as nics encontradas
-
Requer o ethtool, portanto, verifique se ele está instalado primeiro:
sudo apt-get install ethtool
Se você quiser imbuir apenas um nic com o poder do despertar, algo como isto é mais apropriado:
start on started network
script
interface=eth0
logger -t 'wakeonlan init script' enabling wake on lan for $interface
ethtool -s $interface wol g
end script