2
submitted 10 months ago by ozaz1@alien.top to c/homelab@selfhosted.forum

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.
top 50 comments
sorted by: hot top controversial new old
[-] Freonr2@alien.top 2 points 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.

[-] Skwide@alien.top 2 points 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.top 2 points 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?

[-] a60v@alien.top 1 points 10 months ago

SMB only (There is/was a way to make Windows do NFS, but it sucked.)

License cost. The desktop versions of windows (used to?) have a limit on concurrent SMB sessions in order to force users to buy the server version and pay for CALs. No idea how any of that works now.

NTFS is kind of a shitty filesystem.

Limited (native) backup options. No tape support, for example.

Management effectively requires GUI access.

No native way to mirror the OS drive in software. You need either a hardware RAID card (LSI, etc.) or that stupid Intel BIOS RAID thing.

These may or may not be issues for OP, but they are issues for many.

[-] Mint_Fury@alien.top 1 points 10 months ago

Lots of great responses here, I won't reiterate what everyone has already explained. The big benefits imo are redundancy using better file systems like ZFS (Truenas) or BTRFS (Synology, unraid), and in general better management of the drives, and data stored on them. These appliances support more robust raid configs as well, so you have a lot less risk losing data. The other big one is simplicity for what you need it to do. Creating an SMB share on a PC using windows isn't hard, but it's not nearly as simple as the 3 clicks it takes on the purpose built OS. These OSs also usually have built in solutions for hosting any other apps you may also want to play with. That's just my two cents.

load more comments (2 replies)
[-] Pericombobulator@alien.top 1 points 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

[-] Failboat88@alien.top 1 points 10 months ago

I always recommend windows to people who want a home server that's easy to maintain. Homelabbing is more about learning and trying new things out.

A nuc with a nice size external can do a lot and they come with windows not to mention it can run fine free. A lot of the services people run are all using mono to run the windows app. Anyone who has used Windows can install an exe but not anyone is willing to use command line in Linux.

Home server and self hosted are more focused on what you're looking for.

[-] CryptographerOdd6143@alien.top 1 points 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.

[-] JoeB-@alien.top 1 points 10 months ago

There are a lot of good responses here that I won’t reiterate. I will say that, in my own personal and professional experience, Linux simply is a far better server OS than any Windows OS.

That said, use what works for you. If you are experienced and comfortable with Windows, and aren’t too keen on climbing the Linux learning curve, then by all means use Windows.

My only suggestion would be to use Windows Pro (for RDP), or find a Server Standard license for sale at less than retail.

[-] ReneGaden334@alien.top 1 points 10 months 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.

[-] schokelafreisser@alien.top 1 points 10 months ago

If you want, you could try Openmediavault. It is a very simple and clean os for Nas functionality, based on debian. It has simple plugins to use the basic functions, but you can install anything on it in docker. There are great tutorials online.

[-] HolidayPsycho@alien.top 1 points 10 months ago

The cost of Windows Server is basically zero with https://github.com/massgravel/Microsoft-Activation-Scripts . Yes. It can be used to activate Windows Server 2022.

Windows Server 2022 is basically another full desktop. There is no comparison to RDP in the Linux world.

The thing missing is Synology's SHR raid. But you can use DrivePool I guess.

All those concerns over resource overhead are useless, unless you want to use a very weak computer. Windows Server is extremely fast with modern day computer.

[-] InfaSyn@alien.top 1 points 10 months ago

Too bloated, too unstable, too insecure.

Will just reboot all the time and whore memory. Way more susceptible to malware.

[-] TrudeauAnallyRapedMe@alien.top 1 points 10 months ago

Windows reboots randomly and updates whenever it wants. More prone to viruses or other windows issues

[-] __ToneBone__@alien.top 1 points 10 months ago

Windows has a lot of overhead. It also doesn't have the capability to run common NAS filesystems like ZFS (to my knowledge) which adds good redundancy and performance increases. If you really wanted to run a Windows file server, you could look at Windows server as it's built more for the task but you'd run the risk of running an unlicensed Windows Server product which Microsoft doesn't like.

