OS for HomeServer - NAS

Nixel

Commendable
Oct 27, 2016
20
0
1,520
Hello!

I'm not sure if this is the right place to ask this, but from all the other categories this seemed like most fitting.

I'm building a home-server \ NAS out of my old PC. And right now I'm deciding which OS to use.

First, what I want to use it for:

  • File sharing. I want to be able to access shared drives on this machine, to access various data, including media and maybe work files (3D CG and video stuff). Right now I'm using an HDD attached to my router, and it's more or less enough for sharing, I just want a bit faster machine with more storage space for it.

    Music\Media streaming. Ampache, PLEX or Subsonic server. Also I have plans on integrating music playback in my home with my own Python\Flask-based voice assistant server, so it would be nice to have the ability to control it with Python. I saw some python api bindings for plex...

    SVN\Perforce repository for an indie gamedev project.

    System backups. Preferably automatic, but it's ok if Ill have to manually run Windows 10's full disk backup thingy.

    File Cloud. I know about ownCloud for linux, but did not yet find a free or cheap alternative for Windows.

    Running my own Python\Flask based servers, voice assisstnat for example.

    Optionally running a local DNS server, to have nice local domains for plex and other web-apps running on the server, instead of ip+port.

    Maybe occasionally running some game servers, for testing purposes or for fun

    Remote torrent client

    ■ Having a web-interface for most NAS-y tasks would be nice, like file managing, torrents and stuff. But there is always TeamViewer.


Current hardware:
i7 2600k, 8gigs ram, geforce gtx580 (which I only need to connect a monitor at first, maybe will replace with something less hot), a bunch of different hard drives.

All PCs and tablets in my home are Windows based. Phones are Android\Windows 10 Mobile. Some android tablets too.

My desired HDD setup:
1x 120gb system SSD\HDD for fast recovery\reinstallation in case of failure
1x 1TB HDD for stuff like music
2x 4TB HDD RAID 1 for important files and other media library.
Later maybe expand it with more, I think there are 8 SATA slots in the motherboard.

Backgrond:
I am an experienced windows user. Not sure what the word 'power user' means exactly, english is not my native language, but it sound nice too :D

I have experience with Python and Flask and JS, so I can write some simple alternatives for some servers, though of course I'm lazy.

