I currently have a 10-year old off-the-shelf NAS (Synology) that needs replacing soon. I haven’t done much with it other than the simple things I mention later, so I still consider myself a novice when it comes to NAS, servers, and networking in general, but I’ve been reading a bit lately (which lead my to this sub). For a replacement I’m wondering whether to get another Synology, use an open source NAS/server OS, or just use a Windows PC. Windows is by far the OS I’m most comfortable with so I’m drawn to the final option. However, I regularly see articles and forum posts which frown upon the use Windows for NAS/server purposes even for simple home-use needs, although I can’t remember reading a good explanation of why. I’d be grateful for some explanations as to why Windows (desktop version) is a poor choice as an OS for a simple home NAS/server.

Some observations from me (please critique if any issues in my thinking):

  • I initially assumed it was because Windows likely causes a high idle power consumption as its a large OS. But I recently measured the idle power consumption of a celeron-based mini PC running Windows and found it to be only 5W, which is lower than my Synology NAS when idle. It seems to me that any further power consumption savings that might be achieved by a smaller OS, or a more modern Synology, would be pretty negligible in terms of running costs.
  • I can see a significant downside of Windows for DIY builds is the cost of Windows license. I wonder is this accounts for most of the critique of Windows? If I went the Windows route I wouldn’t do a DIY build. I would start with a PC which had a Windows OEM licence.
  • My needs are very simple (although I think probably represent a majority of home user needs). I need device which is accessible 24/7 on my home network and 1) can provide SMB files shares, 2) act as a target for backing up other devices on home network, 3) run cloud backup software (to back itself up to an off-site backup location) and, 4) run a media server (such as Plex), 5) provide 1-drive redundancy via RAID or a RAID-like solution (such as Windows Storage Spaces). It seems to me Windows is fine for this and people who frown upon Windows for NAS/server usage probably have more advanced needs.
  • Skwide@alien.topB
    link
    fedilink
    English
    arrow-up
    2
    ·
    10 months ago

    For server:

    docker is linux in a jailed namespace (network, filesystem, process tree, etc jail)

    Docker hosted on linux is efficient.
    Docket hosted on anything else less so.

  • lightmatter501@alien.topB
    link
    fedilink
    English
    arrow-up
    2
    ·
    10 months ago

    For me, #1 is license costs. I’ve taken home some servers which would require me to buy 4+ windows server licenses because 16 physical cores is a number for entry-level servers at this point. For the cost of those licenses, I could almost buy a new server with a similar amount of cores every single year.

    Second, the brand new filesystem, ReFS, (which needs licenses), has just about caught up to what ZFS had in 2005. The biggest omission is that 2005 ZFS could be your root filesystem. This is less important on *nix systems where your root can be tiny, but windows insists on storing tons of stuff on C, which still needs to be NTFS. ZFS also has 22 years of production testing and still has lots of development.

    Third, I want to use containers, and windows uses a Linux VM to do that, so why not skip the middle man?

  • Freonr2@alien.topB
    link
    fedilink
    English
    arrow-up
    2
    ·
    10 months ago

    Never been a better time to try Linux. Ubuntu is pretty easy to get started with (download and setup a bootable USB, stick it and go) and ChatGPT is extremely good about walking you through any questions. You don’t even need to ask highly technical questions, just tell it your goal and your system.

    “I just installed Ubuntu 22.04 on my computer and want to SSH into it from a Windows computer on my network, how do I do that?”

    “I want to download a file from my Ubuntu command line, how do I do that?”

    “I want to setup a share that both Windows and Linux computers can access over my network, how do I do that?”

    “I have a github action runner provided by github that includes a run.sh file that needs to run constantly. I want to setup as a background service on my Ubuntu Linux computer so it will always be running as long as the computer is on, how can I do that?”

    It will spit out every command line you need in what order, contents of a .service file, tell you how to monitor it, and so on. You can ask it what each line does, what the parameters mean, etc. It’s like having a mid-level sys admin at your fingertips. It will interpret any errors you get, and tell you how to fix them.

    Perfect? Maybe not, but its close for a remarkable variety of tasks. It may be, and I’m not joking, 20 times more productive and time efficient than Google searches, reading stackoverflow posts, reading documentations/man pages and trying to decipher what you really need out of any of those sources.

    I’m sure some are too paranoid to ask ChatGPT certain things for privacy reasons, and I would anonymize anything you paste in, probably just be a bit mindful of anything involving permissions (you can also ask what security risks exist doing something). Just normal ChatGP3.5 (free) is extremely knowledgeable about Linux CLI and administration along with common packages and apps you’d want to use.

  • Pericombobulator@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    You could run desktop Windows but if you get the Pro version then you can RDP into from your desktop/laptop. It makes administering it very easy, like working on it locally. .

    Personally, I run Ubuntu Server (took a little learning) which I choose to run on Proxmox. You can just run on bare metal. I then just install the media-related packages I use : plex, Sonarr, radarr, SAbnzbd etc

  • erikpt@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Simple, the SMB connection limit in Windows Pro editions (7,8,10,11) is 20. In previous editions it was 10, and I can’t find a reliable number for the non-pro editions.

    That may sound like a lot, but if you have lots of devices reading/writing to it, you’ll quickly run out. It’s also kind of a resource hog when there are lightweight and easy to setup dedicated NAS operating systems with no user limitations for free like TrueNAS (fka FreeNAS) and others.

  • liverwurst_man@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Windows has more overhead, is more expensive, is less interesting/fun IMO, has poor data parity features, and has less of the homelab community’s attention than any purpose built Linux based home-lab OS. But it will definitely do the job with minimum effort from you.

  • killermouse0@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    I can get behind your pragmatic analysis. If it works, is low power, easy to manage, etc then that might be a good choice! One thing to possibly also consider: how future proof would you say it is?

  • mrtramplefoot@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    I use windows 10 pro for my nas/media server. I run drivepool and it works great for me. I run a Pentium gold g6400 and it’s more than enough power. It might use a bit more RAM, but I’ll buy another 8gb of RAM before I spend eons trying to learn how to do something in Linux.

    • ozaz1@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 months ago

      Thanks. hadn’t heard of drivepool. I’ll look into but could you mention key reasons you use this instead of the built-in storage spaces feature?

      • ghost97135@alien.topB
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        I used to use Stablebit Drivepool until I migrated to unRAID.

        Drivepool is great. You can easily use mismatched drives and you can have folder level duplication (I.E. set files to duplicate to individual folder). If the Drivepool becomes unreadable for whatever reason, you can just mount in and read the drive from almost any operating system. You can also combine it with Stablebit’s DriveScanner and CloudDrive. The scanner will monitor the drives and begin to move data off automatically if the drive reports errors. The clouddrive lets you use cloud providers (such as Google Drive and Onedrive) as normal “hard drives” in your computer. You combine DrivePool and Clouddrive to combine online storage providers to create a single large drive.

  • nowhereman1223@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    End User Windows has a shit history with forcing updates on you and reboots just because you waited to long.

    End User Windows is also not great at managing large numbers of storage drives.

    They also aren’t great to manage remotely.

  • CryptographerOdd6143@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    The S in NAS refers to storage and storage requires being able to use multiple drives together as a single disk. Windows doesn’t work well for this primary NAS use case.

  • ProbablePenguin@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    The main downsides of windows for a server are:

    • Forced reboots

    • More RAM/Storage usage for the OS

    • No options for ZFS or similar data protection software, storage spaces provides basic RAID but the performance can be fairly low.

    • Needs a license

    • Less general availability of self-hosted software, but you can run Docker for Windows as a way around that.

    However there are some upsides, it’s very easy to set up and manage, SMB shares are super easy, and some backup software like Veeam B&R is windows only.

  • jayaram13@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Honestly, you do you. Stick to what works with your workflow and use case.

    However, given that you’re in r/homelab, it’s reasonable to think you’re open to learning new things. With that, Windows tended to not be as stable as Linux (hence the dominance of Linux in the server world).

    Windows approach to drivers and software wasn’t as clean as Linux. Uninstalling software was not guaranteed to remove everything in Windows.

    Windows license is another minus.

    Plus, given that it isn’t open source, and given the dominance in desktop world, lots of viruses tend to target Windows, and we don’t get patches on a timely manner. Plus, there’s a history of patches breaking things in Windows.

    Linux and Unix, tends to be simple and stable. Synology is a very good NAS, which combines the robustness of bsd with a fantastic GUI. I’d personally urge you to get another Synology or explore xpenology.

    But barring that, your use case today is simple enough and if you think Windows is sufficient, go for it.

    If you want to also get learning out of it, explore truenas scale. It’s based on Debian and is fantastic. You can also sideload proxmox on it for various VM and lxc magickery.

  • Alex_2259@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Not that I encourage it, but home users seldom pay MSRP for Windows licenses or at all. Getting around the licensing while ridiculously unlikely to get you busted is a hassle.

    The answer is there’s just better options you can install on top of Linux or BSD that are easier to manage, a better experience (nice web panels and not an RDP GUI or clunky thick client) and they have 0 licensing concerns to pay or work around.

    I wouldn’t host a share directly from the Linux CLI for some reason I always found this to be kind of a pain but it works, there’s easy solutions like TrueNAS or OpenMediaVault, container based options and you can take the cowards way out with Portainer (that’s what I do) to run tons of really lightweight services.

    Windows is fine just not the best unless you’re doing something that works better or needs it

  • EnkiAnunnaki@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    RAM management is terrible and I just ran Windows Updates on my gaming PC last night and it went into a boot loop. Been a while since I’ve heard about a NIX platform running into boot loops on system updates.

  • MikeHods@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Personally, unless I need Active Directory, I actively avoid MS Server. One of the biggest issues for me, is the lack of Docker support. If I have to run WSL or a VM for Docker support, then I’d rather just run Linux and cut the middleman.