[HN Gopher] Making a Linux home server sleep on idle and wake on... ___________________________________________________________________ Making a Linux home server sleep on idle and wake on demand - the simple way Author : danieg Score : 478 points Date : 2023-04-19 12:05 UTC (10 hours ago) (HTM) web link (dgross.ca) (TXT) w3m dump (dgross.ca) | saltcured wrote: | Tangentially, I remember MythTV had support for the self- | scheduled variant of this. I used to have a PC with multiple HDDs | hooked to the TV and antenna which would look at its own TV | recording schedule and power off when it was idle and wouldn't be | recording in the next hour or less. Before powering off, it would | set an RTC alarm to wake 10 minutes before the next scheduled | recording. Meanwhile, if I walked into the room and wanted to | watch recordings while it was off, I would just press the power | button let it boot up to use the onscreen UI with IR remote | control. I never bothered to figure out if I could make the IR | receiver behave in some standby mode to wake the PC. | | The next time we moved, I couldn't be bothered to set all this up | again. Now we just use an old laptop and browser for streaming | and a bluetooth keyboard with pointing device for "remote" | control. It idles at low enough power to run 24/7 and not care, | but we can also just open/close the lid as if it is a sleep | switch for the media function. | kristianpaul wrote: | Use a rock5b board with 8 cores and 16G of ram still low power | 30W | throw0101a wrote: | The concept of "ARP Stand-in" brought to mind Proxy ARP: | | * https://en.wikipedia.org/wiki/Proxy_ARP | horsawlarway wrote: | Yup - really a nifty way to handle exposing services. | | I use MetalLB locally, and it does exactly this for its layer-2 | mode: https://metallb.universe.tf/concepts/layer2/ | | Makes for a great little load-balancer setup on bare metal k8s. | I have to lose a LOT of machines all at once for anything to go | down and stay down, and my router configs use a known ipv4 | address for everything, without having to care at all about | which machine is actually handling it. | addingnumbers wrote: | Proxy ARP would have the raspberry pi provide its own MAC | address as the MAC for the server IP. All the traffic from the | clients to the backup server would have to pass through the | Pi's network interface for the duration of the session. | | With this ARP stand-in, it provides the server's MAC to the | client so subsequent traffic to the server doesn't need to pass | through the Pi. | aljarry wrote: | I had similar idea, but in the end I've gone a different path: | | I've got a USFF PC with 2 external HDDs as NAS, and raspberry pi | to keep always on stuff. I used to keep the PC up most of the | day, and get it to sleep on schedule during night with `rtcwake`, | and it was pretty reliable. | | I've removed the scheduled sleep from the PC, as I prefer backups | to be done at night, and my "minilab" of USFF PC with SSD & 2 | external HDDs, rpi 4 with SSD and a 1Gb switch uses 18W idle, | according to cheap power mater. | | USFF PC is ThinkCentre tiny m93p with 2-core 4th-gen i5, and I | guess newer models should fare better with idle power use. | fy20 wrote: | How reliable is the external drive route? Do you run in RAID or | similar? | aljarry wrote: | I've got 2 external HDDs in ZFS mirror, cheap consumer disks. | One of them is perfectly fine, second one started having | occasional read or write errors, which is not great. With | regular weekly scrub I hadn't had any data issues over last 3 | years, and I'm pretty happy with the setup. | | But it's a hit or miss with consumer external HDDs - before | that, I used a single external HDD for backups at a time | (100-200GB writes a week) and I lost data from 2 cheap | external HDDs over span of 3 years. | thesnide wrote: | While I applaud the effort, I'm really wondering about leveraging | something like a ODROID HC4 and don't worry too much about the | standby power consumption. | | I mean, I even recently purchased an old refurbished i5 | enterprise mini PC that consumes about 5W in idle mode, not even | standby. | | It makes sense as it is leveraging laptop components inside. | LaputanMachine wrote: | Very nice, I didn't know that you could wake computers with | unicast packets. | | For my use case, I run a Raspberry Pi that is on the same local | network as my PC. When I connect to the Pi to forward my PC's RDP | port to my laptop's loopback interface, the Pi sends a normal | magic packet to wake my PC. All that was needed was an entry like | this in my laptop's .ssh/config: Host remote- | desktop HostName raspberry-pi User pi | Port 1234 IdentityFile ~/.ssh/raspberry-pi-key | LocalForward 3389 my-pc.local:3389 SessionType | default RemoteCommand wakeonlan -i 192.168.178.255 | 11:22:33:44:55:66; cat | | Each time the RDP port is forwarded, the wakeonlan command is run | on the Raspberry Pi. The 'cat' at the end keeps the command from | exiting so that the RDP port keeps being forwarded. (I also | configured the NOPASSWD option for wakeonlan in /etc/sudoers so | that no root privileges are needed to run it.) | t0astbread wrote: | There's also the "exec" keyword that lets you run a command in | a "Match" block like so: Match host my-pc.local | exec "wakeonlan -i 192.168.178.255 11:22:33:44:55:66" | | This doesn't cover the case when the connecting machine is in | another network but it does avoid a hop. Perhaps you could also | run another SSH command in the exec condition that connects to | the Pi and has it send the WoL packet. | LaputanMachine wrote: | Thanks, this could be useful if I decide to set up a VPN in | the future. | javajosh wrote: | Once again I get the distinct feeling that networks talk behind | our back in a phylogenic tree of patois obfuscated by deep time. | (Where deep time for computers is like 30 years). | t0astbread wrote: | I'm doing something similar but in a less fancy way: I've got a | Hydra server (the NixOS CI thing) set up on a potato-grade SBC | with a more powerful desktop computer acting as a builder. The | desktop runs a small Go program that I've written that shuts it | down after ten minutes of inactivity. Wake-on-unicast for some | reason always caused the desktop to start up after just a few | seconds of being shut down, so I'm using magic packets. (I'm not | sure what's causing this. I suspect Tailscale but I haven't | really investigated it.) Hydra connects via SSH so I've added a | Match block to the potato's SSH config that sends the WoL packet | first: Match host desktop.local exec | /bla/bla/send-wol | | I'm also doing full shutdowns instead of sleeping. The difference | is only about ten seconds for a CI job. If the power draw during | sleep turns out to be negligible, I might switch to that at some | point but first, there are bigger bottlenecks to kill (like Hydra | still running expensive evaluations on the potato). | SoftTalker wrote: | I just let my computer run all the time. Disable all sleep | functionality except monitor sleep. Then it always works when I | need it to. | | My life is way too short to fool around with stuff like this to | save $5 in electricity and have to deal with the inevitiable | "won't wake up" or "wakes up in a brain-damaged state" | situations. | TechBro8615 wrote: | I do this too. I'm on a Mac and use an app called "Amphetamine" | to keep the machine active (it's the successor to "Caffeine" | IIRC). | | However, I dim the screen to black when I go to sleep, since | it's the only component that can't really "idle" - it's | consuming power as long as it's displaying pixels, and thus it | would also be the first component to die from overuse even | while "idling." | netsharc wrote: | I've used Suspend-to-RAM for years on Windows, and it's always | worked reliably, rarely needed fooling around with... | colordrops wrote: | Try to control it remotely with SSH and wake-on-lan. Not so | reliable. | laweijfmvo wrote: | I'm tempted to do this as well, given the likelihood of | everything working if/when my linux desktop (or laptop) | actually wakes up is about 50/50 these days. | moffkalast wrote: | > You'll need: An always-on Linux device on the same network as | your server, e.g. a Raspberry Pi | | > First, a bit about my hardware, as this solution is somewhat | hardware-dependent: HP ProDesk 600 G3 SFF | | I seriously doubt any of this can be gotten to work on a Pi in a | way that actually reduces power usage in any notable way. Hell | the Pi 4 uses almost full idle current when completely powered | off unless you turn off just about everything that would make it | possible to wake up again without a full power cycle. And even | then the draw remains significant. | kortex wrote: | Many people who would do this sort of thing likely already have | an always-on pi (pi-hole, dns, ssh jump box, etc). And even at | full bore, pi 4 is about 6.5W, so 90% savings over the HP. | | https://www.pidramble.com/wiki/benchmarks/power-consumption | moffkalast wrote: | Ah I think I misunderstood the idea, I thought they were | saying you could also use a Pi as the suspended server. That | makes more sense I guess. | adezxc wrote: | Thank you for posting this, I saw something similar but about | having a homeserver to run Jellyfin and lost it. Bookmarked this | and will implement this in the future. | bfrog wrote: | I want something like this but on a smarter router/switch that | can wake my device up on certain port/packet requests going to | the sleeping device. Having to setup a pi for this sort of thing | seems like yet one more thing to manage | DCKing wrote: | This looks like one of those home server infrastructure setup | rabbit holes I would've bailed out of within the first 10 minutes | of Googling to research the problem. | | I commend the author for their perseverance and the writeup - | rabbit hole writeups are their own form of entertainment. That | alone was worth it. I could never run anything that looks like | such a conceptual pain the butt. A pain to maintain and | troubleshoot to boot. | | Especially since the setup requires a Raspberry Pi to run | permanently. A Raspberry Pi that itself would work just as fine | as the Time Machine server the author seems to need on demand? | hulitu wrote: | > A Raspberry Pi that itself would work just as fine as the | Time Machine server the author seems to need on demand? | | A Raspberry Pi has one big problem: no SATA ports. | gambiting wrote: | Yes but RPI 4 has usb 3.0 ports that you'd really struggle to | saturate with a gigabit connection - I used to see the lack | of sata as a major problem with that platform but nowadays it | really doesn't matter. | TacticalCoder wrote: | > Especially since the setup requires a Raspberry Pi to run | permanently. | | Which they'll gladly do no? | | If (poor quality) SD card corruption is a concern, you can have | the RPi mount the SD card read-only or just keep a full backup | of the SD card. | | I've had a RPi 1 power 4 VoIP Cisco phones for years. Zero | issue. | | I've got another one constantly establishing a remote SSH- | tunnel so that I can easily troubleshoot my brother, who lives | in another country, 's LAN. The _uptime_ is more than a year. | | One is routing (well, doing SNAT really) and firewalling | between two non routable LANs. I set up the thing once and it's | so reliable there's neither a screen nor a monitor hooked to | it: just the power adapter and two ethernet cables (including | one in a USB-to-ethernet adapter). | | Another one is running _unbound_. Same: no monitor, no | keyboard, no nothing. The power adapter and one ethernet cable. | Simple. Not much can go wrong. No moving parts. It 's happily | null routing hundreds of thousands of crappy domain names 24/7. | | I've got another one in a vintage arcade cab with a Pi2JAMMA | adapter. In years it never failed to boot once. As we the | others, just in case, I still have a "dd" of the entire SD | card. Should something happen I'd just dd the image to a new SD | card. | | The shortage of RPi is apparently due to companies snapping | them all for industrial uses. | | I haven't heard of many people complaining "my RPi died | overnight" (unlike, say, the Apple M1 laptop's screens). | | They're incredibly reliable pieces of equipment for their | gentle price. In case something goes wrong on one of mine, I | just have a dump of the entire SD card. | | I don't disagree that they _may_ be a pain in the butt to set | up, just like any server. But once setup, they don 't move | under your feet so the maintenance is really minimal. | | I hate that there's a shortage of Pi but I'm not sure that | criticizing them as "non reliable" is a criticism made in good | faith. | JosephRedfern wrote: | I'm not sure OP was necessarily implying that the Pi | specifically wasn't suitable for the job -- perhaps just that | requiring /any/ other additional computer to achieve this is | not without additional administrative overhead and power | costs. | | It does seems likely that a Pi is going to consume a fair bit | less energy than the x86 SFF PC, so it's probably a net gain | there, but that admin overhead thing isn't necessarily one to | ignore -- it's not entirely set and forget. | kayge wrote: | Man I loved my RPi remote SSH-tunnel for being able to access | my home network from anywhere... until my kid needed a Pi for | a robot he got for Christmas and I decided to donate mine to | the cause :) | elevation wrote: | If an idling raspberry pi is too power hungry, a | microcontroller like an ESP32 could be made to respond to ARPs. | $8 for the MCU and a couple of afternoons of noodling. It's not | going to run avahi for you though. | cozzyd wrote: | Use a beaglebone black. modern rpis use too much power. | OJFord wrote: | You could run avahi and 'a simple ruby script' on the router | instead (ok not most retail routers as stock, but e.g. OpenWRT) | and do away with the Pi. | thelittleone wrote: | Nice to know I'm not alone. If I could reclaim time spent on | rabbit hole projects that concluded with bail out, I feel I'd | have a whole other lifetime. Yet somehow, each new rabbit hole | project lures me in. | [deleted] | dolmen wrote: | However that requires the disk used for backup storage to also | be always on. | MattPalmer1086 wrote: | I use my pi as a backup server. The disks spin down when not | in use. | aequitas wrote: | Disk have power modes and can be spun down to save energy. A | Raspberry Pi can run the OS on an SD card and mount the disk | for backup storage. Leaving it in low power for a long period | of time. | nwb99 wrote: | I'm worried about the wear on my drives spinning up and | down so much? Maybe it isn't such a big deal. It is the | most stressful time for spinning drives, though. | dolmen wrote: | Ideally I would like the "wake-up / fake on" infrastructure to | be a feature of my wifi router. | xur17 wrote: | I wonder if you could build this as a plugin for opnsense. | txdv wrote: | i run an rpi to host stuff for cheap (the energy drain of the | pi is low), my main machine goes to sleep after 15min to save | costs. seemes like a neat trick to remotely wake it up | nottorp wrote: | That's what I was thinking too. My home server consumes like 15 | W and is silent (and saturates gigabit). | | 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. | m463 wrote: | > and stick it in a closet | | went down that route years and years ago and... it heats up | the closet. | | Actually, (though not a server) I remember one place I lived, | I just put my monitor, keyboard and mouse in the bedroom at a | nice desk. Then I ran the cables through the wall to the | computer in the next room where it could be loud and cool. | (quiet, fast, cool: pick two) | nottorp wrote: | Haha when I was young and didn't know better i splurged on | a dual socket AMD desktop. Athlon 1600M it was, I think. | | Ended up physically removing a CPU because the noise and | heat was... not... worth... it. | aequitas wrote: | I agree, but you could argue that the Raspberry Pi is not | performant enough during restores or browsing the backups. | During the backup itself performance should not have to be that | big of an issue as it's mostly a background operation you will | not be waiting on. | | You could also use the RPi as a stepping stone which syncs it's | files to the 'real' backup server which is on a daily/weekly | timer instead of on-demand setup. | | I'm using this concept for the problem that I want to collect | metrics all day long, but not have a power hungry server | running 24/7. So my RPi collects all metrics and streams then | directly to my server for me to view realtime. But whenever the | server is unavailable (on schedule or for maintenance) the RPi | just buffers the metrics until the server is available again. | | Also worth considering is just not using a single server for a | single purpose but just cramming it full with utility to | justify the power costs. | jeffbee wrote: | > power hungry server running 24/7 | | Nothing in this article supports this statement. It just says | "high power consumption" without measuring, and declares | victory without measuring the power saved. The fact is that | power scaling has almost erased the difference between | "suspended" and just "idle", to such an extent that there | might not even be a meaningful difference, or any measurable | difference. | | My NUC 12 Pro is drawing, at the wall, 2.7W, as best as I can | measure. The SoC reports drawing below 200mW. This server is | _on_. The way to get low power states on these is to just | make sure your Linux is up to the task and your BIOS works | correctly, which is one of the reasons to choose a NUC. The | first-party firmware works! | | Another important thing for low-power server operation is to | either use wifi, or make sure your ethernet is configured | correctly for low-power operation. Unless you fix it, gigabit | ethernet by default will propagate the link state all the way | down to a high power state on the CPU. The NIC will say that | it has tight latency requirements because the link is active, | and it will configure the PCIe bus to avoid PCI link power | management, and it will tell the CPU that it can't go below | PC6. To avoid this you have to configure your NIC to ignore | link latency requirements. Just unplugging the ethernet is | the easier path, and it's faster than gigabit these days. | dekhn wrote: | NOte that the NUCs with power saving and wifi have a | serious problem: latency. By default in the various Linux | OSen I use, wifi power management is enabled. Often times, | repeated pings will jump from 5ms to 100+ms (with a very | high variance) and network bandwidth will be extremely | poor. Even ssh on a LAN can be unusable! | jeffbee wrote: | Sure, but it's a miracle that it can do this at all. It's | entering and exiting a sleep state that is very nearly | off, in between pings. | ape4 wrote: | My first thought too. Reports can show the power usage for | each process. So reduce the power-hungry processes. Or | schedule them for lower cost times of day. | manmal wrote: | Then how about an N95/N100 (recent Celeron successor) mini | PC, like the ones from Beelink? They don't draw that much | power, but are 2-3x faster than a Raspi, have HW supported | video de/encoding and can even run Windows if you needed | that. | DJBunnies wrote: | "that much power" is pretty subjective, is it 2x or 10x a | pi? Might be a turnoff for some. | manmal wrote: | The N100 has a TDP of 6W. I haven't measured power draw | of the whole system yet though, I imagine that the | mainboard will pull another couple watts at least. | | It shines especially in scenarios where the Pi is just a | tad too slow. E.g. you can't live transcode 4k videos on | a Pi, while the N100 has latest UHD graphics and | therefore ships with a decent HW-accelerated H265 | en/decoder. | nottorp wrote: | There are a lot of low power media boxes but few servers | sadly. | | By server i mean multiple network ports and storage | ports, space in the case for several spinny discs in | addition to the ssds etc. | | I doubt any NUC is good for a server by my definition. | gh02t wrote: | Sure there are, there are lots of NAS appliances boxes | from the likes of Synology/QNAP/Aliexpress Special that | can run double duty as servers built on similar low power | CPUs. Some of them even have decent networking options. | | The problem is that a lot of the commercial products are | woefully underspecc'ed for the price and you outgrow them | quickly. Spinning disks also eat a lot of power, | relatively speaking, so they kind of eat into the "low | power" usecase. | nottorp wrote: | > lots of NAS appliances boxes | | Rather roll my own Linux thank you. | | > Some of them even have decent networking options. | | I think few of them have multiple ethernet ports. Plus | there's the matter of how much cpu the built in ethernet | eats. | [deleted] | qwertox wrote: | I had a somewhat similar setup and it worked pretty good as | long as I needed it. A Raspi, which would also do other stuff, | like provide the DNS service, would wake up a backup server, | which was a Xeon machine and consumed a lot of power, also was | running Windows. The Raspi would wake it up 4 times a day, the | server had a Task set up to run some Python scripts which | invoked robocopy so that the server pulled the data off of | another machine which was always on and required to be backed | up. When ready it shut itself down and all was good. | thefz wrote: | OTOH, there's a ton to learn going down rabbit holes, and these | are the reason why I stick to Linux. | louwrentius wrote: | I'm using A Raspberry Pi4 as a dedicated Timemachine backup | server with an SSD via USB3. Works perfectly for a year or so. | rektide wrote: | Personally I like having courage to try. I don't tend to see | things as requiring maintenance. This looks like an afternoon | of messing around and should just work. I don't expect | troubleshooting to be hard. | | I really love people who can show courage & interest. I feel | like computing has decayed into vapid consumerism. Products no | longer even try to be semi-technical. There's a whole culture | built around telling & selling ourselves the idea that | computers are hard & difficult. | | All it takes is one person with a good blog post to demystify & | make accessible. You are smart enough. You can be that person. | You can Augment Human Intellect by talking through it. | gertlex wrote: | > This looks like one of those home server infrastructure setup | rabbit holes I would've bailed out of within the first 10 | minutes of Googling to research the problem. | | Absolutely have felt the same often, in the past. Good news! | There's ChatGPT now! | | It's so much quicker than google for figuring out approaches; | it's great for explaining concepts and "how to do x with tech". | And it's great at writing the scripts for you too. I set up a | prometheus/grafana dashboard with scripts for various | temperatures from various APIs with its help. | | Not trying to shill, but just sharing that this type of project | is something that's a lot more feasible to implement in limited | timeframes than it used to be. (and get the satisfaction of | bringing the idea to fruition) | | But I reckon I'll always want content like this that covers the | journey of uncovering various edge-cases, too... | monocasa wrote: | So far my experience has been the opposite with ChapGPT FWIW. | Overall it has cost me more time sending me down rabbit holes | that it totally made up, but said with absolute confidence. | gertlex wrote: | This is interesting to hear! | | A key caveat in much of what I'm doing, is I'm implementing | things I previously did for other projects in the past 15 | years... so I'm using old technology, know the terminology, | and can troubleshoot 90% correct stuff that chatGPT gives | me. | | I haven't done as much "I have no idea where to start" | stuff. | McAtNite wrote: | I have, and while it's not perfect I've found that it | makes a great tutor. I've asked it a lot of programming | questions where my starting point was 0, and my biggest | takeaway is it will give you exactly what you ask for and | nothing else. | | This can be a bit of a problem since you can't ask for | what you don't know, so starting broad by having it | explain the general concepts to you, and then slowly | getting more specific with direct pointed questions had | the best outcomes. | iudqnolq wrote: | This seems like an example of the worst setup for ChatGPT. | | There isn't much info on the internet about it. Of the info | that exists most is inconsistent, outdated, and/or wrong. The | specific instructions need to depend on what's supported by | the exact model number of your network card. You're dealing | with hardware, so there's a chance of breaking things | permanently. Close has zero value, the solution needs to be | exactly right. Close but incorrect solutions are hard to | debug. | gertlex wrote: | I didn't in-depth read the main article here. But skimmed | most of it. | | Not sure any of it is going to brick hardware, but I | haven't played with setting flags with ethtool. I've messed | with Wake-on-Lan stuff in the past, as well as "prevent | device from randomly waking from sleep" issues, too (on | Windows, though). | | I do have the advantage of a lot of past experience with | Atmegas then RPis, so know a lot of the common sense | hardware considerations... and a lot of troubleshooting. | For me getting 90% correct with ChatGPT, and building up | incrementally, has been an improvement on doing it all | myself with google. | | I might take an attempt at asking chatGPT how to do what | the author did. Could be informative, even if just | introspective realizations like, "oh, this is a question I | asked in a good way due to my existing knowledge." | fuzzy2 wrote: | I think it's not too bad. Of course, I knew most of the | ingredients before reading this article. I think my Router OS | router can also do the ARP thing. | MattPalmer1086 wrote: | Meh, I struggled to get my pi to work as a time machine server. | It would work for a few weeks and then just stop working and I | would have to start the backup from scratch previous backups | becoming unusable. | | In the end I just plugged an external hard disk into the mac. | | I have had similar issues in the past even with such simple | things as SSH to a Mac. It would be easy to blame the pi or | Linux, but as far as I can tell, Apple just does not play | nicely with anything not Apple. It's just that little bit | different. I have no such problems interfacing Linux and the pi | with anything else. | testfoobar wrote: | Time Machine over NAS has always been unstable for me. As you | experienced, my backup would be regularly corrupted and would | need to restart. Alternatively, a normal <10G backup could | take in excess of 24h. | | I eventually gave up on the NAS and now backup to external | drives at home. | | This site has excellent articles on Time Machine - scroll | down to Time Machine Problems: https://eclecticlight.co/mac- | troubleshooting-summary/ | bobleeswagger wrote: | There are some quirks to setting up SMB so Time Machine is | happy, but I have had great success with ZFS+SMB hosting my | TM backups. Have been running for a little over a month and | nothing is corrupt. Self hosting is still somewhat hard, I | don't blame you for bailing on something so critical to | uptime in the first place. | jdminhbg wrote: | I had the exact same problem and ended up with the same | solution. I know people who have had somewhat better | experiences backing up to something like a Synology, but | the $Xk investment wasn't worth it for me without also | needing it for big file storage or media serving or | whatever. | nottorp wrote: | > backing up to something like a Synology | | How about QNAP? I happen to have one gathering dust, if | you can reliably Time Machine to it i'd plug it in. | cyberax wrote: | Time Machine has improved a lot after the switch to APFS. | Mostly because it supports full snapshots, with an easy way | to get the difference between two snapshots. | | The previous HFS+ version relied on directory hardlinks | that were notoriously buggy and easy to corrupt. The | difference computation also required basically recursively | walking the entire tree and comparing the directory change | times, with each lookup requiring a network round-trip. | MikeKusold wrote: | My time machine share is backed by ZFS. I have a separate | dataset for each laptop, with snapshots retained for 30 | days. As long as I know roughly the last time the backup | worked, I can restore that snapshot so I don't need to | start fresh. | testfoobar wrote: | I had the same - ZFS across four drives with separate | dataset and samba shares for each machine in my house. It | would work and yes, I could rollback to a working | snapshot. But it wasn't a set and forget system. | rendaw wrote: | You could have an Arduino to wake the Pi. | fuzzy2 wrote: | But then, why not just use an ESP32 which can replace the Pi | entirely in the proposed setup. ;-) | | I would have an ESP32 impersonate the MAC address of the | server passively (ie. only in the Wi-Fi association), then | "push the wake button" if it found traffic that is allowed to | wake the server. A wake-up firewall, if you will. | scottyah wrote: | Or a "smart plug" | TheHippo wrote: | You can't sleep a Pi. | heywire wrote: | Another option, if your needs are relatively modest, is to choose | a low power mini PC. The one I chose idles at around 5W under | Linux before any tweaking. It is based on the Intel N5105. I have | a few 2.5" external HDDs attached for backup which are configured | to sleep after a short time. | rkangel wrote: | I've just bought a Pi for some always on stuff (like Home | Assistant). I wanted to buy a mini-PC but I found it really | hard to identify which ones would have low idle power. Did you | find a good reference for this? | trustingtrust wrote: | A lot of times I want to build something on my homeserver and | N5105 ain't gonna cut it. I don't build every day or every hour | but if I want to I would have to turn it on and off every time. | oneshtein wrote: | Another option is to use a smartphone with damaged screen, USB | Ethernet card and an external USB drive. | traverseda wrote: | I think you'll be disappointed by the kernel support, | especially if you want to run docker containers or anything | like that. | awoimbee wrote: | Indeed, running docker on android requires a custom kernel: | https://gist.github.com/FreddieOliveira/efe850df7ff3951cb62 | d... | | The pixel 6 and 7 have full KVM capabilities tho: | https://www.patreon.com/posts/74333551 | j45 wrote: | The pixel 6 and 7 options are awesome | MayeulC wrote: | You could also use postmarketos, mobian, etc. Have a look | at the pmOS wiki for device support, most support USB | OTG, and usually you don't need GPU acceleration nor | screen/audio/cameras, which are usual pain points. | CraigJPerry wrote: | This was always attractive to me, how are you running a linux | host on the phone or are you just using native android hosted | services? | oneshtein wrote: | I use a custom firmware with Termux. It's enough for me. | | https://medium.com/junior-dev/how-to-re-purpose-your-old- | and... | CraigJPerry wrote: | That looks good enough for me, thanks! | oneshtein wrote: | Don't forget to turn on option "Don't turn screen off | when charging". Use a less powerful charger to power the | smartphone. 5 Watt charger is enough. 2.5 Watt may work | too. | HankB99 wrote: | I'm curious if you have measured power at the well (e.g. smart | plug with energy metering or Kill-a-watt.) I just set up a test | server with a J1900 (10W TDP.) With 8GB RAM and running from an | SSD it uses 25W. Add 4 7200RPM HDDs and it's up to 65W idling. | | I have another test server based on a Raspberry Pi 4B. The Pi | boots from SD card and uses about 5W. Add 2 drives in a USB | drive bay and power for the setup is now up to 25W. | j45 wrote: | UPS' also have this feature and it's interesting to see the | idle vs load wattage. | | I like the idea of making compute, storage into appliances if | possible locally. | | It's best to use ssds in the machines. | | If you want spinning drives put them in a dedicated nas for | storage. | heywire wrote: | This was measured with an old school Kill-a-Watt. When idle, | the HDDs spin down. Keep in mind these are 2.5" likely | 5400rpm or less (WD Passport 2TB). | MayeulC wrote: | Running powertop --auto-tune and TLP makes a lot of | difference on my server (60->30W). You can further tune CPU, | disks and GPU to preserve energy. I suggest starting with a | laptop or a phone (~postmarketos)instea d,as those are | already tuned for low-energy modes, and you won't have, say, | a BIOS preventing PCI devices from sleeping (looks at | server). | ridgered4 wrote: | 2.5" hard disks actually use way less power than the 3.5" | drives, but if you spin down the bigger drives they get down | to about 1watt. | | My server at home I actually use a 2.5" drive for the torrent | scratch disk since I don't really need speed there I just | need something that is always spun up with a moderate amount | of space that doesn't use much power. | PragmaticPulp wrote: | > I just set up a test server with a J1900 (10W TDP.) With | 8GB RAM and running from an SSD it uses 25W. | | Did you use a regular desktop power supply? PC power supplies | can consume 10-15W or more at idle. To build a low power | system you need to find a good low power, high efficiency | power supply. | amiga386 wrote: | Does anyone know a good supplier for such supplies? | | For 10 years my home server used a Corsair VS350; it was | fantastic, and very efficient at low power draw. Recently | the fan failed. The PSU seems discontinued. The _fan_ seems | discontinued. I'm going to try replacing the fan but I | don't know much about electronics. As a temporary measure, | I got a regular "gaming PC" PSU and it has 10% more power | draw, it's not efficient at all. | | I've been looking for a replacement PSU, and I can only | really find very high power ones - minimum about 550W - for | reasonable prices. While you can run a low wattage PC on | such PSUs, none of them make very much in the way of | efficiency promises; only the highest certification, 80 | Plus Titanium, makes efficiency promises for 10% load, e.g. | it'll be 90% efficient for a 55W load on a 550W supply. | Lower certifications only promise to be e.g. 80% efficient | for a 110W load on a 550W supply, and make no promises at | all about a 55W or 30W load. | | So, how does one buy a good low power, high efficiency PSU, | without it costing a fortune? | suyjuris wrote: | > I'm going to try replacing the fan but I don't know | much about electronics. | | Just in case: opening PSUs is dangerous without | precautions. The capacitors may retain enough charge to | kill. | | Besides the immediate risk to yourself, a PSU can also | pose a fire hazard during operation, e.g. if improperly | cooled. | bioemerl wrote: | I feel like there's a lot of room in the market for a chip that | sips power but has a billion PCIE lanes and RAM. | | Does such a system exist? | PragmaticPulp wrote: | PCIe switch chips can be used to multiplex many devices on to | a few lanes already, today. | | There isn't much market demand for an extremely low power | chip with excessive PCIe IO and a ton of RAM because most | applications with high RAM and IO requirements are going to | be very power intensive. | | It's already possible to build an Intel system with plenty of | RAM and IO where the CPU doesn't take much power. | | For building a high capacity NAS you don't need the | throughput of PCIe for all of your drives. Cheap SATA SSDs | can easily saturate your network link when used in parallel. | j45 wrote: | Low powered pcs are the way to go for self hosting. | | Lots of great options that sip power at idle (most of the time) | | Desktop grade cpus can be found that max at 35W. | | The power per watt of sa | j45 wrote: | Completing the sentence above | | Cpu-Power point per watt is what you're after. | | And then, electricty cost per watt-point. | | 8th gen intel and above cpus are quite perfect for this, they | often have hyperthreading and vPRO built into an | enterprise/military grade box for hundreds and have near | perfect linux support out of the box, whether it's Lenovo, | HP, Dell, etc. | KRAKRISMOTT wrote: | Ah, a hardware assisted "serverless" architecture :) | nikp123 wrote: | I've already made this into a all-in-one program: | https://github.com/nikp123/wake-on-arp/ | | but i do agree with the others in this thread, it's quite a | hassle to keep this setup working as intended. | | I'd advise against wherever possible, consider investing into an | efficient PC: | | My current home server thing runs at only 22W while idle and | costed me (including storage and networking) about 150eur. | | But if it's done for the fun of it, I have nothing against it. | andrewshadura wrote: | > Disable IPv6: this approach relies on ARP, which IPv6 doesn't | use | | You've lost me here | dddddaviddddd wrote: | For the second always-on machine, a router running OpenWRT would | be ideal since it would always be up anyways. | neilv wrote: | And if it's doing the routing, it can also be smarter about | detecting demand for the server, and even validate that it's | legitimate demand. | | Related discussion 14 days ago: | https://news.ycombinator.com/item?id=35447094 | prettyStandard wrote: | My thoughts exactly. This seems to be the killer app for | openwrt/ddwrt. | tzs wrote: | > To prevent unwanted wake-ups, you'll need to ensure no device | on the network is sending extraneous packets to the server | | Assume the home network is using 10.0.x addresses. | | I wonder if it would be useful to put the server on 10.1.x, add a | virtual ethernet interface to the RPi that is also on 10.1.x, and | configure the RPi to route between 10.0.x and 10.1.x. Configure | the RPi to drop any extraneous packets directed to 10.1.x from | 10.0.x. | | On the Mac "route add -net 10.1.0.0/16 Rpi" and add a name and | the server's IP to /etc/hosts. | | With that approach you might also make it so the RPi runs a | script whenever something tried to make a TCP connection to the | server, and that script could deal with telling the server to | wake. That way you can choose a wake method for the server | without having to worry about whether or not other things on the | network might accidentally trigger it. | IshKebab wrote: | I don't know why he didn't just use magicpackets to solve that | problem. That's the whole reason they exist. | vrglvrglvrgl wrote: | [dead] | michael1999 wrote: | Nice writeup. It was enjoyable watching him re-invent the Apple | ARP proxy solution. The first time I tried to figure out how an | ssh request could wake a Mac, I was baffled. | | https://en.wikipedia.org/wiki/Bonjour_Sleep_Proxy | xyst wrote: | > Disable IPv6: this approach relies on ARP, which IPv6 doesn't | use | | This makes me kind of sad. Even if it's just for a private/local | usage. IPv6 has the features of ARP built in via "neighborhood | discovery protocol" (NDP) with the addition of various security | to prevent spoofing. | ranting-moth wrote: | I thought you could run IPv4 and IPv6 at the same time, or am I | missing something? | zekica wrote: | Yes, and you can do the same for IPv6 using any ND proxy | server. | paco3346 wrote: | You can but the issue is that if the caller _thinks_ it can | reach it over IPv6 it'll never send the IPv4 unicast packet | which means the server won't wake. | calcifer wrote: | The OP relies on ARP spoofing, so I don't think NDP would work. | fractalnetworks wrote: | [flagged] | Art9681 wrote: | Got a link or something for me to reference? I have built a few | micro itx home servers and have always wondered what a | vertically integrated home solution would look like. I've been | working on the custom software control plane for it for about 2 | years now and gone through several permutations. I run a | private cloud with these over mesh vpn and for personal use the | cost cannot be beat. | lopkeny12ko wrote: | Don't take advantage of someone's passion project to self- | promote/advertise your product. | HankB99 wrote: | Diagrams are just visible enough that I can tell that they're | present but I cannot otherwise see them. I suppose that's because | I'm using a dark theme on Firefox. | | Not that it matters. There's enough text to figure out what's | going on in the first place and it would not help me much in any | case. | | I have a file server running of an ancient server motherboard | from another age. (Supermicro X8SIL w/X3460 and 16GB ECC RAM) It | uses just about 95W idle and bumps to about 150W when the drives | (5 HDDs) are being scrubbed. I tried suspending the server and | power dropped to about 75W - not a huge saving. | | Another concern is drive longevity. Starting and stopping | repeatedly during the day is a lot harder on them than running | continuously and could lead to premature drive failure. I could | explore this if my server were SSD based but it is not. | foepys wrote: | Sometimes servers don't actually go into deep suspend modes | because of proprietary management interfaces. Disabling those | in the BIOS can result in huge savings. | ornornor wrote: | That sounds like a lot. I have a HP Z440 with a Xeon e5-2650v4 | (24 cores) with 128GB RAM, 2x8TB spinning rust, 1x PCIe SSD, | and another SATA SSD that's idling at 70W. When it's scrubbing | the drives, it goes to around 100W. Running proxmox. | | The machine without most of the drives and 32GB RAM cost me | about 250$ used. | oceanplexian wrote: | It's his CPU (X3460). They are quite ancient and were known | for being power hungry (Nehalem). Even a move up to a $15 | Broadwell chip would improve energy efficiency dramatically. | The motherboard probably doesn't even support sleep states | like S2/S3. | PragmaticPulp wrote: | > I tried suspending the server and power dropped to about 75W | - not a huge saving. | | This doesn't sound like it's actually suspending. Or it may | have left the drives spinning. Server gear usually isn't | optimized for actually sleeping. Workstation boards are much | more likely to work. | cmeacham98 wrote: | I'm not using any dark theme addons or similar, just the | standard prefers-color-scheme, and I have the same problem. So | they just didn't account for their website's dark mode when | writing the article. | themaninthedark wrote: | Windows dark theme here and I had the same problem. | | I clicked the light mode on the website and then back to dark | mode and it was fixed. So their website is reading your theme | and adjusting the background correctly but fails to adjust | the test and diagrams. | danieg wrote: | Author here, apologies for the dark mode issue and thanks for | flagging it -- looks to be an open bug in theme-ui | (https://github.com/system-ui/theme-ui/issues/1602). | | I've just pushed a workaround that appears to have fixed it. | V__ wrote: | I wrote it a bit further down, but another solution is to | use SVG's with stroke='currentColor' instead. This value | uses the inherited text-color and would therefore always | work. | notRobot wrote: | Highlighting the diagram makes it readable. | notRobot wrote: | Highlighting the diagram makes it readable. | michielderhaeg wrote: | If I switch to the light theme and back again, the diagrams | become white and readable. | V__ wrote: | He is inverting the embedded SVG's colors using CSS. However, | that CSS is JavaScript applied and doesn't trigger on page | load. SVG offers a nice 'currentColor' color value, which | resolves to the inherited text-color. Replacing | stroke='#000000' with stroke='currentColor' would solve this | bug without requiring any JS. | albert_e wrote: | In the cloud you would just call the start_instance() API method | to wake up the instance on demand. | | Is there a way we will have mass-produced personal cloud devices | that use hypervisors with a low-power consumption control plane | and use standard APIs and Terraform | graiz wrote: | Somehow "the simple way" being a persistent Pi with a custom | script seems like it's not exactly that simple. What you're | trying to do is something so basic and yet I've been unable to | get this setup on my NAS either. | | Would a static mapping of the ARP work? I'd want the server to | WOL and work with timemachine without external dependancies. | PaulKeeble wrote: | This feels like the sort of functionality that ought to just work | now. Its a clearly useful thing for PCs all over the planet and | it would be nice if they just went to sleep almost completely | when idle and woke up on network or USB/PS2 input. The power | savings would be enormous. | | Yet today I still have issues with power saving features, | performance is lowered by having power saving on instead of flat | out and various things don't work like Keepass looses connection | to my browser for my passwords and one of the USB devices that | came on the motherboard crashes the entire computer on some power | transitions. Its taking an awful long time for power saving | features to mature. | | I would love to have this for my NAS/server, it has a lot of | performance for when its needed but its also idle a lot. This is | not the way. | oceanplexian wrote: | It's not really worth it, even though I'd commend the OP for | wading through the WoL stack. I have a NAS that's running 8 | drives and a modern Intel CPU and it runs around 40w from the | wall under load, and idles <10W with the drive spun down and | CPU not doing anything. The WoL setup made more sense 5-10 | years ago when power save functionality was much more primitive | and drives were way less efficient. | AnthonyMouse wrote: | The main problem is defining what it means to be idle. | | Suppose you have some browser tabs open, so there is some | javascript running to switch out the ads on the page every few | seconds. Is that "idle"? There's CPU and network activity. | Suppose there is an open ssh connection to a server. It sends | keepalives because the client is remote and behind a NAT, but | there is no "real" activity. Should the server go to sleep? | | It's entirely possible to be too aggressive. Samsung is proving | this. They've disable "unused" apps by default. But "unused" | just means you haven't opened it in a while, not that you e.g. | don't have a reminder set in it to give you an alert for | something which is happening in six months. | | Conversely, I wish web browsers were _more_ aggressive about | denying background tabs any use of the CPU whatsoever by | default, and then allowing the user to make exceptions in the | rare case where that 's needed. | | But in general the way to do this on the hardware side is per- | component, and that's largely already happening. Modern CPUs | and other devices at idle shut down most of the silicon and use | hardly any power. I've seen Core i7 desktops use 6 watts at | idle. In that case you hardly even need suspend, what you | really need is for the hardware makers to find what's using the | last 6 watts and get it down below 1. | | Conversely, I've seen server hardware that uses over 10 watts | when it's " _off_ ". | mardifoufs wrote: | I think Chrome added something like this recently. It | "hibernates" the tabs, but you can opt out. The only downside | is that I think it loses the tabs' state. | nottorp wrote: | There's at least one extension that doesn't lose tab state, | at least on Firefox. The one i use is called "Auto Tab | Discard". | crizzlenizzle wrote: | > Disable IPv6: this approach relies on ARP, which IPv6 doesn't | use | | I wish more people would care about IPv6. | slashdev wrote: | Who cares about IPv6 on a home server that you might not even | want to expose to the public internet anyway? | ale42 wrote: | I do (and I guess I'm not alone...) -- have IPv6 exposed | machines over a HE.net tunnel. Some of the things are ONLY | accessible over IPv6 (because nobody needs them over IPv4, so | that's enough). | miyuru wrote: | I care. My ISP is deploying IPv6 only and with NAT64 | translation and some of my servers hosted elsewhere does not | even have public IPv4 to SSH. | jonathantf2 wrote: | I wish I could care about IPv6 but I've never used it, my ISP | doesn't provide it and I've never once seen it deployed in a | business environment | JustSomeNobody wrote: | I wish ISPs would care. CGNAT sucks. | heywire wrote: | I'm behind CGNAT for the last 1.5 years without issue. What | am I missing? I actually prefer my router not being bombarded | by connection attempts all day. | r1ch wrote: | Try connecting to an SSH server for more than a few hours | without passing traffic and then have the server be the one | to send a message. Oops! Your ISP tore down the NAT | association and you have no idea the server isn't sending | anything until you try to communicate with the server and | get a timeout / RST. | | NAT breaks TCP, but at least with consumer NAT you're in | control of the timeouts on your router. With CGNAT you're | at the mercy of an ISP that likely optimizes for HTTP and | has low timeouts that you can't control. | heywire wrote: | I actually used to have that issue years ago at work. To | work around that I just enabled a keepalive | (ServerAliveInterval maybe?) setting in my ssh config. I | don't connect to any ssh servers outside my house for | long periods of time, so I haven't encountered that. | Thanks for the heads up, good info! | r1ch wrote: | OpenSSH does enable TCP keepalives by default so that it | can detect and close dead connections, but the keepalive | interval is far too high to work around bad NATs. | | Kind of related to the OP, I spent a decent amount of | time trying to have my SSH sessions survive a sleep on | Windows. With keepalive disabled, proper Wi-Fi adapter | sleep behavior and long enough DHCP leases, I was able to | put my PC to sleep and come back the next day and still | have my sessions active on resume. Unfortunately it | wasn't too practical to disable keepalive as sessions | that really do crash never get cleaned up. | ale42 wrote: | I came on the comment page just to write the same. | xyst wrote: | Especially when NDP covers all of the features of ARP | j16sdiz wrote: | > Especially when NDP covers all of the features of ARP | | ... and more. | | and lots of options with varies level of support. Too many | switch and flags to fiddle with. | | Someone in IEEE need to publish a Current Best Pratice list | and deprecate all other options. | zbrozek wrote: | Seems unlikely. The world has made its peace with NAT, and IPv4 | is simpler and therefore easier to understand. IPv6 isn't | happening. | samdcbu wrote: | The increasing prices of IPv4 address blocks will probably | drive adoption of IPv6. The increased complexity will be | outweighed by the elimination of scarcity that IPv6 brings. | If we are still using IPv4 in 2100 that would be tragic. IPv4 | block pricing: https://ipv4marketgroup.com/ipv4-pricing/ | slashdev wrote: | Or is it just happening extremely slowly? I don't think we | can count IPv6 out yet. | zbrozek wrote: | I hope you're right, if only so that cgNAT goes away | someday. But I'm pessimistic on that front. cgNAT is too | easy and works just well enough to make adopting something | better too low a priority to ever happen. | 2bluesc wrote: | Roughly 40% (and rising) of Google users use IPv6. | | https://www.google.com/intl/en/ipv6/statistics.html | NoGravitas wrote: | Is that mostly mobile phones while on cellular data, | perhaps? | soupbowl wrote: | I am sure a large percent of it is. That being said in my | area I only have 2 choices in ISP and both support | 'dynamic' ipv6 and have for 3-4 years. | petepete wrote: | Without realising and without having had to set it up | themselves. | tzs wrote: | So? The vast majority of IPv4 users also do not realize | and did not have to set it up themselves. | petepete wrote: | No, but the vast majority of people who understand enough | IPv4 to set up a home or small office network still don't | understand IPv6. | MayeulC wrote: | There's basically nothing toconfigure with IPv6. | | With IPv4 you need an addres, a gateway, netmasks, DNS. | | On v6, as long as you have a working router sending RADV | packets, clients will self-configure via SLAAC. Granted, | same with IPv4 and DHCP. | | If you don't have a router, most things should work | thanks to link-local+mDNS. | | You can easily pop a second router on the network to | bridge two LANs, no need to reconfigure the DHCP. | Gateways self-advertise, etc. | | The point I'm trying to make is that most people trying | toconfigure their IPv4 network have a functional IPv6 | network the moment they put the cables in (on Linuxes es | at least, not sure about other platforms). | MrFoof wrote: | Especially when the reality is... you can _almost_ go IPv6 only | nowadays if you wanted to. | | I went down the rabbit hole recently, switching my network to | IPv6 primary with IPv4 as the fallback. The ultimate test was | disabling IPv4 for a weekend to see what, if anything, broke. | | I had set up DNS64, NAT64 and 464XLAT. The only weirdness is | how Windows clients handle IPv6 literals in UNC paths, which is | super ugly, and how some applications _(like Discord calls)_ | will actually embed IPv4 literals. Discord apparently does that | for the relay servers for calls. | | Those things -- and the rare website not supporting it - aside, | I could actually be IPv6 only. I have IPv4 enabled as a | fallback now, but it's no longer primary on my network. | ninkendo wrote: | 464XLAT should work fine with ipv4 literals, no? At least on | macOS, this will get routed to a local 192.0.0.2 interface, | which does the CLAT, translates it to an ipv6 64:ff9b::<ipv4> | address, and relays it to your nat64 server. The ipv4-only | software doesn't know any different, and the only traffic | going on your LAN is ipv6. | | I'm not sure if windows works the same way though... | | (Edit: Looks like windows _can_ do this, but it only | configures it for WWAN interfaces, go figure: | https://techcommunity.microsoft.com/t5/windows-os- | platform/c...) | MrFoof wrote: | Discord calls on Windows was the _only exception_ I ran | into, because as you found yourself, it functionally had to | fallback on DNS64. In general, some peer-to-peer situations | are the likely one of the few cases where it will end up | falling back onto DNS64 for resolution. This isn't | something I entirely realized myself -- I'm apparently far | from the only person to discover this behavior _(Discord | embedding IPv4 literals for its relay servers)_. Discord | has had tickets open about it for years so far. | | I appreciate my son being patient on that one, but he | appreciated how seriously I dug into everything. Again, we | have IPv4 enabled again as fallback, but the family agreed | for an IPv6-only weekend as a test, and that was the only | thing (outside of one website) that failed. | | Everything else worked perfectly, including tons of legacy | devices and software, some of which had _no concept_ of | IPv6. | | For 464XLAT on clients, phones are actually the leaders | here. It's worked perfectly on at least iOS (and I assume | Android) for a LONG time because of its built-in automatic | tunneling. Mac OS had some recent improvements in Ventura | to make things easier. Windows absolutely has some quirks, | the biggest being IPv6 literals in UNC paths ending up | using a domain Microsoft doesn't actually own - a potential | huge future attack vector. | kube-system wrote: | > you can _almost_ go IPv6 only nowadays if you wanted to. | | I think that _is_ the reason why many aren 't enthusiastic | about it. | MrFoof wrote: | Again, I disabled IPv4 purely _for testing reasons_ , to | guarantee nothing was using IPv4 without me knowing it. | There's no reason to actually disable IPv4 as a fallback. | | Over 99.999% of traffic through my home network is IPv6 | now. The tiny remainder that has to use IPv4 does, without | issue. 5 months on, and nary a complaint. Just works. | | The world is ready for IPv6 as your primary, with IPv4 as | the fallback. | 0x457 wrote: | Not really. When I worked in a networking company, we've | observed that connections between hosts via IPv6 were | often worse than with IPv4. By connection, I mean between | two hops on route to your destination. | kube-system wrote: | I understand that. I'm just saying that the people who | don't want to try IPv6 aren't motivated by that. For many | the calculus is simply functionality divided by effort. | They're not configuring IPv6 because it's hard or because | it doesn't work. They're not configuring IPv6 because | they already use IPv4 and it still works for them. | no_time wrote: | I wonder how many sleep/wake cycles would it take a day to | outweigh the TCO decrease of the power bill with the TCO increase | of the increased stress/amortization of the hardware, especially | HDDs. | unnouinceput wrote: | Probably they use SSD's, not HDD. So no hardware stress. | tfvlrue wrote: | Probably a lot. My anecdata: I have had four Seagate HDDs in my | desktop PC since 2007 and despite a couple of remapped sectors, | they're still working fine. | | I often power it on and off 1-2 times a day, and the drives are | set to spin down when not in use. The SMART data for these | drives shows approximately 37,000 power on hours and 17,000 | start/stop cycles. That's about 4 years 3 months of actual | power on time, and about 3 power cycles per year over the past | 16 years. | | The spec sheet says these drives use 8W idle. So: | | 192 months - 51 months = 141 months of non-use | | 141 months * 0.730 kilohours / month = 102.93 kilohours | | 102.93 kilohours * 32 watts = 3293.76 kwh | | Assuming 15 cents per kwh, that comes to $494 saved by shutting | the drives down over the past 16 years. And I paid $232 total | for the drives back in 2007. | | Obviously YMMV, just thought it would be fun to calculate :) | usr1106 wrote: | That might possibly be close where you live, but not where I | live. I need to heat my home at least 8 months a year and I | heat using electricity (which isn't the smartest thing to do, | but that's the way the house was built 30 years ago). It is | too hot inside less than 4 weeks a year. So saving energy is | done by trying to live in cooler rooms, but not by searching | for small consumers. | MayeulC wrote: | You probably meant 3 power cycles a day. | | What is your spin-down time? I use the following on my | server's fstab: UUID="abcd" /data btrfs de | faults,noauto,compress=zstd,x-systemd.automount,x-systemd.mou | nt-timeout=1min,x-systemd.idle-timeout=30min | ladyanita22 wrote: | Saying Windows has had it since Windows 98 and then, | acknowledging that the issue is wake-on-demand is a bit confusing | to say the least. Obviously Linux can sleep easily since decades | ago. The issue is wake on demand (and I don't know if Windows has | that even) | | Edit: I don't why everyone's having issues. I run Fedora on a | cheap Gigabyte G5KD and never had any problems. Never did with | either of my thinkpads or my Xiaomi Mi Notebook... | dolmen wrote: | > Obviously Linux can sleep easily since decades ago. | | No. | | I have an old Dell laptop that still doesn't power off when | asked from Ubuntu Desktop. Always reboots instead. | kortex wrote: | Classic "works on my machine". Operating systems are complex | beasties. Bugs happen. I have an Asus laptop with Ubuntu 22.04 | and it worked fine. Then one day, any time it comes back from | sleep, the screen stays black. Can't find and workarounds and | probably need to reimage. I have to do this about once a year | cause something inevitably borks. | VWWHFSfQ wrote: | > Obviously Linux can sleep easily since decades ago. | | Yeah right. Suspend and resume is still buggy as hell. Power | management in general in Linux is still awful after all these | years. | 1970-01-01 wrote: | Low-level power savings (s3 sleep) and magic packet (Wake-on- | LAN) have been a standard since the late 90s. Getting a Linux | OS that _actually delivers these standardized power features_ | is now a 20+ year old bug. I can only imagine the amount of | energy that would have been saved if this bug was properly | fixed 25 years ago. With solid-state tech becoming cheaper | every day, I now expect nobody will make an "it just works" | OS that has both sleep and wake working on-demand. Globally, | the HDDs will simply continue to spin until there are none. | usr1106 wrote: | Who pays for Linux development? Either companies for | servers or embedded Linux. Servers don't sleep. Embedded | might sleep, but it's not PC hardware, so it needs | completely different power management features. | | Nobody is paying for Linux on average PC hardware, that's | why 20 year old bugs are not fixed. | mtizim wrote: | I have no idea how it looks on the dev/setup side, but | suspend and resume is definitely a solved problem, seeing | that I've never had any problems with it on my Steam Deck | xeyownt wrote: | It's very likely designed for that use case so not very | relevant. | | Most PC are delivered with Windows, and even though Linux | works on them, it's unlikely the PC were designed with | suspend stability as criteria. | ladyanita22 wrote: | If that's the case, who's to fault here? Linux or buggy | ACPI states implemented in the motherboards? | xeyownt wrote: | I Confirm this. | | For years I use suspend on my laptop with latest Debian, and | it's very difficult to have an uptime higher than 15 days. | | Every now and then, the logging in freezes to death on wake- | up and requires hard power off. | lopkeny12ko wrote: | This sounds like an isolated and highly specific experience | being generalized to an entire operating system. | 0x457 wrote: | > Obviously Linux can sleep easily since decades ago. | | Over the last 5 years, I had about 4 laptops that I ran Linux | on. Not a single one was able to survive this: | | - Do some work on it - Close the lid - Drive somewhere else - | Resume work | | At best, the laptop would freeze and require a hard reset | (extra annoying on Dell XPS for some reason). At worst, it will | be completely draining of power. All of my linux-loving | colleges had the same issues. Windows worked just fine on those | laptops, btw. | | If you're curious, we've advanced beyond simple Suspend-to-RAM | in 2012 when haswell was released. Out of the 3 major OS that | used on desktop, only linux doesn't support those features: | https://www.anandtech.com/show/6355/intels-haswell-architect... | | I rarely have issues with S3 on my linux/windows desktop, | though. | RobotToaster wrote: | > I even looked at the datasheet for my network hardware, which | lists ARP Offload as a feature on the front page. | | >The only problem? No Linux support. | | Wouldn't it have been simpler to buy a network card with linux | ARP offload support? Or are there none? | jasoneckert wrote: | While it is easy to criticize the approach the author took to | solve this particular problem (as others have done here), I must | say that I appreciate well organized posts that detail a | technology problem and solution. While I may not implement a | similar solution, I always manage to learn something from reading | them that I'll likely use when solving another problem in the | future. | pmontra wrote: | I'm using a smart plug that I can turn on via curl from a script | of from its web server from my phone. However sleep to RAM has | some advantage. I already entered the wake on demand rabbit hole | and stopped at the first hurdles. Maybe I'll try again with the | experience of this post. | snthd wrote: | I'm seeing dark text on a dark background in the diagrams | (Firefox Nightly with Dark theme). | | Toggling dark mode to light mode to dark mode on the site's built | in control "fixes" it. | __turbobrew__ wrote: | The simple way is paying $9.99/month for 2TB of iCloud space and | put your Time Machine backups there. | | Home labbing can be fun and a good way to learn, but if you are | just trying to back up your files you cannot beat the economies | of scale and reliability of cloud providers. | NetOpWibby wrote: | This is most excellent, just in time for my Turing Pi. | bioemerl wrote: | So, fun story. I've got an "AI" server which has three P40s and a | M40 in it. I'm doing my own version of "off while idle". | | I discovered that if the server gets hard shutdown by killing the | power it will automatically start back up when the power turns | on. | | As a result I just set up home assistant with a power toggle and | when I want the server off or on I can start it up by restoring | the power. | | Way more brute force than this guy's solution, but hey, it works. | cesarb wrote: | > I discovered that if the server gets hard shutdown by killing | the power it will automatically start back up when the power | turns on. | | That's usually a configuration option in the BIOS setup screen, | what to do on power loss: "Last state" or "Off", and your | server probably has it configured as "Last state". | counttheforks wrote: | https://www.home-assistant.io/integrations/wake_on_lan/ and | https://www.home-assistant.io/integrations/shell_command/ with | `ssh server poweroff` if you want something a bit less risky | | measure the power draw from your smart plug when the machine is | on & off, then use that to set up https://www.home- | assistant.io/integrations/switch.template/ which combines all | of this | bioemerl wrote: | Oh man, that shell command is awesome. I could set it up to | run some of the services I have to manually do from my phone | right now. | | Thanks for that information. | wkdneidbwf wrote: | this is the kind of thing you spend so much time setting up and | then it just stops working weeks or months later. | | i would never attempt to do something like this without | automation. talk about a maintenance nightmare as the underlying | system changes. | IshKebab wrote: | I agree. WoL is not very reliable in the first place, and | adding ARP spoofing into the mix just makes it even more | unreliable. | | Would have made more sense to use the Pi as a gateway and to | turn the PC on using the power button. | unnouinceput wrote: | If you're involving an RPi in this, in order to save power, might | as well just have the RPi be the main driving force behind | everything. Flip a switch to power on the server, command the | backup once a custom app on server informs the RPi that server is | ready, shutdown the server again by setting the above switch to | OFF. This way your server will not even consume those idle watts | when waiting for wake packets. | patrickk wrote: | Another option is to control a power-hungry NAS with a PiKVM | device. It can be a cheap Pi Nano device for example. | | Got the idea from this youtuber[1], he has some nice ideas on | setting up a home server. | | [1] https://www.youtube.com/watch?v=f5jNJDaztqk&t=395s | | [2] https://pikvm.org/ | teleforce wrote: | What would happen if after long period of inactivity the server | become a "silent" device i.e. device that does not transmit | traffic for extended periods of time because can result in a loss | of service binding? These periods of inactivity, thus making the | device effectively unreachable (for example for a WAKE-ON-LAN | packet) [1]. | | The diagrams in the article are just gorgeous, can you share the | drawing tools being used here? | | [1] Shortest Path Bridging Architecture guide: | | https://www.al-enterprise.com/-/media/assets/internet/docume... | matthewaveryusa wrote: | drawings are made with https://excalidraw.com/ | cesarb wrote: | This reminds me of back when Apple sold WiFi access points (they | were high-quality, but a pain to administer since they required | running a Windows-only or a MacOS-only executable). I tried | running arpwatch for a while on a network which had one of these, | and gave up, since the MAC address for any Apple machine on the | network was constantly bouncing between the real machine and the | access point. Apparently, whenever an Apple desktop went to | sleep, that WiFi access point proxied ARP and mDNS requests for | it, much like what's described on this post (but it did that by | default, with no configuration required to enable it). | deltarholamda wrote: | They were high-quality. I used one for years, even had a hard | drive attached for a while for Time Machine backups, which | worked well. | | I had to stop using it for some reason--it wasn't getting | updates, or newer WiFi cards weren't working well with it, | something--and everything I've used since has been | disappointing. Even at the price point of the AirPort, they all | have various issues. I wish this technology was a done thing. | Qerub wrote: | For the record; you were observing the behavior of Apple's | Bonjour Sleep Proxy: | https://en.wikipedia.org/wiki/Bonjour_Sleep_Proxy | lloydatkinson wrote: | > Enable wake-on-LAN with unicast packets (not just magic | packets) | | I didn't know there was more than one type of WOL packet? | IshKebab wrote: | There's not really such a thing as a "WOL packet" exactly. | Basically the network interface accepts any old packet, and | then maybe wakes up depending on the content of the packet. | | You can configure it to wake up if it sees _any_ packet (what | he did). The problem is networks are rarely completely silent | and your machine will just wake up randomly. | | Which is why they invented "MagicPacket(tm)" which is just any | old packet that happens to contain a specific repeated byte | pattern. The network card will wake up on any packet that | happens to contain that pattern (which shouldn't happen | randomly). | | I don't know why he didn't use MagicPacket, even though he | mentioned the problem it solves. | 0x457 wrote: | He explained why: he wanted the server to wake just when | someone is tried to SSH to it. | xnyanta wrote: | I stopped reading when I reached the "Disable IPv6" part. ___________________________________________________________________ (page generated 2023-04-19 23:00 UTC)