Wer zu Hause ein NAS, einen kleinen Homeserver oder einfach den Gaming-PC im Arbeitszimmer stehen hat, kennt das Spiel: Man sitzt gemütlich mit dem MacBook auf dem Sofa, will auf eine Datei zugreifen, aber der entfernte Rechner schlummert im Standby. Ich selbst kenne das, ich hab zwei Geräte, die ich quasi nur auf Zuruf starte und gar automatisiert herunterfahren lasse, weil ich es sonst vergesse. Und bisher habe ich eine kleine App zum Aufwecken verwendet, weil ich immer zu faul war, das Ganze per Homebrew oder Script aufs System zu wuppen.
Klar, ein Blick in den App Store von macOS 26 (Tahoe) zeigt Dutzende Apps für „Wake on LAN“ (WoL). Die sind oft bunt, manche kosten sogar Geld und sind viel zu viel. Muss das sein für eine Funktion, die eigentlich nur ein simples Datenpaket verschickt? Ich sage mal: Nein. Da wir unter macOS Python quasi „ab Werk“ an Bord haben, lässt sich das Ganze mit einem winzigen Skript erledigen. Das ist für mich sauberer, braucht keine Updates und lässt sich wunderbar in die Kurzbefehle-App oder in Automatisierungen einbinden.
Hier mal die Schnellanleitung für die Bastler unter euch.

Das Skript
Ihr braucht nur einen Texteditor. Erstellt eine neue Datei (Reintext), nennt sie beispielsweise wol.py und packt folgenden Code rein.
import socket import struct def wake_on_lan(mac_address): mac_clean = mac_address.replace(":", "").replace("-", "") if len(mac_clean) != 12: print(f"Fehler: Adresse '{mac_address}' ungültig.") return data = b'\xFF' * 6 + (bytes.fromhex(mac_clean) * 16) with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as sock: sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) # Senden an die Broadcast-Adresse (Port 9 ist Standard für WoL, evtl anpassen!) sock.sendto(data, ('255.255.255.255', 9)) print(f"Magic Packet wurde an {mac_address} gesendet!") if __name__ == '__main__': # EURE MAC-Addy unten eintragen! TARGET_MAC = "1C:1F:17:40:1F:1B" wake_on_lan(TARGET_MAC)(Die MAC-Adresse müsst ihr natürlich durch die eures Ziel-Rechners ersetzen).
Einmal einrichten, nie wieder tippen
Wer – wie ich – faul ist, tippt das natürlich nicht jedes Mal. Erstellt einen neuen Kurzbefehl, wählt „Shell-Skript ausführen“ und kopiert den Befehl python3 nebst Pfadangabe zum Script dort rein. Das könnt ihr euch dann sogar in die Menüleiste legen oder per Spotlight aufrufen.

Screenshot
Kleiner Reminder: Damit das klappt, muss der Empfänger-PC natürlich per Kabel im Netzwerk hängen (WLAN geht bei WoL oft schief, bzw. hat es andere Voraussetzungen) und im BIOS sowie im Betriebssystem muss die Option „Wake on LAN“ aktiviert sein. Vielleicht hilft es ja dem einen oder anderen, sich die Installation einer extra App zu sparen. Nutzt ihr für sowas noch spezielle Tools oder reicht euch das Terminal?
Transparenz: In diesem Artikel sind Partnerlinks enthalten. Durch einen Klick darauf gelangt ihr direkt zum Anbieter. Solltet ihr euch dort für einen Kauf entscheiden, erhalten wir eine kleine Provision. Für euch ändert sich am Preis nichts. Partnerlinks haben keinerlei Einfluss auf unsere Berichterstattung.

1 month ago
3


