Seafile client as a Windows service with WinSW


#1

Hi there!

So I already read everything about this, but cannot make it work. I dont want to use NSSM Wrapper to run Seafile client (as it described in the seafile’s documentation) because its outdated. I use WinSW Wrapper almost everywhere, but this time it not works. I mean,
I tried starting the seaf-daemon.exe with commands:
-c >> ccnet dir in my \Users\xy\ dir
-d >> My dir which would be synced
-w >> conf dir that I specified when I’ve installed Seafile client (on C:\Seafile)
When I start the service, the service starts, but doesnt sync files with the server. Also, console output is “initializing crash reporter”.
Is there any solution for this, or I’m really missing something? :confused:

Please help :frowning:


#2

help? :frowning:


#3

As you know, there is a well documented solution with NSSM (in English and German). Some two months ago, when I wrote the German bit, I tested everything thoroughly. It just works.

As much as I understand your wish to stick to a piece of software you are familiar with, why not just go with what just works.


#4

Thanks for your reply. I included in my first post, why I dont want to use NSSM: it does not work on Win 2019 Datacenter.
Do I need ccnet to run Seafile as a service? And what parameters should I give to seaf-daemon.exe to run as a service?


#5

Well, this is a good reason for not using NSSM. Why not mention this earlier?

That depends on the version of the sync client you wish to run. Up until (and including) 6.1, it was necessary to configure both - ccnet and seafile-daemon - as services. Starting with 6.2, configuring seafile-daemon as a service is enough.

I used these:
-c C:\Users\Admin\ccnet -d C:\Users\Admin\Seafile\seafile-data -w C:\Users\Seafile\Seafile
The sync client was installed under the installer’s default path C:\Program Files (x86)\Seafile.

This is said, it should be pretty clear: You need to run the sync client as a regular application at least once in order to create the libarary sync points. (I used the standard path.) Disable auto-start and shut down the app. Only then proceed with the configuration of WinSW.


#6

Hi rdb!
Thanks for the detailed answer.
I have problems with the arguments:
I also installed the Seafile to its default path, C:\Program Files (x86)\Seafile.
During the installation, Seafile asked me for a directory, probably the working directory, which is at C:\Seafile.
I made the sync between Seafile and a folder at Q:\SeaFile_Data.
This is my arguments to seaf-daemon:
seaf-daemon.exe -c C:\Users\QSoft\ccnet -w C:\Seafile -d Q:\SeaFile_Data

The thing happening: when I start the service, or insert these arguments and start seaf-daemon.exe, it creates a lot of files to Q:\SeaFile_Data. This is the directry which is synced with the cloud.

What I am doing wrong? I tried to change the -d and -w arguments with the paths vica-versa, but nothing happening.
Please help :confused:


#7

The option -c gives the path for the sync client’s config file (defined during the installation of the sync client)
The option -d gives the path for internal data (aka seafile-data in the Seafile manual)
The option -w gives the path to the downloaded libraries (aka seafile in the Seafile manual - defined during the installation of the sync client)

Keeping this in mind (and hoping I got your setup right), I would say that
1.) the -d path must be the path under -w and
2.) C:\Seafile is probably wrong for -d (maybe it’s just enough to add ‘\seafile-data’)


#8

Hi there!
Thanks for the reply, I was a bit busy to give feedback on this.
So basically, I dont have to use the synced directories in path commands?
A bit more understandable: I have Sync folder on Q:\SeaFile_Data, its just one sync between one volume and Seafile server. I cannot find any seafile-data folder, I have only Seafile folder in Program Files (x86), and that Seafile folder which I gave during first startup of seafile client.

Any ideas?

Thank you very much for detailing your answer, rdb :slight_smile: