Hi, I’m looking for a FOSS file syncing/sharing solution that does all the following specific things:
- Sync files only when needed, to save space on my client devices.
- Preserve the filesystem on the server for backups. So no opaque blocks like SeaFile.
- No need for external MySQL/Postgres container. SQLite would be okay.
Currently the closest thing to fulfill these is oCIS, but it has a decomposedFS file structure which defeats the second point. Nextcloud may run with embedded SQLite, but I’m reluctant to try it again due to previous experiences (lots of bugs, sluggish, etc). Mountain Duck and FileRun are not FOSS. Filestash would be nice if it can integrate with existing Nextcloud/Owncloud clients for the on-demand syncing functionality, especially on Windows. It would be nice to have an open-source alternative to Mountain Duck, in order to use on-demand sync functionalities with a standard storage backend such as SFTP.
Would you have any recommendations of what to do?
Thank you in advance!
I use Syncthing for this type of task on my PC and Phone and it stores a copy of the shared folder on the server with the option for file versioning. Having a Server is optional by the way.
AFAIK, Syncthing clones the entire folder across peers (the server is just another peer it seems), which isn’t ideal for my use case Do you know any current way to configure it for selective syncing?
I don’t think it can do selective syncing. I’ve been also searching for a similar solution but didn’t find one. Finally opted for syncthing with my most important files. Other files I can get them via web using filestash.
Owncloud supports selective sync, and seems a lot better for performance compared to Nextcloud.
Alternatively you could roll your own with rclone which is essentially an open source alternative to mountain duck. Then you can just use a simple connection via SFTP, FTP, WebDAV, etc…
Non-OCIS Owncloud still needs a dedicated database and recommend against SQLite in prod
I’ve looked at rclone mounting with the --vfs-cache-* flags. But I’m not sure how it can smart sync like mountain duck or handle conflicts elegantly like the Nextcloud/Owncloud clients do. Let me know how to set it up that way if possible
I vouch for Syncthing as well. I enabled storing in my own remote hosting provider marking it as untrusted, so my files are encrypted there.