this post was submitted on 16 Nov 2023
2 points (100.0% liked)

Homelab

1015 readers
2 users here now

Rules

founded 2 years ago
MODERATORS
 

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.
(page 2) 50 comments
sorted by: hot top controversial new old
[–] eagle6705@alien.top 1 points 2 years ago

The biggest limitation is connection limits. While 2-3 users won't matter, once you get past 10 connections you will start to get into issues.

[–] Holmlor@alien.top 1 points 2 years ago

Once upon a time the home version of Windows didn't support any level of RAID.
I'm not certain what it supports now but I think you can at least do mirroring and maybe it can do rotating-parity (RAID 5).

[–] cerberus_1@alien.top 1 points 2 years ago

I run windows active directory and a few other windows features as I have a legit server 2019 licensee and it works quite well, including hyper-V.

But all my VM are linux based.

[–] Matt_NZ@alien.top 1 points 2 years ago

I’ve run a Windows based home lab for around 10 years now. I use Windows Server as the OS tho and I use it as a Hyper-V server.

I do have a couple of Linux VMs running for things like Home Assistant, Frigate and TeslaMate, but everything else is in a Windows VM - specifically a Server Core VM.

Hyper-V itself is pretty capable when compared to the other options as well. Some of my VMs have PCI cards passed to them via DDA and I recently set up GPU partitioning to share a GTX 1650 between some of those Windows and Linux VMs

[–] fresh-dork@alien.top 1 points 2 years ago

running windows for a year unattended isn't as easy as something like synology, which appears to be an embedded style linux variant. also, getting hot swap working properly plus disk management is more complex

[–] thetredev@alien.top 1 points 2 years ago

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:

  • Use a "real" hypervisor as the underlying OS: ESXi, Proxmox, KVM standalone, whatever suits your needs and skills. Why? Because the OS is made for hypervisor tasks. Windows Server or Desktop with Hyper-V may work well with Windows guests, but managing those, especially with multiple bare metal nodes, may be unintuitive to say the least.
  • Use Windows as a VM to run a Windows application
  • Use Linux as a VM with Docker to run multiple Linux applications

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.

[–] AlarmDozer@alien.top 1 points 2 years ago

Because it’s a waste of a perfectly good gaming PC.

Plus, you’d have to reboot every 3 days for updates.

[–] BigYoSpeck@alien.top 1 points 2 years ago

If you just want to share some folders on an existing Windows computer with the network without having an entire other system running then fair enough. But you've got the additional load that pieces on it while you're using it for other purposes

If it's a dedicated computer then Windows and in fact any operating system with a full GUI is overkill

Setting up a dedicated server can require a little extra effort initially, but once it's up and running you can almost forget about it, it's worth the effort for a less resource hungry and more stable system

[–] justpassingby_thanks@alien.top 1 points 2 years ago

I have had two Synology boxes and they were my first foray into servers and backup at home. I'm an amateur, or was, and always will be as far as enterprise things. My recent synology 1019+ acts as an awesome plex server using docker only because it still has intel graphics transcoding. Most recent Synology boxes have moved to AMD or intels that don't have intel graphics. For that reason and that reason alone, I'd get a small box, my preference is linux, but a small box with igpu. That means you'd still need a proper nas for media. Maybe just slowly update the disks in your old synology, or do a DIY, or learn something. But honestly for my nas purposes, I just trust synology, and I have learned all sorts of other options along the way.

[–] MairusuPawa@alien.top 1 points 2 years ago

tldr: the OS is shit, it's super expensive, keeping it actually secure is hell, it's nowhere near as good as ZFS-based solutions

[–] Perfect_Sir4820@alien.top 1 points 2 years ago

I migrated my server (mainly Plex but lots of other stuff too) from windows bare metal to windows docker to Linux docker. The main reason was to avoid docker running in a VM with the overhead and networking issues that a native Linux install avoids. In the end I'm very glad I did. Docker just makes everything so easy to setup, manage, backup and migrate if needed. My server is very stable and almost never needs to be fiddled with or restarted. Also I learned a ton which then springboarded into other homelab stuff like running a proxmox server, opnsense firewall, remote gaming server, etc.