My advice would be to keep what you have currently and build something, probably virtually, that runs on a common Linux NAS OS like TrueNAS and see how you like it. Once you install TrueNAS, you don't have to manage it from a shell if you don't want to. It has a very nice web GUI.

[-] ChRoNo162@alien.top 1 points 10 months ago

I’ve used windows 10 for servers, was fine honestly

[-] Mango-Fuel@alien.top 1 points 10 months ago

Windows non-Server editions have a limited number of connections and after reaching that limit will start refusing connections. I know it's very easy to hit the limit when hosting a webpage, though I think I've never hit a limit when accessing file shares.

Windows home editions have (in the past had) limited file sharing and security options. This has been a large frustration of using those versions for me. Not sure if it's still like that with Windows 10/11. But you can just get Windows Pro anyway, it's not a limitation of non-server.

the connection limit is the big one, which is baked into windows specifically to prevent it from being used as a server. because $.

[-] -Alevan-@alien.top 1 points 10 months ago

Anybody can say anything, limux is still a CLI first os. And the CLI is easier for those coming from windows, than powershell. Thus, most of us run cli based server distros, where resources that would be used by a GUI are spared.

Also, most of the docker containers I run are Linux only. So I would have to use WSL1 if on a Windows Server or WSL2 on a W10/11. This means virtualisation, which costs resources.

At least, from my perspective its all about resource utilisation. (Also, I work with Windows PCs and Servers in my day job, for me its a relief ehen I can work with other systems).

[-] jamhob@alien.top 1 points 10 months ago

I think a really major advantage to using Linux/BSD is that they are open and simple. Over time you gain an understanding and intuition about those systems that you are just not allowed to have with windows. You can recover from so many situations because you understand the problem and can come up with a solution. On windows you often would just have to cry and re-install… overwriting your data.

[-] peterswo@alien.top 1 points 10 months ago

I switches my homelab server runni g fileshares, vms, etc from windows 2016 to proxmox wirh truenas fpr shares as an vm. Now my truenas is able to backup into the cloud, i am far more flexible from where i control stuff(rdp vs browser based) and i feel less locked in, into windows.

[-] tokkyuuressha@alien.top 1 points 10 months ago

Windows update ia an absolute bitch unless you break it in registry. But then you don't get updates at all and have to fix it, update and break again. Rather unwieldy.

Also overall a lot of bulk. Perhaps if you run one of the light versions or heavily decrapified it...

[-] VirtualTools_@alien.top 1 points 10 months ago

For me windows constantly has inexplicable bugs and randomly corrupts itself wheras *nix and *BSD distros 'just work'. Plus no zfs on windows last time I checked

[-] jimmyeao@alien.top 1 points 10 months ago

The answer is truenas.

[-] jayaram13@alien.top 1 points 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.top 1 points 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

[-] SilentDecode@alien.top 1 points 10 months 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.

[-] FritzGman@alien.top 1 points 10 months ago

If you want to get the same resiliency as a NAS, you need to have multiple hard drives so a mini PC won't cut it. Single drive redundancy is an oxymoron because once the disk goes, so does your redundancy. That said, if you are OK with single disk because of cloud backups, no issue. I would consider how long it would take me to restore it all should the disk go. Its not as fast as you think. Especially when you get into the terabytes conversation.

If you want to run Plex for media streaming, you'll find the resource consumption of windows just for existing plus all the other things running may impact your quality of digital life should more than one person stream something at the same time. Just check the number of "Service Host:" processes running on your windows machine. All the windows specific ones add up after a while.

Windows updates not only patch security flaws but also introduce new features or remove old ones. This can sometimes impact what you are doing with it because they try to steer you to their ecosystem of products with the changes they introduce. It can also break something that works because it isn't a dedicated appliance meant to service that one function.

