Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm very new to Unix, but after having become comfortable with bash over the past year and after having played with Ubuntu recently, I've decided to make my next computer run Ubuntu, and I think my wife is on board for her next computer as well.

Is it easy to set up a central family server so that each computer acts as a client for the information that is stored only in a single place? What are the options? Are there any online how-to documents for this?

share|improve this question
What are your requirements? do you need windows file sharing? do you want an http server? ftp? etc? – xenoterracide Aug 23 '10 at 3:13
when you say "the information that is stored only in a single place", are you thinking of home directories, or shared folders with pictures/video/documents/whatever, or ..? It's easy to set up a server to share files, but the tighter the integration between the server and your personal machines, the less useful your machines will be if the server is ever unavailable for some reason. – gbroiles Aug 23 '10 at 5:05
@xeno I don't know enough yet to know my requirements. I would definitely want each person to be able to reach the same file system via a GUI, windowed display. (Although it doesn't need to be MSWindows file sharing.) – John Berryman Aug 23 '10 at 10:28
@gbroiles That's a really good point. I guess when I take my computer to work and my files would no longer be available. That's bad. Would it be possible to mirror all files on all computers rather than having a server? – John Berryman Aug 23 '10 at 10:32
up vote 2 down vote accepted

You can use Fish or SFTP to transfer files between computers, with minimal prior setup. Both protocols transfer files over SSH, which is secure and encrypted. They are very well integrated into KDE: you can type fish:// or sftp:// URLs into Dolphin's Location Bar, or you can use the "Add Network Folder" wizard. SFTP at least seems to be supported by Gnome too.

I personally use Fish.

On the server machine Fish and SFTP need only an SSH server running, that you can also use to administrate the server machine. Everyone who wants to access the server over Fish or SFTP needs a user account on the server. The usual file access permissions apply, for files accessed over the network.

Fish and SFTP are roughly equivalent to shared directories on Windows, but both work over the Internet too. Usual (command line) programs however can't see the remote files, only programs that use the file access libraries of either Gnome or KDE can see them. To access the remote files through scripts, KDE has the kioclient program.


For a setup with a central server that serves both user identities and files look at NIS and NFS. Both are quite easy to set up, especially with the graphical installers from Opensuse. This is the setup where every user can work at any machine and find his/her personal environment. However the client machines become unusable when they can't access the server.

Furthermore a simple NFS installation has very big security holes. The local computers, where the users sit, have to handle the access rights. The NFS server trusts any computer that has the right IP address. A smart 12 year old kid with a laptop can get access to every file, by replacing one of the local machines with the laptop and recreating the NFS client setup (which is easy).


Off course there is Samba, which has already been mentioned by Grokus. It seems to be quite universal: It can serve files, printers, and login information. It is compatible with Windows and Linux; there is really a PAM Module (Winbind) that lets Linux use the login information form a Samba or Windows server. Samba (and Windows) does not have the security problems of NFS, it handles user identification and access rights in the server. (Please note: I did never administrate or install a Samba server.)

My conclusion: Fish or SFTP are IMHO best for usage at home. Use Samba if you have Windows clients too. NFS is only useful if you can trust everybody, but I expect it to create the lowest CPU load.

share|improve this answer
@Elke: if random 12 year olds with laptops can break into his home to hack his network, he has bigger security issues to worry about than losing word documents ;) +1 though for thorough discussion – axel_c Aug 24 '10 at 9:38
@Axel: It could be his own kid, or his kid's friend. Because it's quite simple, it might be tempting just to try it. – Eike Aug 24 '10 at 12:53
@Elke: I know, I know, I was kidding ;) – axel_c Aug 24 '10 at 13:01

Install Samba and create network Samba shares on your primary Ubuntu server so you can connect all your Ubuntu and Windows PCs to the same network folder.

See documentation here.

share|improve this answer
At first glance that looks very interesting. I'll look into it. – John Berryman Aug 23 '10 at 10:33

If you also want access when you're away from home, I would consider using Dropbox or Ubuntu One for synchronized off-site storage and skip having your own server.

share|improve this answer
I have not used Dropbox with Linux, but I have used it extensively with Windows machines and have had excellent results. – Larry Smithmier Aug 24 '10 at 23:53

An of out of the box option is to re-purpose your current boxes as terminals (using something like ThinStation) and set them all up to auto log into a beefy new Ubuntu box. You could use DynDNS to keep an external name resolving and access the same system from work (assuming you aren't in a proxy black hole). That would keep all of your files in a single location, and let you all share the same environment.

That said, this is not for the faint of heart. Exposing your Linux server to the outside world is somewhat risky. You would also all be using the same box, so if it failed you would all be out of luck.

share|improve this answer

A central server to host network shares is a good idea, a simple rsync script can ensure certain files stay synchronized on your local PC, if needed. The server can also double as a backup location for your important documents, which in turn get backed-up by the server onto an external or online.

I haven't used this, but Amahi Home Server could be a good place to look.

share|improve this answer
Yes, backup is an other really important topic. In my opinion the most neglected topic by home users. – Eike Aug 26 '10 at 15:02

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.