Mit der Wake-on-LAN-Funktion (WoL) können Sie einen Linux-Computer aus der Ferne aktivieren, indem Sie ein spezielles Broadcast-Ethernet-Paket (Magic Packet) senden, das die MAC-Adresse des Hosts enthält, den Sie einschalten möchten.
Bevor Sie WoL unter Linux aktivieren, müssen Sie sicherstellen, dass Ihr Motherboard diese Funktion unterstützt, und sie in den BIOS-Einstellungen aktivieren. Starten Sie den Host neu und öffnen Sie die BIOS-Einstellungen (UEFI). Der Name der WoL-Option kann je nach Hersteller, Motherboard-Modell und Firmware-Version unterschiedlich sein. Diese Option kann aufgerufen werdenWake on PCI/PCI-E,Power or Resume on PCI/PCI-E,S5 Wake on LAN. Suchen und aktivieren Sie diese Option. Speichern Sie die BIOS-Einstellungen.
DerethtoolDas Tool wird häufig zum Verwalten von Wake On LAN unter Linux verwendet. Installieren Sie es:
$ sudo apt install ethtool
Netzwerkschnittstellen auflisten:
$ ifconfig
Kopieren Sie den Schnittstellennamen Ihres Ethernet-LAN-Adapters und führen Sie den Befehl aus:
$ sudo ethtool enp3s0 | grep "Wake-on"

In diesem Fall ist WoL deaktiviert (D).
Aktivieren Sie Wake on LAN für den jeweiligen Adapter:
$ sudo ethtool --change enp3s0 wol g
Die Option „Wake On Lan“ sollte sich in ändernG(Wake on MagicPacket).
Der 'netlink error: cannot enable unsupported WoL mode (offset 36)' zeigt an, dass WoL vom Netzwerkadapter nicht unterstützt wird oder im BIOS deaktiviert ist.


Sie können Ihren Linux-Host jetzt aus der Ferne aktivieren. Allerdings wird die WoL-Option der Netzwerkschnittstelle beim Neustart zurückgesetzt. Es gibt mehrere Möglichkeiten, Wake on LAN für den Adapter automatisch zu aktivieren, wenn der Computer startet.
NetzwerkManagerist das Standard-Netzwerkverwaltungstool in vielen Linux-Distributionen, einschließlich Ubuntu, Rocky und Debian. In NetworkManager können Sie WoL für einen Adapter mithilfe von aktivierennmcliBefehl:
$ nmcli con show
Kopieren Sie den Namen der Ethernet-Verbindung (in diesem Beispiel kabelgebunden) und aktivieren Sie WoL:
$ sudo nmcli c modify "wired" 802-3-ethernet.wake-on-lan magic
Überprüfen Sie, ob Wake on LAN auf der Schnittstelle aktiviert ist:
$ nmcli c show "wired" | grep 802-3-eth
VERWANDT:So erstellen Sie einen bootfähigen Linux Mint-USB-Stick unter Windows 10


Für andere Linux-Distributionen können Sie verwendensystemdum WakeOnLan beim Booten zu aktivieren. Erstellen Sie eine neue Systemd-Einheit:
$ sudo systemctl edit wol.service --full --force
Fügen Sie die folgende Konfiguration hinzu:
[Unit] Description=Enable Wake-on-LAN After=network-online.target [Service] Type=oneshot ExecStart=/sbin/ethtool --change enp3s0 wol g [Install] WantedBy=network-online.target


Aktivieren Sie den Dienst:
$ sudo systemctl daemon-reload
$ sudo systemctl enable wol.service
$ sudo systemctl start wol.service
Überprüfen Sie, ob der Dienst ausgeführt wird:
$ systemctl status wol
Sie können jetzt testen, wie Wake on Lan auf diesem Host funktioniert. Kopieren Sie die MAC-Adresse des Netzwerkadapters, auf dem Sie WoL aktiviert haben.


Überprüfen Sie, ob der Ruhemodus unter Linux aktiviert ist:
$ sudo systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target
Versetzen Sie Ihren Linux-Host in den Ruhezustand:
$ sudo systemctl suspend
Um ein magisches Paket unter Linux zu senden, können Sie verwendenwk_aloderÄtherwacheWerkzeug:
$ sudo apt-get install wakeonlan etherwake
Um einen Computer aus der Ferne zu aktivieren, geben Sie seine MAC-Adresse ein (WoL-Pakete werden nicht weitergeleitet, daher müssen sich die Computer im selben LAN-Segment befinden):
$ wakeonlan <MAC-address>
oder:$ etherwake <MAC-address>
Nach dem Empfang des Magic Packets sollte der Computer aufwachen. Beachten Sie, dass WoL nicht das Öffnen des Ports in der Linux-Firewall erfordert. Das WoL-UDP-Broadcast-Paket wird direkt vom Netzwerkadapter empfangen und verarbeitet, ohne den Linux-Netzwerk-Stack zu verwenden.














