I was reading a homelab discussion about NUTs (Network UPS Tools) that left me scratching my head and wondering "…why? Is complexity for complexities sake part of homelabs? Isn’t this a huge overkill for one machine? Just…use a UPS? "

Then I got to thinking more broadly about homelabbing and I started to wonder if there weren’t maybe (at least) two different schools of thought.

Using home media as example -

  • Store the original.
  • Detect the client.
  • Transcode when required.
  • Monitor the GPU.
  • Add reverse proxy et al
  • Track bandwidth.
  • Add user accounts
  • Add failover.
  • Graph the result.
  • Dashboard.

Vs

  • Store a common compatible file for your devices.
  • Play it directly.

Which school of thought are you and why?

PS: not throwing shade. I get it; for some people, complexity, learning infrastructure, practicing skills for work etc is part of the why. For me, complexity as recreation is suspiciously like work after work.

Perhaps there’s an odd Venn diagram between homelabbing, interest in ownership / useful capability and infrastructure that could make for a fun discussion. For you, is homelabbing a means to an end or is it an end in itself?

EDIT: Feel free to consider “home-lab” and “self hosted” as synonyms for the purpose of this discussion (although I am aware they are somewhat different in scope).

  • BakedCatboy@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    47 minutes ago

    I couldn’t find a common compatible format for me and 15 friends :( I also got tired of getting 20 requests to download more movies and episodes every week.

  • OneCardboardBox@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    3 hours ago

    What I get out of self hosting services: Full control of my data and something to tinker with when the fancy strikes.

    Graphs? Monitors? Failover? I get enough of that shit at work. If it’s down then whatever: I’ll fix it when the inconvenience is too great to ignore. External users? I only invite people who understand that this is my hobby, not my job.

  • Damage@slrpnk.net
    link
    fedilink
    English
    arrow-up
    3
    ·
    3 hours ago

    It’s fun. I installed Jellyfin because I’m not always at home and I don’t always have good connections available, so downloading a 4k movie from my NAS is not an option.

    Also it infuriates me when THINGS don’t do what I want them to. They’re things and they should adapt to me, not the other way around.

  • SuspiciousCarrot78@aussie.zoneOP
    link
    fedilink
    English
    arrow-up
    2
    ·
    4 hours ago

    As a follow up, I’m curious to hear from lurkers here or those who are thinking about self-hosting (but haven’t started yet); which approach appeals (using the “media at home” example in OP) and why? We’re all pretty much damned souls here but it might be interesting to hear from someone just starting out.

  • HamsterRage@lemmy.ca
    link
    fedilink
    English
    arrow-up
    6
    ·
    7 hours ago

    I think that as you move towards replacing cloud services with self-hosted ones you take on the responsibility of providing the same reliability as the cloud services.

    Just installing a UPS will let you ride through 99% of all power failures because most of them are only a few seconds long. My UPS says that my entire HomeLab, including Internet modems runs at about 100W, and it will last for the better part of an hour.

    The question then becomes about longer outages, that run the UPS dry. There are two issues.

    The first issue is system shutdowns, if they just crash when the battery ends, then you run the risk of data corruption and disk buffers that haven’t flushed. But in truth, this is probably a minor possibility. Your servers were up, but the rest of your house was already down. No feed from the cameras, no events in HomeAssistant, no WiFi, no nothing. This means virtually no activity on your servers for an extended period of time.

    This doesn’t eliminate the possibility of corruption, but it makes it less likely.

    The second issue is getting the servers back up and running when the power returns. This can be a bit more complicated, what if the power is up and down a bit before the UPS has some charge built up?

    Maybe your best just leaving them off for a bit until things have stabilized and the UPS has a charge.

    NUTs deals with both of these issues in an automated fashion. It can shut your services down in a controlled manner so that they don’t crash when the battery dies. It can bring your servers back on line when the power is restored and stable.

    For me, my main concern is for when the power failure goes past he battery life when I’m on vacation. I won’t be able to go and push power buttons on the server. NUTs can get a bit tricky if you are looking for 100% hands-free operation. I can deal with anything when I’m home, but away in problematic.

    I’ve decided to leave NUTs out of the mix for now. All of my servers are configured to turn on when power is restored, and all of the services are configured to start up automatically when the server boots. I’m content to let the UPS drain dry, crash the mostly idle servers when that happens, and then reboot when power is restored.

    There’s a risk, but I think I understand it.

  • curbstickle@anarchist.nexusM
    link
    fedilink
    English
    arrow-up
    6
    ·
    8 hours ago

    My lab and my hosting setup are actually fully segregated, but as far as why I’ll go the more complex route I’d say its simple:

    • I have the hardware (I get things through my work, sometimes to test for clients, etc)
    • I have the knowledge
    • I can give my family a better experience than the big companies offer
    • Because I like to keep my skills current
    • Some of the time, manufacturers send me things to test out or develop features for. After passing the lab testing, if I like it I’ll add it to my home and maybe make some more fun things happen.

    So the short version is just “because I can”. I don’t stress over outages or anything, if I’m out then I’m out. I UPS with NUTs because I can, and because that data is also useful for me for my work.

    That same approach applies to other aspects as well. If I’m not interested in doing something, I just don’t and I move on.

  • irmadlad@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    8 hours ago

    I was reading a homelab discussion about NUTs (Network UPS Tools) that left me scratching my head and wondering "…why? Is complexity for complexities sake part of homelabs? Isn’t this a huge overkill for one machine? Just…use a UPS? "

    I think it’s like anything else people do. Some are quite satisfied at a moderately basic level. Others tho, implement K8 clusters, etc, a complexity level I have no interest in. Take golf for example. I used to play quite regularly. I had a raggedy old bag and some beginner level clubs I bought third hand. My buddy had every golf gadget you could possibly imagine. Thousands of dollars to whack a ball around a course and into a hole, on an amateur level. I’m thinking, ‘Dude, this isn’t the Masters Tournament at the Augusta National. We’re just whacking balls into holes and having a few beers on the weekend’ . But, every time we got together, he just had to show me his new gadget that cost him hundreds of dollars and added even more complexity to the game.

  • brewery@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    10 hours ago

    When you have nextcloud, immich, vaultwarden and navidrome, this is real data that you’re talking about on services that I use several times a day. I had an overnight blackout that took me a few hours to recover from. No data lost and have a 3-2-1 backup system but that takes time and energy to fully recover from.

    After that, bought the cheapest UPS I could find, installed NUTS and not had issues since. Most blackouts seem to happen overnight and all have been less than 5 minutes.

    Buying a UPS that would last for 12 hours minimum (happens just after I go to sleep and I realise in the morning or happens at work and not back home until then) is much more expensive and difficult than installing CUPS to have it switch off. Then I can wake up, turn the machine back on, wait a few minutes and everything will be back up. I can run tests but if I need to go to work I can leave that to later and what works I can use.

  • DecronymB
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    42 minutes ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    NAS Network-Attached Storage
    RPi Raspberry Pi brand of SBC
    SBC Single-Board Computer
    VPN Virtual Private Network
    VPS Virtual Private Server (opposed to shared hosting)

    4 acronyms in this thread; the most compressed thread commented on today has 11 acronyms.

    [Thread #90 for this comm, first seen 28th Aug 2026, 12:40] [FAQ] [Full list] [Contact] [Source code]

  • Godort@lemmy.ca
    link
    fedilink
    English
    arrow-up
    33
    ·
    18 hours ago

    It’s a hobby, and most of the reason why is because it’s fun to get it all set up and working exactly the way you want.

    I think of it like this:

    Why would anyone spend all the time and money to build a hot rod when they could just drive a sensible Toyota Corolla?

    • bizarroland@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      edit-2
      17 hours ago

      For me, a more accurate analogy would be, why do I spend all of my time and money fixing up a 40 year old Jeep when I could take an Uber?

  • __hetz@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    13 hours ago

    I’m not sure if there’s a fundamental misunderstanding but I felt a need to clarify that NUT works with a UPS. It isn’t either or. Whether you’ve got a homelab or a single desktop PC, you need some piece of software which can see when the UPS goes “Oh shit, power is gone” and instruct the machine(s) to shut down cleanly. NUT is that software. If it wasn’t NUT then it’d be whatever software the UPS manufacturer either provides or recommends for your combination of UPS and OS.

    To the example of how one provides media to other devices inside (and possibly outside) the local network, although I get the broader idea, it really becomes a matter of scope, scale and taste. If my goal were to provide access to family members outside my home, friends, possibly friends of friends (either by intent or as a result of account sharing) then I’ll probably want monitoring. I’ll want a dead simple app any of them can install and point to a memorable URL. I’ll want alerts if someone in Romania or Shanghai attempts to log in with a friend’s account… You get the gist. If it’s not something that matters outside my house and I’m not going to repeatedly need to setup VPNs and map network drives for people, I could just spin up a Samba share and add it to the handful of devices in my home network and let those devices decide what application opens whatever media.

    In actuality I’m extremely small scale (serving only my home) and still prefer Jellyfin for its simplicity and transcoding. It’s simple enough to slap on cheap Android TV boxes and hand someone the remote. No real reason to watch it like a hawk. Nor to track bandwidth; I’ve got an excess for the house. The GPU is capable enough; an Arc A380 that’ll never have enough simultaneous transcodes to be a bottleneck.

    To answer the “why?,” I am one of those people that enjoys learning things that often feel like (or factually are) work. Maybe it’s self flagellation and I just refuse to admit it. I am a Factorio addict. But it’s also because tackling those things usually means the other users have an easier time. Mamma don’t wanna learn to drive the network to her laptop or search the app store for a file thingamajig what can connect to that tango or salsa or whatever just to scroll through a bunch of video file icons with the text so small she has to break out the Walgreens readers. She wants a shiny interface that’s swipe-able on a phone or tablet or navigable with a remote control. Pretty movie posters and bold legible titles. And I haven’t touched my config in months for that matter. Just a little bit of work has propped up a really enjoyable, ongoing show/movie watching experience. Definitely worth.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      13 hours ago

      I’m not sure if there’s a fundamental misunderstanding but I felt a need to clarify that NUT works with a UPS. It isn’t either or. Whether you’ve got a homelab or a single desktop PC, you need some piece of software which can see when the UPS goes “Oh shit, power is gone” and instruct the machine(s) to shut down cleanly. NUT is that software.

      Could be. In context, the respondent was discussing the use of a raspberry pi - between their UPS and their single Lenovo minipc - as a stand-alone home device. Why? Don’t know.

      To my understanding, the sequence is (or should be)

      Mains fails -> UPS supplies battery power -> UPS reports its battery state over USB -> software on the PC shuts the OS down.

      Using a Pi as a dedicated NUT server makes sense when several machines need the same UPS…for one PC, it seems like an extra machine in the chain (for the sake of an extra machine in the chain).

      That’s sort of what I meant: things get overbuilt. Maybe for fun.

      • __hetz@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        4
        ·
        12 hours ago

        I was actually working on an edit to further clarify but that context helps. You’d think for a single machine, just run NUT (or whatever) directly on said machine. The two big reasons, even in that case, for using NUT on a RPi or other low power machine are actually what my edit was going to address: Power Consumption and Wake on LAN. After shutting down any power hog server(s) a decent UPS can probably keep a Pi Zero and travel router running for half a day. Ideally long enough to send a WoL packet to the server(s) once the UPS says power is restored. That can be pretty important, even in a “single” (ignoring the Pi) machine setup, if you’re out of town and nobody else has access to manually power it back up.

        I will admit NUT was one of the more convoluted things I ever set up, and one has to write their own scripts and such for it, but I find it worth the peace of mind knowing things shut down cleanly. Having them wake back up automatically is icing on the cake, even if my own setup is local only. There’s never a need, if I’m not home, to walk anyone over the phone through identifying which nondescript black rectangle needs its power button pushed.

        • hirihit640@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          11 hours ago

          I bet another reason is security. You might not trust the NUT software. It might be proprietary, and even if its open source, it might not be scrutinized enough to be safe.

          Using separate hardware, lets you take in the power loss signal from the NUT and then convert it to a channel you might trust more, like an http request over wireguard. Alternatively you could use a VM with usb passthrough on the main PC…though usb passthrough still has risks.

        • SuspiciousCarrot78@aussie.zoneOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          12 hours ago

          I can dig it…but surely the simple option is to have the PC wake up on power restoration, right?

          Set the BIOS to “restore last state after AC loss” and let the UPS do its basic job. If power returns before the battery dies, the PC never shuts down. If the battery does die, the PC loses AC while running, then powers back up when AC returns.

          Does that not achieve the same outcome?

          I get the idea of Pi + NUT + WoL setup (especially if you want a clean shutdown). It just seems…a lot for a single machine.

          (He said, conspicuously hiding the shopping cart of solar panels and marine batteries)

          • __hetz@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            10 hours ago

            What you’re describing works but probably not for me as you acknowledge. The “PC loses AC while running” part is what I actively try to avoid as part of the greater goal of minimizing risk of damage/data loss. It might be superstitious at this point, modern hardware and filesystems being a bit more resilient, but I feel better not risking it. Since I’m shutting down before the UPS battery dies, and power could restore before it does, there’s a real chance power will never be totally lost as far as the motherboard sees it. In that case a boot on AC restoral won’t get triggered. Otherwise I agree. It’s a lot of work. Or rather a lot of research, RTFM, and understanding before you can even do the a little bit of work to implement it.

          • Wolf314159@startrek.website
            link
            fedilink
            English
            arrow-up
            2
            ·
            10 hours ago

            The idea is to have the server safely shutdown BEFORE it loses power, so that BIOS setting wouldn’t mean anything. The server does not loose power while it it running, so it will never “restore last state after AC loss”. The idea is that you can run a low power device (the raspberry pi) for which you don’t care if power is cut abruptly and that can talk to both the UPS and the wake-on-lan of the server directly over ethernet. It being local means those WOL are much more likely to work than trying to send them from outside your network when you’re remote. It’s a lot simpler to set this up once than it is to recover a server with a corrupted file system due to power loss or lose access to your server for weeks because a thunderstorm knocked out power for 30min at the beginning of a long trip. That pi can also take care of other always on services like a pi-hole, home assistant, etc.

          • SteveTech@aussie.zone
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            10 hours ago

            I can dig it…but surely the simple option is to have the PC wake up on power restoration, right?

            After the PC shuts down, the UPS runtime will increase by a lot. So the power might come back before the UPS turns off, so as far as the PC can see, the power was never lost.

            Edit: Also I assumed you meant restore on after AC loss, and not the last state.

  • dragonlover@lemmy.zip
    link
    fedilink
    English
    arrow-up
    3
    ·
    13 hours ago

    My homelab is a learning tool that became useful enough to keep some things alive. It started with a raspperry pi and docker and has evolved to multiple systems with backups and some decently complex networking.

    Ive always seen a “homelab” as different from a “home server”. Homelabs are meant to be fucked up as you learn things. Have a home lab long enough and you end up with a test lab and production environment.

  • unitedwithme@lemmy.today
    link
    fedilink
    English
    arrow-up
    6
    ·
    16 hours ago

    I love homelabbing as much as the next guy… But at my current job, i get enough fix to not do so much at home. And work sort of acts like my Dev environment and home is my production anymore.

    I want to run something? I stand up a test at work and often implement it. Once familiar, now it’s faster to setup something similar at home instead of eating precious family or me time.

    Having said that. I have NUT servers on every UPS/IDF (about 14) and it’s helped numerous times when power is lost. I get a alerts through NTFY and can fix before my UPS goes offline. My batteries are overkill so it buys me about 45-60 minutes too. I’m also now protective and not reactive, so i get to avoid a bunch of complaints.

    The other bonus: I spend company money and not my own 😅😅. But most stuff is useful and worth it. I learned to also inform upper management and/or owners each time something I good saves my ass so they know its working and not a waste of money. At least it helps avoid the appearance I’m (always) sitting on my ass all day.

  • tburkhol@slrpnk.net
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 hours ago

    My homelab has been running for 20 years, during which I’ve gone through something like a dozen desktop and laptop PCs. Copying a terabyte of media to each of those computers seems like a terrible waste. My TVs, either through Raspberry Pi or their own software, can also play all of that media.

    The homelab also runs a few 24/7 services that do stuff overnight (most notably sensor data logging), pihole, routing, media management. It’s lower power than the desktop/gaminng computer, and it’s not practical to have those 24/7 services on a laptop that leaves the house periodically.

    So, homelab to minimize the amount of storage replication, minimize power consumption, and provide always-on processing.

    Of course, having that platform, it’s also an opportunity to play. Implement services that totally wouldn’t be practical in and of themselves, but setup makes a fun diversion for an afternoon or a weekend. Remote access for the rare occasion when I’m traveling. Monitoring the otherwise invisible, headless computers. (like NUT to keep track of 3 different UPSes)

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    7
    ·
    17 hours ago

    I was reading a homelab discussion about NUTs (Network UPS Tools) that left me scratching my head and wondering "…why? Is complexity for complexities sake part of homelabs? Isn’t this a huge overkill for one machine? Just…use a UPS? "

    So, you don’t need to run any software at all on a host on a UPS. You don’t need NUT or anything similar. You can just plug a PC into a UPS.

    However, traditionally, the purpose of a UPS isn’t “just power a machine through an extended outage”. It’s to provide enough time to cleanly shut down a machine. Save work, and—once upon a time, filesystems that weren’t cleanly unmounted could become corrupt—unmount filesystems.
    It can also provide time for something like a backup generator, if you have something like that up. The UPS may only have enough juice to run the PC for a few minutes. If you look at traditional UPS units, they have very limited amounts of time that they can keep a PC running. They aren’t aimed at the “whole house multi-day keep things running” capability that some lithium ion battery setups are these days.

    So traditionally, one would have software on a machine that takes some action, like shutting it down cleanly, when the battery gets low.

    If what you have a UPS for is to keep a PC running through momentary power interruptions, and you don’t care about, say, remotely monitoring power status, then, sure. NUT isn’t necessary. Same thing if you just want to provide a short amount of buffer time to let a generator that comes on automatically in an outage fire up.

    But if you want remote monitoring of power status or you want hosts to shut down cleanly, then it may be useful. For some people, that’s the reason that they have a UPS at all.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      17 hours ago

      Exactly. Which made me wonder why someone would use this for a small machine sitting by their feet, that didn’t serve external anything. Horses for course and all that.

      • IsoKiero@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        4
        ·
        14 hours ago

        Modern filesystems can corrupt as well with unclean shutdown. They are just less likely to do so. My server stores photos of our life over couple of decades with other nearly irreplaceable data so having the UPS and clean shutdown on power loss gives at least some confidence that the files stay where they are.

        Of course I also run backups of the data, but it’s another layer on data safety setup.

        • tal@lemmy.today
          link
          fedilink
          English
          arrow-up
          1
          ·
          9 hours ago

          Modern filesystems can corrupt as well with unclean shutdown. They are just less likely to do so.

          It shouldn’t be possible for them to become corrupt on an unclean shutdown, at all. Not at the filesystem level. It isn’t just a question of probability.

          It’s possible that there is some bug in the implementation of a filesystem that causes it to violate its guarantees.

          There could be, oh…hardware bugs, say, where hardware violates guarantees.

          Files can be partially-written. Software might not handle that, though properly-written software designed like a DBMS will be set up so that a partially-written file will not become corrupt at the file level.

          Some filesystems permit disabling features that guard against filesystem corruption.

          But absent something like that, it should not be possible for one of the filesystems to become corrupt on an unclean shutdown, at all.

          • BartyDeCanter@piefed.social
            link
            fedilink
            English
            arrow-up
            2
            ·
            7 hours ago

            Not all modern filesystems are CoW like btrfs. ext4 is merely journaled, which means that there are rare instances where it can be corrupted, but recovery is fast. However in both cases you can still end up with individualy inconsistent files if, say, the power goes out while the CoW b-tree is percolating up and so the file never gets updated or if the ram cache never has a chance to flush.

            • tal@lemmy.today
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              6 hours ago

              ext4 is merely journaled, which means that there are rare instances where it can be corrupted, but recovery is fast.

              None of these things mean that the filesystem becomes corrupted; the filesystem will be in a filesystem consistent state when remounted. You can have a write that is partially performed on a file, but that does not cause the filesystem to become corrupt when it does not complete being written. The journal can contain that write, but it can not yet be committed, and won’t yet be visible to a user. But that doesn’t make the filesystem corrupt; the commit itself is atomic.

      • tal@lemmy.today
        link
        fedilink
        English
        arrow-up
        1
        ·
        17 hours ago

        Well, they might want that save-data-and-clean-shutdown functionality. I mean, I don’t personally care all that much for my use case, but it’s a legit want. Like, say you have a USB flash drive plugged into your machine. Those normally ship formatted with exFAT, a Microsoft filesystem derived from the elderly FAT16 filesystem, and most people use them like that, as pretty much every OS out there can read FAT. FAT can become corrupt in the event of power loss. Or say you’ve been working on something in some application that doesn’t do auto-save and have a day of work accrued in the thing and then you get a power loss. Having a few minutes notice to clean up and shut down is legit important, same way that a laptop will issue low power warnings on a battery. This makes sure that you get that notification.

        I think that in general, the clean shutdown functionality isn’t as important these days as it was in the 1990s, as most machines are using journalled filesystems that don’t become corrupt on power loss these days. NTFS (Windows land), HFS+ (MacOS X), or ext4 or btrfs (Linux) for most of their storage. But, I mean, there are going to be people who want it. I don’t think that someone has to be wanting complexity for the sake of complexity for them to have a use case where that applies.

        EDIT: Looks like HFS+ actually got replaced with a newer FS a few years back as the default on MacOS.

        • BartyDeCanter@piefed.social
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 hours ago

          And even if the filesystem doesn’t become corrupted, individual files can become inconsistent or incomplete. Such as if two files reference each other, but one completes its write to the new version while the other is still in flight when power goes off.

          • tal@lemmy.today
            link
            fedilink
            English
            arrow-up
            1
            ·
            6 hours ago

            And even if the filesystem doesn’t become corrupted, individual files can become inconsistent or incomplete.

            Sure, but that is not filesystem corruption, and I addressed it in my comment.

            • IsoKiero@sopuli.xyz
              link
              fedilink
              English
              arrow-up
              2
              ·
              6 hours ago

              But in the real world it doesn’t really matter if it’s the whole filesystem or an idividual file which is corrupted. Either way the data is compromised and nitpicking that the filesystem is actually just fine doesn’t make any difference.

              • tal@lemmy.today
                link
                fedilink
                English
                arrow-up
                1
                ·
                5 hours ago

                The big concern with filesystems becoming corrupt is that all of the data can be lost on a filesystem. Most of the time, this doesn’t show up, but if you lose power at just the wrong time, it can happen. With FAT, HFS, ext2, and similar filesystems that were vulnerable to corruption on power loss, that was a real risk.

                So having some kind of power source to make an unclean shutdown unlikely avoids the risk of a really, really bad scenario.

                The general shift away from reliance on those filesystems has mitigated the really-bad-case that drove a lot of UPS use.

                Databases are probably the most-critical case where applications update a file on disk constantly, and where corruption would be bad. As long as they live on a filesystem that itself can’t become corrupt on power loss, they’re normally structured with a carefully-ordered series of writes and use of write barriers so that they cannot become corrupt.

                An individual file can be partially written out. Like, say I’m saving a file in Photoshop, and I have only written half of that file. What winds up on the disk is the first half of of a Photoshop file. That’s an invalid Photoshop file. For some applications, that can matter. Like, say (a) I chose to overwrite an old file and (b) the application doesn’t atomically store the new file (like, write it out, fsync(), and then rename the new file over the old) and © there’s no backup or other system in place.

                Or, even aside from partially writing out a file, I can entirely lose work that isn’t saved at all, if I’m not using a software package that makes use of some sort of autosave system. If I haven’t saved all day, then, well, all of that unsaved work is going to go away if there’s a power loss.

                That’s a much smaller potential data loss, but, sure…power loss can cause data loss, even if it doesn’t produce that “everything is lost” filesystem corruption.

                I’m not asserting that there’s no utility to a UPS; quite the contrary, as my comment was explaining to OP why there is use some people have for having NUT even if he personally doesn’t care much about it for his use case. I’m just pointing out that some of the major reasons for having a UPS+host-side-software combination that existed in, say, the 1990s aren’t really much of a thing in 2026. That was that you really did not want machines using filesystems normally used then to perform an unclean shutdown. Even with a UPS and host-side software like NUT, you can have data loss, as NUT cannot force all software to save unsaved data; there’s no standardized mechanism for forcing applications to save. If the PC is attended, you might get a warning and have a chance to manually save, but that’ll be the best that’ll happen, and if the PC is unattended, well, that save isn’t going to happen. But what NUT and similar software can do is to, when the UPS battery level gets low, trigger a clean shutdown. That ensures that the OS has time to perform a clean shutdown, and on filesystems that have a risk of filesystem corruption if the power is cut—FAT, HFS, ext2, and similar—a UPS with host-side software would avoid that case from arising.

                If someone wants to have a UPS in 2026 on filesystems that don’t have those limitations, that’s fine. They may want to have, say, a five minute window to save their work if they are at the PC when power loss occurs. It may help avoid problems that arise from software that cannot cleanly handle power loss—I that Steam can, if power loss occurs while it is updating itself, wind up in a broken state from which it cannot automatically recover when restarted, as I’ve done that myself.

                But generally, if you lose power on a system in 2026, you aren’t facing a “I might lose the contents of my hard drive” scenario.

                • IsoKiero@sopuli.xyz
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  3 hours ago

                  There’s plenty more reasons than filesystem corruption to use clean shutdown and even just plain UPS without any status information to the host. I haven’t seen a full drive corruption due to power loss ever. Various levels of corruption, yes, but not ‘all the data is gone’ scenario due to filesystem being broken. But I have seen multiple hard drives which have died on host shutdown without any warning (no smart errors or such), after power loss they just refused to start again.

                  Just today we had multiple short (~30 second) power outages and without UPS that would’ve put considerable strain on my hardware. Gladly those are pretty rare and those were well short enough that my UPS kept the system running, without one that would’ve meant that my hypervisor would’ve crashed and that would’ve resulted on several unclean reboots for the VMs.

                  Also, back to filesystems, with selfhosting, some kind of hypervisor is often in the picture, so the drive activity is generally much higher than with single workstation and corruption on a single file or some part of filesystem is way more likely. Total data loss is pretty unlikely, but a corrupted VM image can be a pretty big deal, regardless if it’s filesystem or single file which is the main issue.

                  there’s no standardized mechanism for forcing applications to save

                  On Linux (and I guess BSD and other *nix variants) there is. SIGTERM is exactly for that situation. Sure, programs can choose to ignore it, but I don’t think I’ve ever seen at least any FOSS software which wouldn’t respect that. Of course the program might crash and cause loss of data, but the mechanism is there.

                  You’re of course generally correct about modern filesystems being more resilient to power loss, but they’re not immune to problems and also you’ve omitted a large chunk of other reasons why people like to have UPS on their system, with or without monitoring them.

                  For me personally the hardware is least interesting part of running a homelab. I’d happily run everything on VPS if there was no constraints on money or bandwidth (among other things). But as the limitations are there running things on my hardware is a necessary evil and for that an UPS or two are practically must to have to prolong life span of hardware and prevent data losses. Of course that’s just one box to check on the stack, but when planning for a home server setup for anything I’d say it’s a pretty vital part for the whole setup.