1. Overzicht: Waarom is het nodig?
Het 24/7 aanhouden van een desktop in huis of op kantoor verbruikt veel energie en brengt extra kosten met zich mee.
Daarom ben ik gaan nadenken over manieren om een desktop op afstand in te schakelen met behulp van een klein server zoals een Raspberry Pi, dat 24 uur per dag werkt.
Hiervoor heb ik een strategie ontwikkeld met de "Wake-on-LAN (WOL)" functie.
- BIOS-instellingen van de desktop: WOL-functie inschakelen
- Linux (Ubuntu) instellingen: Zorg ervoor dat de netwerkkaart actief blijft na uitschakeling van het systeem
- Raspberry Pi instellingen: Schrijf en automatiseer het script voor het verzenden van de magische pakketten
Benodigde pakketten:
- wakeonlan
(Voor het verzenden van magische pakketten vanaf de Raspberry Pi of server)
2. Configuratieomgeving
- Doel-PC: Desktop met Ubuntu 24.04 geïnstalleerd
- Server: Raspberry Pi 5 (Ubuntu Server 24.04)
- Netwerk: Aangesloten op hetzelfde lokale netwerk (bedraad aanbevolen)
3. BIOS-instellingen van de desktop
Voor het gebruik van Wake-on-LAN zijn de BIOS-instellingen van het moederbord zeer belangrijk.
Hoe de BIOS in te stellen
Stel de volgende items in de BIOS in. Ik heb een GIGABYTE moederbord gebruikt, maar gebruikers van andere merken kunnen vergelijkbare opties vinden om in te stellen.
- Toegang tot BIOS/UEFI Setup tijdens opstarten van de desktop (meestal met
DEL
,F2
toets) - De volgende items inschakelen:
ERP (gemoeid met energiebesparing)
- ERP
instellen: Disabled (uitgeschakeld), omdat de energiebesparingsmodus de WOL-functie kan blokkeren.
CSM inschakelen
- CSM Support
: Enabled
- Na het inschakelen van CSM kunnen de volgende items verschijnen (in het geval van een GIGABYTE moederbord):
- LAN PXE boot Option ROM
: Houd uitgeschakeld
- Storage OpROM Policy
: Legacy
- Andere PCI-apparaten
: Legacy
Resume by LAN / Power On by PCI-E
- Sommige borden ondersteunen dit automatisch zonder aparte items → ook als de optie niet zichtbaar is, kan het normaal werken
- Sla de wijzigingen op en herstart
※ De namen van de opties kunnen iets verschillen afhankelijk van de fabrikant. Zoek naar vergelijkbare opties zoals 'Wake', 'Power On by PCI' en stel ze in.
4. Desktop Linux (Ubuntu) instellingen
In Ubuntu moet de NIC (Network Interface Card) actief blijven, zelfs wanneer het systeem is uitgeschakeld.
1. Controleer de naam van de netwerkinterface
ip a
Voorbeeldresultaat:
2: enp4s0: ...
link/ether <AA:BB:CC:DD:EE:FF> ...
enp4s0
: Controleer de naam van de netwerkinterface. (Dit is de bedrade LAN apparaatnaam van de desktop en kan per apparaat verschillen.)AA:BB:CC:DD:EE:FF
: MAC-adres (doel voor magische pakketten) ※ Wees voorzichtig met de blootstelling van MAC-adressen voor de beveiliging.
2. Installeer ethtool
sudo apt update
sudo apt install ethtool
3. Controleer en stel WOL-status in
sudo ethtool enp4s0 | grep Wake
Voorbeeldresultaat:
Supports Wake-on: pumbg
Wake-on: d
d
→ Deactiveerstatus- Activeer met de onderstaande opdracht:
sudo ethtool -s enp4s0 wol g
Controleer opnieuw:
Wake-on: g
4. Zorg ervoor dat het automatisch wordt ingesteld bij opstarten (optioneel: toepasbaar als Wake-on:g na opnieuw opstarten wordt deactivated)
Na Ubuntu 20.04 wordt /etc/rc.local
niet standaard ondersteund, dus het gebruik van een systemd-service wordt meer aanbevolen.
Methode om /etc/rc.local
te maken:
sudo nano /etc/rc.local
Voeg boven exit 0
toe:
/sbin/ethtool -s enp4s0 wol g
exit 0
Geef uitvoeringsrechten na het opslaan van het bestand:
sudo chmod +x /etc/rc.local
Instellingen voor de systemd-service kunnen nodig zijn.
5. Verzenden van magische pakketten vanaf de Raspberry Pi
1. Installeer het wakeonlan
pakket
sudo apt install wakeonlan
2. Voer de WOL-opdracht uit
wakeonlan AA:BB:CC:DD:EE:FF # Voer het MAC-adres in dat je eerder hebt gecontroleerd.
3. (Optioneel) Registreer alias
# Plaats het MAC-adres van de PC die je op afstand wilt opstarten in plaats van AA:BB:CC:DD:EE:FF.
echo "alias wakeup_dude='wakeonlan AA:BB:CC:DD:EE:FF'" >> ~/.bashrc
source ~/.bashrc
→ Voortaan kan je het heel eenvoudig uitvoeren zoals hieronder:
wakeup_dude
6. Resultaten
- De desktop wordt automatisch opgestart na het ontvangen van de magische pakketten, zelfs als deze volledig is uitgeschakeld
- Wake-on-LAN remote boot met succes geïmplementeerd!
7. Beveiligingsgerelateerde zaken
- Versterking van de beveiligingsinstellingen voor de SSH-verbinding van de ‘Raspberry Pi’-server, routerbeveiliging, UFW-instellingen, enzovoort, is absoluut noodzakelijk.
- Bij externe toegang wordt het gebruik van SSH-poortforwarding of een VPN aangeraden.
8. Gebruiksvoorbeeld
# Toegang van buitenaf
ssh username@<your_ip_or_domain> -p <your_ssh_port>
# Na verbinding
wakeup_dude
🎉 Desktop automatisch opgestart!
9. Referenties
- Wake-on-LAN werkt uitsluitend op bedraad LAN (Wi-Fi is niet mogelijk)
- Sommige borden werken mogelijk in de
Suspend
status, maar zijn beperkt in deShutdown
status. (Bij GIGABYTE borden is dit bevestigd dat het ook in de Shutdown-status werkt)
Door een desktopomgeving te creëren die "slechts op de noodzakelijke momenten" ontwaakt, wordt slimme en efficiënte serverbeheer mogelijk gemaakt.
댓글이 없습니다.