Dropbox alternative using local server?
January 29, 2009 10:50 AM   Subscribe

Is there a Dropbox-like software package that allows me to run a local storage server?

Dropbox keeps your files synchronized across several computers. I wanted to use it to keep my documents, music, and pictures synced across four computers at my home. Unfortunately, all data is kept on third-party servers, which is a show-stopper for me. I've already got a RAID array for backup, so I don't see the point in sending hundreds of GB over the internet, especially when some of that is sensitive data (not to mention that they have a 50GB account limit at the moment).

Are there any alternatives that let me install a local storage server on Linux? It doesn't have to be free, but I'm not looking for enterprise-grade stuff here either.

The features of Dropbox that I need to keep:

1) Client supports Ubuntu, Mac and Windows (I use all three here)
2) Syncing is automatic and seamless - I don't want to have to kick it off manually

Things Dropbox doesn't do, but would be nice:

1) Allow you to select which folders to sync, anywhere on your computer (Dropbox just syncs a single "Dropbox" folder.)
posted by chundo to Technology (11 answers total) 8 users marked this as a favorite
Is there a problem with just picking-up a cheap used PC, installing Linux and your RAID, adding it to your network and directly accessing the files from each of the other computers? A home file server doesn't have to be enterprise-grade. That's what I did when I needed to share files between multiple home computers with a mixture of Ubuntu and Windows. And as a bonus, no need to specify which folders to sync, or deal with software to do the work. The files are just there, mapped or mounted as a network drive.
posted by hungrysquirrels at 11:18 AM on January 29, 2009

sshfs? I have been using it to mount a remote drive on my Mac (drive is a shared folder in my home directory on an Ubuntu server). FUSE allows you to implement sshfs, MacFUSE is a Gogle code project and fairly recently Dokan (Windows FUSE implementation) was open-sourced. I haven't tried Dokan, but MacFUSE works really well with sshfs.

If this worked for you, you'd just need to use the FUSE protocols to access the shared folder from Mac + Windows, and use the local filesystem when on Linux.
posted by caution live frogs at 11:39 AM on January 29, 2009

if you were all on Windows and needed access to work away from the network share, you could use Offline Files - you may be able to do this with Samba now on a Linux box. you can do this and have it work with Ubuntu and the Mac too, but the files won't be available offline. (Offline Files basically keeps your stuff locally and then syncs when the server's there.)

alternatively, you could set up a Subversion server on there and use that - you'd get the versioning control that Dropbox offers as well, plus the data would move over an encrypted channel (https or ssh, depending on how you set it up). a Scheduled Task on Windows set to run every 5 minutes or a cron job (or otherwise scheduled task) on Linux/OS X would do the syncing for you. you'd have to do some hand-rolling of stuff to get that working, though you probably wouldn't have to touch it again after you got it set up.
posted by mrg at 11:43 AM on January 29, 2009

Oooh -- sshfs is one of my favourite linux tools, because I can mount anything I can get to via ssh. You could have a script run at startup, if you were so inclined. SftpDrive under windows does the same thing, mounting ssh-able directories to a drive letter. SftpDrive is shareware and locks you out 30 days, but it only costs $39 to register. I'm not sure about the Mac, but there must be an equivalent somewhere.

I have a crappy old linux server in a closet, and have a directory on it mounted to my work linux box, my vista laptop, my old XP laptop, and my eee 701 running ubuntu. It's great.
posted by cgg at 11:55 AM on January 29, 2009 [2 favorites]

I haven't used it since it became Live Sync, but FolderShare used to do a great job of this. Files are only stored on your machines, but the 3rd party server is responsible for mediating the access/sync. It works on Mac & Windows.

I had high hopes the iFolder would provide an open-source self-hosted option, but it seems to have stagnanted.
posted by Good Brain at 11:55 AM on January 29, 2009

You can do it with webdav and Apache, Ubuntu, OS X, and Windows all speak webdav and will happily store things in webdav folders.
posted by togdon at 11:57 AM on January 29, 2009

Coincidentally, unless you're the same person, this was asked on HN(another site I frequent) recently. Some good answers there.
posted by swapspace at 12:10 PM on January 29, 2009

This question is clearly about syncing files across multiple machines, which is not the same thing as providing remote access to those files. WebDav & sshfs or FTP drive all help with remote access. It's requirement #2 "automatic and seamless sync" that seems to be the hard part.

Rsync & Unison are often given as options for remote sync, but while I've used both for the task, neither seems to have the ease of use and polish that I assume the OP is after.
posted by Good Brain at 12:26 PM on January 29, 2009

CrashPlan pretty much meets all your criteria. It can use any other CrashPlan installation on your LAN as a backup device; systems can back up to each other, even.
posted by majick at 3:08 PM on January 29, 2009

From a cursory glance at their site, CrashPlan looks perfect, thanks majick! I'll test it out.

Good Brain was correct, the sticking point has been the syncing. My RAID is already attached to a linux server, and I already use SSHFS for some things on there, but unfortunately two of the computers are laptops that need access to the files while away from home.
posted by chundo at 6:18 PM on January 29, 2009

Well, nuts. CrashPlan's linux client is written in Java and just the background service is using more resources than Firefox. So, back to square one.
posted by chundo at 8:34 AM on January 31, 2009

« Older How to award our awesome volunteers at the...   |   Selecting range of data based on values in a... Newer »
This thread is closed to new comments.