What I've tried:
I tried running Fedora 23 + Amahi for a few days now. It already has file sharing working, DNS server and ampache (though I'd like to switch it to something better like plex or subsonic)

Pros:
+ Relatively easy to setup
+ Simple to setup a home server, file sharing, local DNS names (unless you want to tweak them)
+ web-apps are easy to install through web-interface
+ Has ownCloud and generally speaking more server-oriented stuff
+ dnf install <name> is quite an easy way to install multiple programs and services

Cons:
- Not very easy to connect to specific apps\servers from outside local network. The setup is quirky and is harder than just forwarding a port. And I need my svn.
- Linux environment is not very familiar to me, though I do have a Raspberry Pi with debian. I like it more than Fedora :D
- web-apps most of them are outdated. Ampache version 3.5.x when there is already a reborn 3.8.x as example
- Frustrating Linux thing about disk mounting. If you remove a mounted disk from your system, you can't boot into Linux, until you fix a config txt file (fstub) in it. It's really frustrating
- I'm not afraid of console\terminal, but the amount of stuff you have to do with console is just ridiculous in Fedora
- No mp3 and other codecs out of the box, installing them is possible but through unofficial repo... o_O

So, which OS should I stick with, keeping in mind my requirements and desires? I don't care about price difference between windows and linux, only about functionality. I can keep struggling with Fedora + Amahi, or switch to Ubuntu or just use the Windows I know for a long time.

Options:
Windows 10 Home or Pro
Fedora 23 Desktop + Amahi
Ubunty Desktop

FreeNAS and other alternatives are not interesting much to me, because I don't want out-of-the-box solution like those, because I need to run additional servers, including my own Python servers from it.


Thank you very much for you time! And sorry for a wall of text.
 
HONESTLY... Your best bet is probably Windows. There are just so many things that are easier to do considering most of your clients are going to be windows based.

Even just doing something simple like remoting in is a pain compared to RDP. Windows really won't hold you back at all, but other OS's make simple tasks much more involved than they need to be for a simple home server.

I have WHS 2011 which is just a terrible version of windows 7, do not get that.
I vote windows all the way, just not WHS 2011... not sure if you can even buy it anymore anyway.
 

Autocrat

Respectable
Sep 19, 2016
505
0
2,360
I'd vote for Ubuntu, there is a reason it is the most used distro for servers. You can also check out some of its flavours that maybe suit your needs for example, Ubuntu Mate is a great environment and runs really light.
 

Nixel

Commendable
Oct 27, 2016
20
0
1,520


Hm, so unRAID is like an OS where you can run other OSes within it? Like virtual machines or what?
In my experience virtual machines were rather slow and not very comfortable to work with.

I'm a bit tired now, but I think ill look into it later.



Thanks. Well, so far I lean towards Windows too,because I know it, but it has it's own cons.

pros:
- I know it allright.

cons:
- no ownCloud alternative so far
- I always stumble upon server related tools and software that only run on linux
- no amahi alternative (did not find so far, it's like a plugin for fedora, basically a server turning it into nas with web ui)
- stability issues... not sure if it can run 24\7 without overheating the server too much for example
- updates! windows 10 updates! I'm watching a movie, and it decides it wants to update. Since it's a remote machine I won't even be able to know that it is about to update and restart... sometimes it takes a long time. With my Surface it always happens when i'm falling into bed and just wanna watch 10 minutes of a movie and go to sleep. Instead I spend 10 minutes watching a circle and Updating...

So far there are 3 votes, one of which is a new suggestion.
Thanks, I'll wait for more opinions on the matter, in the meantime I'll keep toying with Amahi.

In addition to what I said already, I want to +1 to the safety of the storage.
I plan to store really sensitive for me and my family data there. It's ok if I lose my huge collection of music or movies, it's bad but not as bad as losing family photo\video archive, sources of my work (terrabytes), and... well, current project files I still keep on my main pc in raid1...

So it is also very important for me for the data storage and tools and partitioning tools to be as noob-friendly as possible. In windows I can go with less-nooby stuff, in Linux, well, so far I feel myself a monkey with a grenade. I already know that pulling the pin is a bad idea, but... hm, what if I use it to crack open coconuts?
 
Your system is perfectly suited for unraid and the performance difference would be negligeable at best. People are knows to run unraid on thei r gaming rigs to have a nas and a perfectly capable gaming machine on the same system. You woudl not be able to do that, as your CPU does not support VT-d, but for all other purposes..
As an added bonus, you get to play with whatever system you feel like wihtout compromising the NAS functionality.
Do look into it :)
 

Nixel

Commendable
Oct 27, 2016
20
0
1,520
In the meantime, some more information for anyone else with same questions.

About Amahi.
At first it seems great, and it is, if you're looking for simple way to set up a nas, and if you're happy with what it offers you out of the box. Or if you're an experienced Linux user and have to do and upgrade and, lets just say - contribute to the open source Amahi community.

For example, the biggest downside of it so far for me is that most web-apps are outdated. For example Ampache was using version 3.5.x when there is 3.8.x as I said before, but now I also see that Plex was updated 26 days ago and still not using the latestversion. And if you look at Amahi store, most apps were updated months ago and never touched since. They work, but they're old...

I like to stay on top of this thing, using newer versions as much as possible. At least at the moment of setting the server up. So for me it's a huge down side of Amahi, and I will probably not use it after all. A shame.

Updating a software yourself... It took me about 20 minutes to update Ampache myself. Experienced user can probably do it in 5-10 minutes. And updating Ampache was really simple, it is used almost as is in Amahi.

But it would be eaiser to run a server yourself on some port, and set ip-domain relation in local DNS server yourself and port-forward it and just use some ownder domain's subdomain with simple redirection on this ip. All this can be done in less than 5 minutes in Windows or just linux without amahi...

It was an update of my progress and thoughts on this matter, now back to our sheep...