[–] IBreedBagels@alien.top 1 points 2 years ago

It depends on who you're talking to.. Windows can work perfectly fine..

The more "techy" the environment you're talking in, the more in depth answers you'll get. But in general:

- It's bulky, there's a ton of overhead that simply isn't needed. Lots of bloatware, different systems running in the background that are basically mandatory that don't exist on other systems.

- Security concerns... Nobody trusts Microsoft, and there's too much user security involved even if you've purchased and own the freaking thing. Sometimes you have to jump through multiple hoops to accomplish some basic task because of some "permissions" bs

- Lack of customizability.. There's not a ton you can do as far as customization besides writing your own programs / scripts. Any third party route you might take will just add more un-necessary bloat

- As far as the actual work being done, the "NAS" portion, the management is horrendous natively. It just feels clunky and un-reliable (I've ran many windows NAS environments). It can run just fine, it just doesn't give you that warm "this is gonna work" feeling...

- I think one of the BIGGEST issues here, is price... Windows isn't free. At least, if you're a law abiding citizen lol.

[–] Professional-Bug2305@alien.top 1 points 2 years ago

Nas software is more friendly and just works. Windows doesn't have a great raid option, but nas do. Windows desktop also has alot of artificial limits and is less stable and will reboot for patches at inconvenient times.

I simplest terms, it's like use a flat screw driver on a Philips head. It'll technically work, but there are just plain better options that will work better and easier.

[–] winston198451@alien.top 1 points 2 years ago

When you come from the Windows desktop world, it makes sense to use Windows for a home server because it is what you know. In fact that is how I started out, then I moved to Windows server OSes. Eventually, I landed in the Linux space for both desktop and server.

Microsoft has a philosophy and way of doing everything, but it is their way. When we're talking about homelabs, we are talking about becoming admins of our own machines. Microsoft does not provide the level of flexibility that Linux does. For me the advantages of Linux over Windows are as follows:

  • Cost: Microsoft licensing vs. free Linux licensing.
  • Features: Linux has way more customizability than Windows ever has. Not to say that you cannot customize Windows, but it is clunky and will not be as granular as Linux. Native SSH allows me to connect to any of my machines and do things remotely from the command line. I spend so much more time in the command line now that I know how to use it. The GUI is often a crutch that has its place but still cannot hold a candle to the terminal.
  • Old Hardware: I can run Linux on old hardware that Windows will choke on. This means I can use that old machine my neighbor is throwing out because it is so slow, to run my next project. My desktop is an HP 6300 (circa 2012) running Linux Mint with 14GB of RAM. For my day-to-day activities, this machine is awesome. I could never run Windows 10 or 11 on this box with the same ease of use. When this dies, I'll upgrade to another old machine. Maybe a 2019 version by then.
  • System Resources: Linux needs little to run. Raspberry Pis run Linux like a champ and can pump out some serious services that would take Windows at least 3-4x as much to run just because of the OS alone.

All my machines in my family home are Linux-based at this point. So much can be scripted and controlled remotely from the terminal. Management is easier IMO. Cronjobs and aliases are a magical joy.

[–] briancmoses@alien.top 1 points 2 years ago

Two reasons; gatekeeping and/or tribalism.

[–] nzulu9er@alien.top 1 points 2 years ago

Windows is feature rich and is stable , secure, and just works. Storage Spaces with ReFS, controlled folder access as a short list of valuable features to any Storage solution.

[–] SilentDecode@alien.top 1 points 2 years ago
  1. It isn't meant for 24/7 usage and it also doesn't have the nice features other options do have (including Windows Server)
  2. Windows Updates is just annoying
  3. Why would you if there are plenty better tools for a specific job
  4. Just because you know it, shouldn't mean you will use it for that. Because maybe it's time you learn a new trick, such as Linux based stuff
  5. Extremely heavy for simple tasks
  6. License costs

And to answer your own points you made:

  1. Windows is always busy with something, so yeah, at default you have a higher usage.
  2. Valid point
  3. Simple needs require simple tools. So this is a perfect opportunity for TrueNAS.

I have nothing against Windows, so don't get me wrong. But there are so many better ways to do stuff, also where you don't have to pay for licensing.

[–] Limeasaurus@alien.top 1 points 2 years ago

I've run a NAS from Windows Pro (and still do, unfortunately). I also have a server running TrueNAS scale and another running Linux Mint for NAS. My TrueNAS and Linux Mint servers are much better at reliability and uptime. The Windows server has reboots often and sometimes services don't seem to launch before login. This could be due to configuration issues but it's harder to find resources since very few people use it like this. I only have it for backing up family photos to Backblaze for $7 unlimited plan. If Backblaze offered this on Linux I'd leave in an instant. Also, ZFS is a lot better than storage spaces.

[–] throwdroptwo@alien.top 1 points 2 years ago

because microsoft can decide to push a windows update out of nowhere that will whole your whole server hostage while it completes.

[–] officiallyStephen@alien.top 1 points 2 years ago

I have found that running windows without reboots leads to a lot more issues than Ubuntu (or ideally Ubuntu server). I don’t know if the OS just has memory leaks or what but continuous runtime is just not that great on Windows Desktop

[–] jimmyeao@alien.top 1 points 2 years ago

The answer is truenas.

[–] Healthy-Anteater2203@alien.top 1 points 2 years ago

If you can get away with running hyper-v for your other needs/oses why not?

Do you mean windows server or windows 11 acting as a server.

If you already paid for it sure. But if you're thinking of getting windows server standard then that'll cost you vs a free nix based OS.

[–] ReneGaden334@alien.top 1 points 2 years ago

Client and server Windows are very similar since Server 2008. A client Windows has many limitations which are mostly non issues for home use.

The biggest annoyance for me is the update mechanism and how they tried to enforce it more on newer versions and even started crippling the Professional version in many ways. For some time I even felt the need to have a WSUS setup at home.

Many might also be tempted to run their Windows as kind of mainframe, like a jack of all trades. Virtualization, even in pure Windows environments, opens a lot of possibilities. If something sounds complicated in Windows, just setup a specialized VM to do it. Not that Windows can’t do something, but other tools might be more suitable for people that don’t work with Windows Server day to day. Like, I would never build a firewall with Windows, even though it is possible.

[–] chandleya@alien.top 1 points 2 years ago

It’s also artificially restricted as an SMB server. Has been since XP SP2.

[–] AmSoDoneWithThisShit@alien.top 1 points 2 years ago

Reboots every tuesday night because microsoft cant make a patch that doesnt require a reboot?

[–] CeeMX@alien.top 1 points 2 years ago

Windows Desktop OS has the huge downside of forced updates these days. And they will just reboot, no matter if you want or not.

Server version is fine, you often even get it for free when you are a student for lab purposes, but it has way more overhead than Linux. 8GB is bare minimum for a Windows server, probably even more these days. If you run some services or even exchange / sql server, you need way more. A minimal Ubuntu runs fine on 512MB and Ubuntu is already quite high in memory usage compared to others. You can get away with even less of a footprint.

[–] DirectReflection3106@alien.top 1 points 2 years ago

Most of popular apps are cross platform and at least have windows variants or at least have some great replacements, so it's hard to miss something (with few exceptions). Of course licensing violation it the thingg... but using server without gui can save a lot of resources and give a great experience of learning powershell (and how bad regular command like life in windows is...)

[–] __SpeedRacer__@alien.top 1 points 2 years ago

Are you going to use hardware RAID or do you have some specific software RAID server in mind (like unRAID)?

What got me interested in home-labbing was to be able to play with software RAID with a bunch of disks, NAS for home use and backing up, and some media serving.

In the end, what scratched my itch was the robustness of TrueNAS Scale (and ZFS itself) and it's user interface. I just love it.

But it does take some tinkering (and learning Linux) to get it working. But I wanted to remember some Linux and now it runs by itself.

[–] dpunk3@alien.top 1 points 2 years ago

The only real issue is reliability. Server versions are made to maintain as much uptime as possible, Windows Server updates don’t always require a restart (except Patch Tuesdays), whereas the desktop version almost always does and will do so without any warning. If you’re using it for home use, does that matter? Probably less so, considering downtime doesn’t cost you money it saves it if anything. Plenty of mom and pop offices use off the shelf desktop PCs as “servers” cause it’s more cost efficient.

[–] sjveivdn@alien.top 1 points 2 years ago

Use windows along side a linux distro. Then slowly learn to do some small things on linux. After a while you will get used to it. After some months you will wonder why you even used windows. I dont think I have to bring anymore arguments because the comment section did a good job why it’s better to ditch windows.

[–] Vilmalith@alien.top 1 points 2 years ago

My typical post to these questions is that I run the following without issue:

Windows 11 Pro for Workstations

Drivepool + Scanner + Snapraid is what controls my storage, which is currently something like 26x 20tb drives.

[–] 1leggeddog@alien.top 1 points 2 years ago

It's actually fine.

Just make sure you enable and disable the right services on it and enjoy

[–] Luci_Noir@alien.top 1 points 2 years ago

Because of gatekeeping and snobbery.

[–] daxxo@alien.top 1 points 2 years ago

As most people said, I would go for something like TrueNAS, Proxmox or the best - Unraid that do cost a bit but will not break the bank - https://unraid.net/pricing

[–] HITACHIMAGICWANDS@alien.top 1 points 2 years ago

Windows will use more resources idling than anything Linux, or purpose built will. You can do anything with windows as it turns out. After reading in r/homelab you might think, wow, no one runs a server on windows, which couldn’t be farther from the truth. TONS of enterprise runs on windows, and almost ALL small businesses runs on windows. It’s easy, simple, and there’s a cost for that. Windows Server is a purpose built windows version for being a server, there’s some more management built in, but really, at it’s core, windows 10/11 pro will do just fine for home use.

[–] jerkmin@alien.top 1 points 2 years ago

windows is a trash server os for use by people who should know better. pick a flavor of linux, or Open/Net/FreeBSD it’ll do a better job of serving your data.

ok ok, that was a little harsh, some of them do know and choose to take the wrong path.

[–] justwantv@alien.top 1 points 2 years ago

I love it when Linux dudes say “Linus uses less resources than windows” but have some dual cpu monster space heater server from 10 years ago that sounds like a vacuum cleaner. Your consuming NATRUAL resources bro lol. That said I totally use Linux visualized and on a few Pi’s But windows will always be my go to. Not because it’s better. It’s what I know waaaaaay n anything else.

Run what you know best in your crucial machines. Play around sand boxed area on non crucial hardware.

[–] Petersurda@alien.top 1 points 2 years ago

These are my personal reasons. I stress personal because everyone is different.

  • it doesn't do what I tell it to do, but what Microsoft thinks I should want
  • difficult to automate (I've been told this has been getting better, but I'm still not convinced)
  • if things don't work as I expect, I can't look at the source code

In most cases I'm much less frustrated by using non-Windows alternatives in infrastructure. For example when I build Windows binaries, I use wine on linux.

[–] Y0tsuya@alien.top 1 points 2 years ago

If you really have to I suppose Windows client versions will work as for servers. But Windows server version is much nicer to use.

[–] RealTicket1730@alien.top 1 points 2 years ago (1 children)

Windows uses the NTFS File system and TrueNAS uses the OpenZFS file system which is superior to NTFS for storing your data. I'd do some reading on the OpenZFS file system to check out the benefits over NTFS. Running TrueNAS is really easy, you can check it out on Youtube, (installation and configuration videos). The book FreeBSD Mastery:ZFS (Michael W Lucas, Allan Jude) is also a good read on everything ZFS.

[–] ozaz1@alien.top 1 points 2 years ago (1 children)

Thanks. A few others have mentioned file system benefits of going non-Windows, although I'm not exactly clear what they are and some people mentioned something other than zfs (will need to re-read the replies to remember what). Will look into it though.

[–] RealTicket1730@alien.top 1 points 2 years ago

Copy on Write or COW comes to mind right away.

The COW mode of operation brings some significant advantages. Since old data is not overwritten, recovery from crashes and power failures should be more straightforward; if a transaction has not completed, the previous state of the data (and metadata) will be where it always was. So, among other things, a COW filesystem does not need to implement a separate journal to provide crash resistance.

Just found this, looks like some good info...https://arstechnica.com/information-technology/2020/05/zfs-101-understanding-zfs-storage-and-performance/3/

[–] jampola@alien.top 1 points 2 years ago

You do you. If you don’t have the nous to manage a *nix based OS, go ahead and run Windows. We do this stuff for fun mate. As I’ve gotten older, I’m realising that I may as well leverage what I know to get there.

[–] HlCKELPICKLE@alien.top 1 points 2 years ago

I've been using linux as a daily driver now for over a year, due to qualms with the direction microsoft has taken, but thats beside the point really.

Yeah there is some stuff you need to learn if you wish to manually manage a linux install. But when it comes to something like truenas, and I assume unraid as well, for a simple use case you will never need to touch the internals. I run truenas, opnsense (bsd)m plex and proxmox. Those use either linux or bsd, and they are set up so I never need to even touch the internals (well proxmox I do some but thats from dealing with gpu pass through. Same with plex, the only thing I ever had to touch with plex was an fstab edit to mount my network drives which is a few lines of text in a file and you can find what to type online.

But say you use truenas, all you have to do is run the installer and you are ready to go with a stable system, the rest is managed through the gui. The only time I ever touched anything relating to the command line was to do a burn-in on my disks, and that's optional. If you do choose to run windows you will have to do more configuration, deal with more unwarranted issues from it being a desktop os, and in the end spend more time messing with it.

Homelab software has gotten to the point that 95% of what you would need to do involving the underlying system is abstracted away in a GUI.

[–] RagnarLunchbox@alien.top 1 points 2 years ago

Datacentre + 25 years of Linux expertise here:

Design the system around how you use your data, how important your data is, and where you want to back it up etc. Forget about chossing te platfor first..but..

Open source gives you WAY more options, Windows will just share files.

Eg Open souce NAS will ley you sync and aggregate all your cloud storage and backup apps as one single virtual cached storage directory all avaiable in your file explorer. No stupid clients and bloat. Open source will give you snapshots too. All sync happen in the backgroud with real intergrity checking. (For example, look at RCLONE as a wonderful onedrive client replacement for a virtual cloud filesystem, just run this on your NAS. )

Open source also lets you add unlimited Backblaze backup to you NAS without the business subscription (if you've got a few basic Linux skills.)

Open source also allows a wide array of virutual machines or containers for other handy home network utilities (think always-on pi hole, DNS add blockers etc)

[–] gagagagaNope@alien.top 1 points 2 years ago

Funnily enough, I made some measurements too on Windows power use. On an old Mac mini, it used less running native Windows than MacOS (less than 2w vs 3.5w).

I've 16GB / i7 Kaby Lake era laptops that will run Windows 10/11 powered up with an active (native) Intel LAN connected at 0.9w idle with services like MySQL installed and running. (0.9w with a USB meter, 1.2w at the wall). Windows is light now, people are still talking like we're in the Win95/XP days.

For those not familiar with the multitude of Linux services and config with simple needs, Windows is great.

Bad stuff: cost (thought there's legalish ways around that), it will reboot for updates if you're not on a server version (though click the delay and manually update once a month to avoid that), MS installing new stuff with those updates, the time it takes to strip out the baseline install stuff (some of the apps like Facebook, maps etc madly installed even on 11 pro).

I had my main server running OMV. I switched it to Win 11 Pro for ease of implementing WoL for powersaving. I use single plain disks and use snapraid for parity/redundancy (it's media updated maybe two or three times a months so snapshot then). That can do drive pooling too. LightsOut takes care of keeping the server on during media streaming.

[–] boanerges57@alien.top 1 points 2 years ago

Because it is poop

load more comments
view more: ‹ prev next ›