Share your knowledge at the LQ Wiki.
Go Back > Forums > Linux Forums > Linux - Newbie
User Name
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!


  Search this Thread
Old 01-01-2014, 01:13 PM   #1
LQ Newbie
Registered: Jan 2014
Posts: 1

Rep: Reputation: Disabled
Need help starting a file server for home use

Hello, first time in the forums.

I've recently taken it upon myself to make some use of an old computer I have picking up dust in my home. My father and I have decided that we would like to use it as a central file server that anyone in our home network can access. My questions start at:

what linux server distro should I be looking at?
what programs should I download so that the server can interact with windows and OS X clients?
any other programs that I should consider installing for security purposes?
Old 01-01-2014, 07:09 PM   #2
LQ Guru
Registered: Aug 2004
Location: Sydney
Distribution: Centos 6.9, Centos 7.3
Posts: 17,396

Rep: Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395Reputation: 2395
If purely for a server, I'd recommend Centos (free version of RHEL).
For filesharing to MS probably Samba; OS/X probably use NFS.
Both tools are pkg for Centos, so no problem there, although they can be a bit tricky if you're new to them.

(Definitely stick to using official pkgs for your system if at all possible; it'll save you a ton of grief)

Security is a big qn; that's why we have an entire forum just for that.
Usual basics apply; give everyone separate logins/passwds and ensure the security settings for the tools above are setup correctly if file permissions, ownerships etc.
See also firewall (aka iptables - built-in firewall).

You're going to be best off starting a new thread for each qn to keep things clear.

Useful link full of guides; see the Admin section in particular.
You'll need to be familiar with the cmd line -

Please post the HW specs of the machine, and a short list of the things you want to use it for.

Last edited by chrism01; 01-01-2014 at 07:10 PM.
1 members found this post helpful.
Old 01-01-2014, 09:22 PM   #3
LQ Guru
Registered: Jan 2006
Location: Virginia, USA
Distribution: Slackware, Debian, Mageia, and whatever VMs I happen to be playing with
Posts: 12,498
Blog Entries: 16

Rep: Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211Reputation: 3211
If there will be Windows clients, definitely Samba. This is the best Samba reference I've found.
Old 01-01-2014, 10:55 PM   #4
Senior Member
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian
Posts: 2,192

Rep: Reputation: 339Reputation: 339Reputation: 339Reputation: 339
Welcome to!

You didn't state your experience level with Linux, so I will assume since this is your first post on these forums that you are a newbie. And I will also assume that you are not comfortable with the Linux command line. If you are more experienced than I am assuing, tell everyone where you're at so you can get the most appropriate help.

(1) You don't need a "server" distro. You can do what you want with just about any distro. The so-called server distros are really nothing more than stripped down desktop distros, in a manner of speaking. If you are a newbie, you may need the hand-holding of a desktop distro. Staring at a black screen with a prompt that looks like "$ " or "# " can be quite daunting if you don't already have a good handle on Linux. If you are a newbie, I would recommend plain old desktop Ubuntu. It will be overkill for what you actually need, but it will hold your hand and there are five bazillion other folks out there who can step you through Ubuntu if you have questions or problems.

(2) Don't consider RAID. Typical home users really don't need it. RAID is NOT a backup solution. It is an uptime solution, and very few home situations need that.

(3) Determine what it is exactly that you want to do. Only share files? And what type of files - small user data files or a bunch of big movie files? Will you be wanting to do only simple file sharing, or do you want to stream video's from this box, set up a personal cloud server, a web server, etc.?

(4) If you are thinking "large amounts of data", e.g., a ton of movie files, you will need a lot of disk space and it will behoove you to learn "LVM" at some point, so you can just keep adding disks as you run out of space and treat the combination of them all as one big virtual disk. Since you stated you are re-purposing an old PC for this server, keep in mind expandability - you will need slots for all the disks, adequate cooling, adequate power supply, etc. But I'm getting ahead of things here.

(5) Linux is pretty secure by default, nothing like Windows. So you will not have to jump through hoops to make a secure system. The easiest way for someone to get into your Linux system is if you open up SSH to the world at large, allow password authentication, and choose weak passwords. So right from the get-go, pick good strong passwords for all the accounts on your server. None of this crap like a username of "jack" with a password of "jack123". If you allow SSH into your server, it is far better to disallow password authentication and instead require pubkeys. Again, I'm getting ahead of things here.

(6) You need to set up some kind of backups for your server. Now that you're putting all your eggs into one basket, you need to make sure that this new centralized basket is as bullet-proof as possible. Backups need to be made to a totally different disk, preferably residing on a totally different server, preferably at a totally different (off site) location. These backups should be automated. Manual backups often times fall by the wayside and are not done regularly enough.

(7) My personal preference for simple file servers (just running Samba and other basic stuff) is to run the OS totally from memory. It loads from disk to memory at boot and then runs totally from memory. So if you corrupt something, or you get hacked - just reboot and you're back up and running. Obviously you have to automate all your tasks so they run at startup - setting the root password, strting an SSH daemon, creating Samba config files, starting Samba, etc. It is a little harder to set up a system this way, because you have to create, test, and tweak startup scripts to get everything as you want it ... but the end result is nice for a stand-alone server that rarely has users on it. I may be getting ahead of things here again, for a newbie just getting a normally installed OS configured can be tough enough, without having to worry about scripting it all to run automatically at boot time.
Old 01-02-2014, 01:04 AM   #5
Registered: Jan 2006
Distribution: Slackware
Posts: 841

Rep: Reputation: 165Reputation: 165
Do you have any experience with Linux already? You didn't say. If you do, that's great, but if not, don't worry. You'll acquire it.

Most people here will not agree with my suggestion to someone who lacks Linux experience, but I suggest Slackware for your server system. The reason many people will not agree with me is because Slackware is not considered to be a beginner level distro. But people make it out to be more difficult to install and configure than it really is. The installation process isn't quite as wizard-like as some other distros, but it's simple and clean, and there is excellent documentation to guide you.

The reason I suggest Slackware is that it gives you both a very capable desktop system and a fairly complete server system all-in-one, practically ready to go after installation. It comes with nearly every server package you will likely want to use already installed for you, with only minimal additional configuration needed before you can fire them up.

Slackware has a great online user's guide that covers most everything you'll need to set up and use the system and to get your servers up and running. There are also plentiful examples of Slackware-specific server configurations available on the net. If you follow the guides, are willing to read a man page or two, and can edit a few text files, then Slackware is a great choice. Also, the official Slackware support forum is right here on LQ, so you can ask questions in the Slackware forum and there will be plenty of people ready to help you, so long as you show some initiative and are willing to learn.

Samba is the best option for file sharing with Windows clients. I don't have OS/x, but I've read that it also supports SMB since 10.7, so your OS/x clients should be able to access Samba shares too.

With Slackware, you won't need to download any additional software so that the server can interact with windows and OS/x clients. Just configure Samba on the server.

If your server is not exposed to the outside internet and everyone on your network is to be allowed access to the shared files, then there is probably little additional you need to do for security.

A few other services you might consider providing to your local network:

- Network Time Protocol, ntpd, so that all systems on your network can synchronize to a common time source.
- An Apache web server, httpd, for a local website or WebDAV, another way to share files.
- FTP, vsftpd, another way to share files.
- NFS, Network File System, another way to share files.
- Openssh for ssh and sftp access to the server.
- Openvpn for secure access to your network or to the internet from insecure locations when away from home.
- A caching DNS name server, bind or dnsmasq.
- a DHCP server, dhcpd.
Old 01-02-2014, 01:11 PM   #6
LQ Guru
Registered: May 2005
Location: boston, usa
Distribution: fc-15/ fc-20-live-usb/ aix
Posts: 5,144

Rep: Reputation: 886Reputation: 886Reputation: 886Reputation: 886Reputation: 886Reputation: 886Reputation: 886
for my xbmc machine i have an old netbook upstairs running fc-20. i use sshfs to mount the server drive but i dont think that will work with windows (samba ?)
Old 01-02-2014, 01:47 PM   #7
John VV
LQ Muse
Registered: Aug 2005
Location: A2 area Mi.
Posts: 17,169

Rep: Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493Reputation: 2493
As much as i like fedora
it is not a good choice for a file server
( unless you are rather experienced and CAN reinstall the os every 6 months -- skipping a version and reinstalling every 13 months is ASKING for problems)

for OLD hardware CentOS 6.5 will do JUST fine
( unless it is 12+ years old hardware - if so recycling it might be a good option )
But the older CentOS 5.10 still has about 3 years of support


install the current stable Debian


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Starting a home server DexterRSA Linux - Newbie 26 04-28-2013 01:40 AM
Home file server zebadee2010 Linux - Server 9 12-16-2011 05:51 AM
Building my first home server - atom based router/file server build need advice mothergoose729 Linux - Networking 5 03-23-2010 03:19 AM
home file server pyn Linux - Server 1 01-05-2010 11:41 PM
How might I Setup Home Web Server plus File Server plus Printer Sharing brindamo Linux - Server 3 01-14-2008 12:48 AM > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 12:08 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration