
Building Your Own Dropbox Equivalent - jnoller
http://cloudfs.org/2011/05/building-your-own-dropbox-equivalent/
======
m0nty
These things are a worthy effort (there have been several such posts recently)
but there is no way it's equivalent to Dropbox. Dropbox is cross-platform and
has web-based file access and many other benefits. Is Dropbox-like file
storage destined to be one of those things (like anti-virus, for example)
where there are some fairly good open-source implementations which are never
quite as good as the commercial product(s)?

~~~
ghj88
Calm down. Sheesh. He's only giving a tutorial on how to develop a very basic
Dropbox. I thought any developer would know that.

~~~
wzdd
No, the gp has a good point. These articles seem to come up every week on HN.
The point is that it's super easy to write something that syncs a folder. You
can start with rsync and a cronjob, and just go up from there. Dropbox is
fantastic because they haven't solved the easy problem (sync a folder on a
single platform when nothing goes wrong), they've solved a very different hard
problem -- sync a folder across multiple platforms, deal with corner cases,
handle errors gracefully, and wrap the whole thing up in a very easy-to-use
GUI.

These things aren't dropbox replacements, they are reminders that dropbox is a
unique product.

------
pieter
This doesn't seem to be anything like dropbox, but more an NFS replacement.

~~~
pmjordan
NFS doesn't mirror the remote data to the local disk, whereas glusterfs allows
exactly that (plus some more stuff). <http://en.wikipedia.org/wiki/GlusterFS>

~~~
lloeki
So, is it usable even when offline? How does it handles conflicts once it
comes back online? The only mention I seem to find about mirroring is
mirroring _across multiple servers_ , but _not_ client<->server (unless you
run a server locally on the client too).

------
danfitch
One thing I like about products that work... They work, and I don't have to.
Which is why I like dropbox.

------
pmjordan
Does anyone know of a similar setup that allows client-side encryption as
well, with some nodes (those in the cloud) acting only as dumb storage that
never sees the encryption keys?

The only thing I'm aware of is drbd, which acts at the block level, so you can
stack dm-crypt and any file system (including OCFS2) on top. As far as I know,
drbd only supports 2 nodes, though, which kind of limits the appeal.

(I'm specifically _not_ talking about tunneling a normal cluster file system
via SSL, which only provides end-to-end encryption)

~~~
gary4gar
Try Wuala, all data is fully encrypted and acts as "dumb storage"

~~~
pmjordan
I already use that for some stuff, it gets rather expensive for vast amounts
of data, and I've already got spare HDD space on servers.

------
hallman76
These articles that describe how to "build your own dropbox" all ignore the
client. For me, the beauty of dropbox is the simple, straightforward client.
Backing up on my own hardware/cloud might be interesting, but not if I have to
monkey around with shell scripts in a CLI.

When someone reverse-engineers the dropbox protocol so I can use the official
dropbox client on my own infrastructure THAT will be news.

~~~
drdaeman
As I've understood it, it's already (partially) reverse-engineered by
dropship.
[https://github.com/driverdan/dropship/blob/master/dropbox/me...](https://github.com/driverdan/dropship/blob/master/dropbox/metadataclient.py)

Still, I see no reason to use Droxbox servers when you could setup your own.

------
mrleinad
Thanks a lot. It's nice to see there are options, although they require a bit
extra work, they're worth if you consider your privacy valuable.

------
MarketingMuppet
For those interested in building cloud apps we at SpiderOak offer a 'Do it
yourself' Storage API that is designed specifically towards backup, sync etc.

You can find more info @ [https://spideroak.com/blog/20100928101634-spideroak-
diy-a-sp...](https://spideroak.com/blog/20100928101634-spideroak-diy-a-space-
efficient-keyvalue-store-for-arbitrarily-large-values-now-in-beta)

