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.
I wouldn't say it's frowned upon. It's just... assuming you are not going the container route, then it's basically the same thing that it always has been with any OS before LXC (and after that Docker) became a thing: One machine for multiple applications (bare metal or VM, doesn't matter). Managing and maintaining those without causing too much downtime is a sometimes unachievable task.
Generally speaking: since Docker became a thing, it really doesn't matter which OS you use to run which application from which image type (Linux or Windows, doesn't matter either).
My personal opinion:
That's how I do it.
Edit: of course nothing hinders you to run Windows Desktop bare metal as a NAS server. That's a perfectly valid thing to do. BUT: Same problem as running bare metal Linux as NAS server: How would you achieve backups/snapshots? I know it's certainly not impossible, but using a VM is many times more convenient. This is the main reason to use VMs.