42 comments

[ 3.5 ms ] story [ 58.6 ms ] thread
(comment deleted)
That's what I was thinking too. My home server consumes like 15 W and is silent. If you get a rack mounted server made for data centers and stick it in a closet so you can't hear it then yes, i guess this approach makes sense.
In the UK, every 10W of 24/7 load is ~£25/year (33 USD).

It’s very easy for even the small things to add up.

Have you measured the power consumption of your "high power consumption" server?
(comment deleted)
Well done. But note: you can grab an ATX control board, or configure the RPi as a USB Gadget to wake the machine via power button or keyboard.
This seems like a smart option, that would also allow power cycling the machine remotely I’m assuming, in case it goes totally out to lunch.
Note: If you're going to use an SBC _only_ for wake up signals, you might want to look into alternatives for the RPi such as the Radxa RockPi S [1]. My home server, for example, runs continuously at 7W, which beats many RPi models. Of course, a Pi to wake things doesn't need that much power and could be an older model, but even then, you'd still be burning "empty Watts".

Of course, the RockPi doesn't give you any KVM like functionality, though.

[1]: https://wiki.radxa.com/RockpiS

for ideal I need port knocking for wake up
Nothing to stop you setting that up on the secondary device to trigger the listen/wake scripts, but if someone malicious is on your local network and has permission to trigger WOL, chances are you have bigger issues.
I would be tempted to try using the Pi as a router & firewall with the server on another subnet, having it wake the server using traditional WOL as needed. That feels simpler to me and more controlled. But my overall feeling is that not much power is saved here overall compared to a well set up server. Good project though quite educational.
All this complexity to save a few bucks per year on your electricity bill? This is ridiculous, the Pi costs far more than what you can be expected to save.
> a few bucks per year

Crunched the numbers for mine - about 150 bucks a year in potential savings.

Not sure where you are but energy bills are sky rocketing in the US.
The complexity in TFA is due only to author's desire to not use magic packets for waking the server, making thus the state of the server transparent for users.

If you are willing to send magic packets to wake up the server, before using it, you can save money from the electricity bill with negligible complexity.

Use `powerprofilesctl set power-saver` to set to a low use profile
While not Linux I have my Windows 11 rackmount gaming server sleep after 30 minutes but wake every morning at 8am for backups using WakeupOnStandBy which works great. I tried using built-in Windows task scheduler but it never worked correctly.
Seems to me that if you want to waste time and money engineering your setup more net efficient, just buy a few solar panels and LiFePo4 batteries to buffer. You can run other stuff off of it, too.

I always choose “make more money” over “pinch pennies”.

If that were the case you wouldn’t waste valuable time posting snide responses to hn posts.
Start a blog about making more money instead of exploring technology and see if anyone gives a shit
(comment deleted)
20 years ago, I used to have a Linux server running Slackware at home, that would wake up the two PCs we had at home to back up their data if they were turned off. If they were already turned on, they would send a WOL packet to the Linux server to turn it on in case the that server was off, and then start the backup routine. And the last one would tell the Linux server to turn-off itself. It used to work really great, good times.
This sounds very similar to Apple’s DNS-SD Sleep Proxy Services.
Well done. I really enjoy blog posts that dive into topics that probably cross the minds of most home lab-ers at one point or another.
Some motherboards disable power to their ethernet port upon sleep and so WoL will not work.

This is particularly common if the NIC is a power hungry 10GbE port.

However, in the particular case I found, the motherboard also disables oower to any usb GigE adapter attached.

The solution I found was to attach a USB hub with (empty) SD slots and integrated GigE port. As SD cards require power to remain mounted, the motherboard did not shutdown power to this adapter and WoL worked.

I considered doing something like that but eventually I went for the simpler solution of plugging my little servers into smart plugs. I shut them down, then power off the plug over wifi. I start them by powering on the plugs. The plugs draw very little power. The servers are ARM SoC and draw 1 to 4 W. One of them has an HDD that draws about 10 W but I can unmount and power off it when I don't need that disk and I still need the server on (it's also got a SSD.)
Thank you for the post, very informative. I do this half manually. I have a cgi script on the always on very power efficient sbc server that wakes up the bigger server if someone needs it. The big server powers itself down when no backup is running at a time everybody using the server usually sleeps. I thought about improving this and measure server usage and solar power generation to decide the shutdown, maybe with an additional warning email. for example: "The server shuts down in 5 minutes due to no demand and no solar power, if you want to prevent this click this link: http://server.lan/cgi-bin/keepalive "
I recall this being quite simple last time I tried, just enable WoL in bios and run etherwake from my router (or from some other machine on the network).

But this is about waking up on non-magic requests, just any request?

The question now is why didn't Wake on PHY work as intended?
Ha ha, I tried something similar when I had to go to Thailand for my wife's treatment. And failed spectacularly. Fortunately, my laptop had all the files. I didn't have Tailscale at that time.

My Desktop, WoL on, tested to be working Android Phone, always on

All have SyncThing installed. Mobile had Tasker installed.

So, the idea was to have Tasker monitor a folder inside SyncThing, When I need my computer, I put a file inside that folder, when Tasker finds that folder, it sends WoL to my desktop, and deletes the file, Computer wakes up. When I see the file deleted I know, the beast is now awakens ....

When I actually did try that from Thailand, the file did not got deleted, nor the beast woke up.

What happened? Turns out, my mobile restarts automatically after some time of inactivity. Which, locks Tasker out, and the whole process fails.

So, operation wake the beast was busted.