Another Dropbox clone with the ability to install your own server or ownCloud against Seafile

I’ve been looking for a replacement for Dropbox for something so that you can completely manage the server, the storage size would be limited only by the disk size on the server and the client should be intuitive, run under Linux / MacOS / Windows, be able to synchronize the directory on the local computer without need to mount any remote sources, i.e. have access to files offline. Below I will talk about my experiences using ownCloud and Seafile.

ownCloud


The most suitable product for the parameters that I came across was ownCloud. The description was promising. There is a client for all popular OSs, the ability to download and install your server, a nice web interface. In addition, it is written by people related to KDE, so the quality should be at the level.
True, ownCloud had a bunch of additional services that I did not need, such as: gallery, mp3 player, calendar, contacts, and much more. But he knew how to authorize users using LDAP.

Server

Well, let's try. Nginx, php-fpm, PostgreSQL were installed, ownCloud was downloaded and configured. I log in as an administrator, configure LDAP, try to log in as an LDAP user and ... I immediately get the 500th error. After a long search, it was found that the LDAP + PostgreSQL bundle in ownCloud works very poorly, and apparently PostgreSQL support is generally poorly implemented, as developers are trying to use the same queries on different types of DB . Well, PostgreSQL was replaced with MySQL and LDAP worked as planned. True, he didn’t want to work through the standard LDAP 389 port , it only worked through the Gloval Catalog 3268 port.

Client

It is time to try the client. Download, install, run, connect to the server, specify where the directory for synchronization will lie. So far so good. I drop the files into the directory. They are poured onto the server. I go to the web, share a directory for other users and ... nothing. They do not see her. Even through the web interface. After again a long search, a workaround was found, speaking in Russian “crutch”. In the clientsync directory on the server, each user who needs to have access is symlinked to the "main" user directory, which allows access to their files. Then there were many experiments in which the clientsync directory either appeared in the web interface or not, bug reports were found that talked about problems with updating the cache in the database, but I did not find a ready-made “correct” solution.

Also with the client under Linux a rather unpleasant bug was discovered . After long work, he opened and did not close many files / dev / urandom, ceasing to work with the message "Too many open files".

In the beginning I tried to create bug reports, use the version from master, but then I realized that critical problems for me, such as sharing directories, the main reason for which I was going to use my ownCloud, were solved very slowly. So ownCloud was gradually forgotten and abandoned.

Seafile


But just a few days ago, on one of the news sites, I saw the news about the release of version 1.3 of a certain Seafile system , which also makes an attempt to replace Dropbox. Later it turned out that before version 1.3 it was only in Chinese and therefore was not widely known.

The description seemed tempting to me and I decided to try it.

Server

There was already a server for storage, so all that was left was to install Seafile. Downloaded, unpacked. Out of habit, he created a new database, launched the installer. He swore at the lack of a couple of packages. Installed packages, launched the installer again. He answered literally several questions, such as, server name, URL, ports, paths, admin login and password, and everything, the server is installed. No database is needed (currently Seafile uses sqlite, later support for other databases is planned ). If desired, even a web server is not needed, Seafile has its own built-in web server. But I already had nginx configured with a valid ssl certificate, so all I had to do was configure it to proxy requests to Seafile. Later I found a ready, with a slightly different principle, ngnix configfor Seafile, but "works - don't touch."

We login to the server, we see a message about the lack of libraries and a brief instruction on how to add them and how to synchronize with the computer. We add the


"library". You can specify a password to encrypt it, but I have not tested it yet.


And so, we have a library in which files from clients will be stored. As you can see, there are no problems with the Russian language. Looking ahead, I’ll say that there are no files with them in Cyrillic.
The library can be: downloaded (added to the client), shared or deleted.


Client

Now it’s the turn of the client. I downloaded the deb package for my kubuntu 12.10, installed it and out of habit I wanted to run it from the console, but the 'seafile' command only showed an example of its use. Later I found that you need to run the 'seafile-applet'. Or through the KDE menu, there it is called Seafile with an orange logo.

And so, the client started. In KDE, it was built into the tray with an incomprehensible icon, or rather without it, and the menu looks a little incomprehensible: We


return to our server, click on the Dowload next to the library. Depending on the browser, a new window or tab opens with the address localhost : 13420 / repo / download / and then service information and a page with the following contents:


You can accept the default path or specify your own. You can also specify an existing data directory by clicking on “sync with an existing folder”. In this case, you will have to manually enter or copy / paste the full path to the directory, there is no Browse button. Files in the directory will be merged with files in the library, if any.

And that’s all! Seafile will automatically synchronize and send or download files from / to the server.

Sharing the library also does not present any complexity. You can share as an individual user, having previously created an account for him, as well as a group of users. The shared libraries for the group can be viewed by clicking on the group name in the lower right under “My Groups”. In future versions they will bealso appear in "My Home -> Shared". You can give access to both read-write and read-only. When choosing the latter option, files added by the user simply will not be uploaded to the library. Files modified on the user side will most likely be overwritten by files from the server, but I have not checked it yet.

The user only needs to download and install the client, go to the server and download the library. Everything is very simple and after the first time it becomes intuitive.

Summary

At the moment, Seafile for me looks like the most suitable replacement for Dropbox. The lack of LDAP prevents the company from introducing it, but for personal use, if there is an extra server, it is quite suitable.

Minuses:
  • lack of LDAP support. They promise to do it right after they finish adding clients for iOS and Android. Without LDAP, implementing a company is somewhat problematic because all users will have to be added manually;
  • inability to share the directory inside the "library". Plan to add in future versions;
  • not everything is translated and sometimes hieroglyphs come out in messages;


Pros:
  • the ability to synchronize existing directories, and it does not matter where this directory is located;
  • client for all popular OSs. Mobile clients on the way;
  • intuitive interface and process;
  • all-in-one server;
  • the ability to synchronize from / to multiple servers in one client;


I don’t know if this is plus or minus, but everything is stored in a git-like scm, so if a file is accidentally deleted or deleted, there is always the opportunity to restore it. True only through the web interface. This is a plus. The minus, judging by the discussion, is that if you store large binary files, then the repository will grow greatly.

While writing an article, I found a couple more minor bugs, such as, for example, when deleting a library in the client and / or on the server, it is not deleted from the “Download Tasks” client or the Seafile client does not load automatically when Windows starts, although this option is enabled, but all of them have no effect on file synchronization and the overall system operation, and I consider Seafile to be quite suitable, at least for personal use as a replacement for Dropbox.

Also popular now: