Como habilitar o Wake On Lan (WOL) no Ubuntu 16.04 LTS?
Eu encontrei uma maneira melhor que funcionou para mim. Pelo menos de uma maneira mais limpa. Aparentemente, o Ubuntu mudou o inicio do systemd , no Ubuntu 15.04, Ubuntu 16.04 e presumivelmente nas próximas versões também. Eu sou novo nos dois sistemas, mas isso funcionou para mim.
Estou postando isso porque, enquanto pesquisava no Ubuntu 16 wol e outras pesquisas semelhantes, me deparei com esse post várias vezes. Isso poderia ajudar outra pessoa.
Para manter o WOL funcionando, tive que reativá-lo sempre que o sistema inicializou. Para evitar fazer isso manualmente, usei o systemd para essa finalidade. Isto é o que eu fiz:
Primeiro, crie o arquivo /etc/systemd/system/[email protected]
(mantenha o símbolo @). Coloque isso nele:
[Unit]
Description=Wake-on-LAN for %i
Requires=network.target
After=network.target
[Service]
ExecStart=/sbin/ethtool -s %i wol g
Type=oneshot
[Install]
WantedBy=multi-user.target
Habilite isso para a interface na inicialização, execute o seguinte comando (altere eth3 com sua interface):
systemctl enable wol@eth3
Você deve ver algo assim:
Created symlink from /etc/systemd/system/multi-user.target.wants/[email protected] to /etc/systemd/system/[email protected].
Para verificar se está ativado, execute o seguinte comando (altere eth3 com sua interface) e ele deverá retornar enabled
:
systemctl is-enabled wol@eth3
Para testar isso, reinicie e execute (altere eth3 com sua interface):
ethtool eth3
Você deve ver uma linha com o seguinte:
Wake-on: g
Fontes:
iniciante:
Upstart é uma substituição baseada em eventos para o daemon / sbin / init que lida com o início de tarefas e serviços durante a inicialização, interrompendo-os durante o desligamento e supervisionando-os enquanto o sistema está em execução.
- upstart - daemon init baseado em evento
systemd:
systemd é um conjunto de blocos de construção básicos para um sistema Linux. Ele fornece um gerenciador de sistema e serviço que é executado como PID 1 e inicia o restante do sistema. (...)
- systemd
No Ubuntu 16.04, configure
WOL_DISABLE=N
-o/etc/default/tlp
para evitar a desabilitação do WOL pelo gerenciamento de energia TLP.http://linrunner.de/en/tlp/docs/tlp-configuration.html
Adicionar
NETDOWN=no
em/etc/default/halt
para evitar desligar a placa de rede durante o desligamentoAtivar Wake on LAN em
/etc/network/interfaces
quando a configuração de rede estática for usada.Ative o wake on lan no BIOS, entre na configuração do BIOS e procure por algo chamado "Evento Wake up on PCI", "Wake up on LAN" ou similar. Altere-o para que ele esteja ativado. Salve suas configurações e reinicie.
https://help.ubuntu.com/community/WakeOnLan
Aviso: algumas placas-mãe / controladoras de rede não suportam WOL desde a inicialização a frio (estado S5, onde a energia do sistema é fisicamente desligada e ligada novamente). Nesse caso, pelo menos um ciclo de energia (inicialização, desligamento) deve ser realizado. Para atenuar o problema, o BIOS pode ser configurado para ligar quando o AC for restaurado e agendar um desligamento no Ubuntu posteriormente. Consulte o manual da placa-mãe para obter mais detalhes.
fonte
WOL_DISABLE=N
eNETDOWN=no
devem fazer parte de help.ubuntu.com/community/WakeOnLanPara que o WOL funcione, verifique se a interface Ethernet está sendo desligada corretamente pelo sistema quando você desligar.
Tente o seguinte:
Crie um script bash chamado wol_poweroff.sh no diretório /etc/rc6.d/ :
Coloque este código nele:
Copie-o para o diretório /etc/rc0.d (para que também funcione com parada ):
Torne os dois executáveis:
Agora teste para ver se funciona desligando sua máquina com
sudo shutdown now
ousudo poweroff
usando uma ferramenta WOL para enviar um pacote mágico a ela.Essa foi a única coisa que funcionou para mim. Encontrei essas etapas em um relatório de bug no launchpad.net.
Segundo o autor, Robbie Williamson, isso funciona devido ao seguinte:
Fonte: https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/981461
fonte
Execute o seguinte no terminal:
você deve ver um g ao lado para acordar na lan após escrever o segundo comando
fonte
fonte
Se você usa o NetworkManager, pode ativar o WOL via
nmcli
:Lembre-se de NAME da conexão do "802-3-ehternet" TYPE para DEVICE de interesse. Digamos que o nome seja "Conexão com fio 1". Em seguida, modifique-o corretamente:
Para obter seu endereço MAC:
A partir de agora você pode desligá-lo e ligá-lo de outra máquina na mesma LAN por
wakeonlan 1a:2b:3c:4d:5e:6f
comando, onde1a:2b:3c:4d:5e:6f
está o endereço MAC da placa de LAN da etapa anterior.fonte
Além dos parâmetros sugeridos pelo @nkef, você pode definir o seguinte em / etc / network / interfaces se usar o DHCP em vez de configurações IP estáticas para o adaptador LAN (aqui chamado eth0):
(testado no Ubuntu 16.04 LTS).
fonte
Isso também me incomodou no Ubuntu 18.04 (instalação sem cabeçalho / instalação mínima), infelizmente as respostas já listadas aqui, embora pareçam funcionar às vezes, não fornecerão uma solução confiável, pois criam condições de corrida ou lutam com o systemd, netplan e udev.
Eu tentei essa abordagem também no começo e parecia funcionar. Estou programando um sistema para inicializar todas as noites via WakeOnLan para executar backups, pois o BIOS do sistema não fornece uma opção AC ativada.
Funcionaria por alguns dias e depois se recusava a acordar, ligando-o manualmente e executando o ethtool revelou que a WoL havia sido desativada:
Então, imaginei que outra coisa precisava ser desativada e que tive muitos desses problemas nos últimos anos com o systemd assumindo partes do sistema que decidi começar por aqui, e eis que:
WakeOnLan = .. .. O padrão é desativado.
https://www.freedesktop.org/software/systemd/man/systemd.link.html
Os exemplos on-line mostram algo como:
/etc/systemd/network/50-wired.link
Como sempre isso ainda não estava funcionando. Então me deparei com isso:
que resultou em:
E o que encontro em /run/systemd/network/10-netplan-eno1.link?
Solução :
Como eu já tinha o arquivo systemd .link, simplesmente o renomeei para 00-wired.link, reiniciei e agora o ethtool eno1 reporta:
Sem serviços extras exclusivamente com o objetivo de tentar habilitar a WoL.
fonte