Multiple NICs. I think there might be mini PCs that come with that nowadays and PCs in general can run multiple NICs. However, Windows networking used to be notoriously bad at managing multiple network card connectivity. Not sure if that is still true as I don't work with Windows too much anymore but if it is and that was in your plans, might want to make sure it can do what you think it can do with the version of windows you get. They still have Windows Pro vs Windows Home right?

Those are some of things I would consider. In any case, your post sounds like your mind is already made up. In the end, you will have to live with it so what you think is really what matters.

[-] killermouse0@alien.top 1 points 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?

[-] erikpt@alien.top 1 points 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.

[-] briancmoses@alien.top 1 points 10 months ago

Two reasons; gatekeeping and/or tribalism.

[-] nzulu9er@alien.top 1 points 10 months 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.

[-] cerberus_1@alien.top 1 points 10 months 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.

[-] fresh-dork@alien.top 1 points 10 months 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

[-] morningreis@alien.top 1 points 10 months ago

Because when you start trying to run actual services, the home-user side of it is going to kick in and make is unreasonably difficult to do simple things such as creating a fileshare, managing permissions, getting your services to work through a firewall, etc. All things which are typically just simple text file configs in Linux, or just a few simple commands.

However if you do persevere and get everything working, it's not going to last. Windows is going to decide what's best for you and you will be left trying to figure out what settings were wiped or reverted to default when Windows updated itself without asking.

And then if youre running a server where you want performance, stability, and security, you don't want extra crap running because all those other services that you absolutely don't need will start interfering with the services that you do need. Linux VMs or containers on a hypervisor are very popular because you can spin up multiple lightweight instances of the OS to perform a single or limited set of functions. So if something breaks, that breakage doesn't spill over to the other instances. With Windows, you'd have to spin up a 10GB+ instance each time for this approach because you'd have so much extra stuff you do not need.

[-] cmmmota@alien.top 1 points 10 months ago

Sever oriented Linux distros are designed with server workflows and high availability in mind. Desktop Windows isn't. However, if you're not running mission critical services, who cares? Do whatever is the most practical to you.

[-] eagle6705@alien.top 1 points 10 months 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.

[-] Perfect_Sir4820@alien.top 1 points 10 months 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.

[-] SimonKepp@alien.top 1 points 10 months ago

Desktop editions of Windows can be used for a simple home NAS. However, it doesn't have a lot of advanced features supporting that use-case. Once you have a NAS, all of your digital data tends to end on it, which makes it a very critical system. Desktop Windows has one significant advantage, that you can run Backblaze personal computer unlimited backup on it to secure a backup of your critical and non-critical data in case of a disaster. On the down-side, there are no good RAID-features available for desktop Windows, making your data very vulnerable to drive failures, which are quite common. I personally prefer to run a homeNAS on something supporting the ZFS file system, such as Linux with OpenZFS or TrueNAS,but it is very important to choose a system based on your own skills, so you are able to set it up and manage it safely.

[-] Holmlor@alien.top 1 points 10 months 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).

[-] murdaBot@alien.top 1 points 10 months ago

Because people get overly emotional about stupid things. Once you get a bit older and more mature, most people grow out of that. But for the ones who never do, they think their "way" is the "right way" and if you don't do it the "right way" ... "you're wrong."

At the end of the day, if what you're using meets your needs, then it's the right choice. Period. End of story.

[-] sexpusa@alien.top 1 points 10 months ago

I use windows, and its great.

[-] officiallyStephen@alien.top 1 points 10 months 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

[-] winston198451@alien.top 1 points 10 months 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.

[-] Limeasaurus@alien.top 1 points 10 months 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 10 months ago

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

[-] mrtramplefoot@alien.top 1 points 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.

load more comments (2 replies)
[-] IBreedBagels@alien.top 1 points 10 months 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.

[-] AdderallBuyersClub2@alien.top 1 points 10 months ago

Limited connections to smb to and from. License violation. Etc etc

load more comments
view more: next ›
this post was submitted on 16 Nov 2023
2 points (100.0% liked)

Homelab

371 readers
2 users here now

Rules

founded 11 months ago
MODERATORS