At work I’ve been thinking about cloud sync services, something like Dropbox without actually using Dropbox, because it’s non-kosher around these parts. I thought about OwnCloud so I went investigating.
OwnCloud is neat, it’s a PHP script that will set itself up on a web host, and then provide you with a web interface like Dropbox and access to clients like Dropbox which mirror the function of Dropbox completely. This was a possible route to satisfy our legal people and maybe leverage cloud sync at work. As it turns out, it didn’t work. OwnCloud is a lost cause. I installed it on my iPage host and got it to work all up until I tried to connect the Mac desktop client to it. It got files perfectly well, but when I put a file in the owncloud folder to be synced back up to my host it all fell apart. The error was “errno 22” and ended up being shown to me as “Bad Request” – so that was a no-go. Then I thought maybe I could install OwnCloud on my Mac Pro server at work, keep it in house maybe. That also was a failure, the web side was fine, but the client just couldn’t connect no matter what I tried.
So I’m going to abandon the pursuit of OwnCloud. I’ve tried it and found that it just won’t work on what I’ve got. It was something that could have possibly worked and been great, but it’s got too many moving parts and it was a total failure when you tried to get all the parts to spin up and run. Oh well, at least now I know I can abandon OwnCloud and move forward.
I’ve been using ownCloud on my home server (the same one that I use to host my websites, email and various other sundries), and use it on each of the kids laptops, my MacBook Pro, Brigitte’s Nexus 7 (up until it had to be shipped off for warranty as of yesterday) and Willow’s Nook HD. What I’ve found is that if you are going to mimic DropBox and use it to handle up to 2GB of files, it works great. There are clients available for OS X, Linux, Windows, Android and iOS, which is also ideal, and there’s also a web interface as a fallback if no client is available for the system in question, or you are temporarily borrowing someone else’s computer.
If you’re planning on syncing up your partner’s 80GB+ photo collection, a PHP + cron based solution (which is how ownCloud runs) is definitely not the way to go. Basically ownCloud first parses the folder you are trying to archive, then builds a database of files to sync. Then it attempts to upload/sync the files. If it gets interrupted, the entire process starts over again from the beginning. When the folder holds thousands of files or very large files (ie: video) this is a serious problem.
On top of that it is pretty heavily resource intensive, easily consuming 3GB+ of RAM on the server (which currently only has 4GB total) and requiring multiple spawned instances of nginX worker processes so it doesn’t fall apart (translation: lock up during sync). Whenever I get some time I plan to replace it with Seafile, which is theoretically a much better solution for what I’m trying to accomplish.