3

I'm using Seafile (on docker) to sync some files to a Synology nas and it is all working correctly. I've created an external folder that is pointed to /shared folder in the container.

I think I already know the answer, but are the files synced to the server stored 'normally' somewhere? i.e. If I sync a folder called 'photos' and it has 'a.jpg' in it, will I be able to find that file on the seafile server?

The reason for the question is I would like to backup the original files that are sync'd, rather than having to backup the seafile DB, etc.

(I am aware that syncthing does what I want, so I may choose to use that instead, just want to confirm my understanding)

Thanks

Simon
  • 5,373
  • 1
  • 34
  • 46
  • 1
    To add to the correct answer below: You may be able to solve your problem by using the [Drive Client](https://help.seafile.com/drive_client/drive_client_for_linux/) which can mount a seafile library to a folder without syncing it, then you could backup from there – JensV Jan 21 '22 at 13:41

1 Answers1

5

TLDR;

No you won't find your a.jpg file on the server. Your files are going to be turned into blocks of bytes.

To understand

If you take a look at this part of the documentation of data model

FS

There are two types of FS objects, SeafDir Object and Seafile Object. SeafDir Object represents a directory, and Seafile Object represents a file.

Block

A file is further divided into blocks with variable lengths. We use Content Defined Chunking algorithm to divide file into blocks. A clear overview of this algorithm can be found at http://pdos.csail.mit.edu/papers/lbfs:sosp01/lbfs.pdf. On average, a block's size is around 1MB.

So backing up files will won't be as easy as making a raw copy of the seafile drive. As mentioned by @JensV you may still achieve something along those lines using the seafile drive client.

Paulo
  • 8,690
  • 5
  • 20
  • 34
  • Many thanks for confirming! The drive client mount seems like something that might work out. Thank you. – Simon Jan 21 '22 at 18:34