I would like to start and create my first file server at home. I’ve never done this before and I’m a beginner. I would like to know how to create one, how to maintain it for years to come, and what costs are entailed with a direct or indirect costs. Thanks everyone.
There are a ton of options, depending on what you have. In essence, a file server is really simple, you just need a computer with network access with sufficient storage. Here are options, from simplest to fanciest:
- drive plugged into your router - simplest and most ghetto
- drive that supports network access - slightly less ghetto
- buy a NAS - more money and less freedom, but much simpler than DIY
- old computer (laptop, Raspberry Pi, etc) that you have laying around with something like TrueNAS, NAS4Free or OpenMediaVault running on it
- 4, but with a general purpose OS on it (Debian, Fedora, etc) running some kind of file hosting software (samba, Nextcloud, Seafile, OpenCloud, etc)
- 4 or 5, but with new hardware
The costs can vary from free to thousands of dollars, depending on storage and compute needs and how far down the fancy scale you go (note: 3 is more expensive than 4, and comparable to 5).
The question is how motivated are you to learn what you need to manage a device?
If you want to dive in and get your hands dirty then I’d recommend a little mini PC off Amazon and Fedora Server which comes out of the box with Cockpit which will help you administer your server. If it’s something you’re not that into and just need storage for your stuff, I’d say pick up a NAS from someone like Synology or Ugreen. They’ll generally take care of themselves.
First you need to specify a bit more on what you mean by file server. Are you looking for a network attached storage for home use, or remote use as well? Or are you talking something like a seed box for torrenting Etc. What general software environment will you be working with and what others are you comfortable with.
Thanks for replying.
What I am looking for is a way to storing my personal files at home. I am not looking for internet connected device that I can access remotely.
It will be mainly used to store my personal photos and videos, and not used to stream movies to a device.
Should be accessible by devices such as android, windows, and iOS.
Hope this helps.
Then you’re going to be limited to SMB generally because of windows. If you didn’t need Windows NFS is always the superior choice. But only the pro version of Windows has any NFS support.
Just getting started pretty much any hardware will do. One of the best most accessible ways of doing it is something like a cheap Raspberry Pi computer even two gigabytes of memory is enough to get started. You won’t necessarily need the bigger ones. But generally more tends to be better. Combined with some of the more purpose built OS images for things like open media vault or own cloud. It’s a pretty easy and low bar for entry.
After that it really just depends on your interest, needs, and comfort levels. You could just as easily go into eBay and buy a used $100 E-Waste business Tower. It will give you a bit more swap ability and upgradability where you can add things like 2.5 or 10 gigabit networking if you absolutely need faster. A better method of organizing and mounting storage physically. And a few other amenities. As well as some more options software wise. But if you are really new to this. And you really want to do something a bit more DIY that you control as opposed to something like a Synology Nas. It’s hard to go wrong starting with something like a Raspberry Pi.
Just make sure to keep up on your three two one. Three different copies of your data, on two different types of media, with at least one of them stored off site.
What exactly are you trying to accomplish? What problem are you trying to solve? There are dozens of kinds of file server, but we can’t recommend one that’ll meet your needs without knowing them.
Added an edit to my post. Hope this helps.
I think that’s a great way to start. It is surprisingly easy to add remote access at a later date.
The dead simple way is to set up a shared folder with Syncthing, although you will end up with all of the files copied onto every device.
If you want the files to live on your home server to be accessed as needed, then you will want something like Nextcloud or OwnCloud. Personally I found ownCloud easier to set up, but it has far fewer features.
If the focus is on pictures and videos, then you should probably start with immich. It is very simple and incredibly powerful. You can more or less set it up once, and not think about it too much other than running an update from time to time. It supports multiple users, etc. Note that if you are adding photos from a Google Takeout, you will want to run a one time script to rescue the metadata (date, etc.)
Any of these are accessible on any device.