Sync-Client als Windows Dienst

Wenn Seafile auf einem Server automatisch im Hintergrund starten soll, um Daten zu synchronisieren, ist es notwendig Seafile als Dienst einzurichten. So wird sichergestellt, dass Seafile auch ohne Benutzer Anmeldung startet und Daten synchronisiert, falls/wenn der Server mal neu gestartet wird.

Um Seafile als Dienst laufen zu lassen, wird ein zusätzliches Tool benötigt, welches erlaubt beliebige Programme unter Windows als Dienst laufen zu lassen.

Das wird benötigt

  • Internet Zugriff
  • luckycloud Account mit luckycloud Home, Team, luckycloud pro Business oder Enterprise (Empfehlung: zusätzlicher Benutzer, welcher nur für Seafile als Service verwendet wird)
  • Administratoren Rechte auf dem Server
  • Seafile Sync Client

Download von NSSM

  1. Zuerst laden Sie das Tool NSSM (Non-Sucking Service Manager) herunter. http://nssm.cc/download
  2. Das Archiv ist zu entpacken und der enthaltene Ordner umzubennen. z.B. nssm-2.24 in nssm.
  3. Anschließend ist der Ordner nssm z.B. nach C:\ zu kopieren. Danach sollte der Pfad C:\nssm\win64 existieren.

Seafile vorbereiten

  1. Installieren Sie den Seafile Sync Client wie gewohnt
    • Es wird empfohlen einen zusätzlichen "Service Benutzer" für "Seafile als Service" einzurichten, damit es nicht zu Störungen bei Passwortänderungen kommt.
  2. Melden Sie sich am Seafile Client an und stellen Sie die Syncronisation der gewünschten Bibliotheken mit lokalen Ordnern her.
  3. Öffnen Sie die Optionen von Seafile und deaktivieren Sie den automatischen Start von Seafile ((Rechtsklick Symbol in der Taskleiste und "Einstellungen" auswählen, dann "Seafile nach der Anmeldung automatisch starten" deaktivieren, mit "OK" bestätigen).
  4. Beenden Sie Seafile vollständig (Rechtsklick Symbol in der Taskleiste und "Beenden" auswählen).

Seafile Service einrichten

  1. Öffnen Sie die Eingabeaufforderung oder Powershell mit Administratoren Rechten (Rechtsklick auf START und dann die entsprechende Option auswählen).
  2. Öffnen Sie die nssm GUI. C:\nssm\win64\nssm.exe install seafileservice.
  3. Nun erscheint ein GUI des NSSM, mit welchem Seafile als Service eingerichtet wird. Pfade müssen ggf. angepasst, werden, falls Sie Seafile nicht in den Standard Verzeichnissen installiert haben.

Tab Application

Option Wert Anmerkungen
Path C:\Program Files (x86)\Seafile\bin\seaf-daemon.exe Pfad muss ggf. angepasst, werden, falls Sie Seafile nicht in den Standard Verzeichnissen installiert haben.
Startup directory C:\Program Files (x86)\Seafile\bin Pfad muss ggf. angepasst, werden, falls Sie Seafile nicht in den Standard Verzeichnissen installiert haben.
Arguments -c C:\Users\Administrator\ccnet -d C:\Users\Administrator\Seafile\seafile-data -w C:\Users\Administrator\Seafile "Administrator" ist der Benutzername des aktiven Benutzers. Die Pfade müssen ggf. an Ihre Umgebung angepasst werden.

NSSM Application

Tab Details

Option Wert Anmerkungen
Display name Seafile Service -
Description - Optional
Startup type Automatic -

NSSM Details

Tab Log on

Option Wert Anmerkungen
This account Administrator Benutzername des aktiven Benutzers
Password <Passwort> Passwort des aktiven Benutzers
Confirm <Passwort> Passwort des aktiven Benutzers

NSSM Log on

  • Drücken Sie anschließend auf "Install service"
  • Die Installation des Dienstes wird über das NSSM GUI bestätigt, dies können Sie mit "OK" annehmen.

Seafile Dienst starten/stoppen

  1. Sie können den Seafile Dienst nun das erste Mal starten. Geben Sie dazu in der Admin Eingabeaufforderung/Powershell Konsole folgenden Befehl ein:
    net start seafileservice
  2. Um den Seafile Dienst zu stoppen, geben Sie in der Admin Eingabeaufforderung/Powershell Konsole folgenden Befehl ein:
    net stop seafileservice

Seafile läuft nun als Dienst im Hintergrund und synchronisiert Ihre Daten.

Änderungen mit dem Seafile Client durchführen

Wenn Sie Änderungen am Seafile Client durchführen möchten, ist es wichtig dass der Seafile Dienst zuvor beendet wurde. Der parallele Betrieb des Dienstes plus GUI Client kann sonst zu Datenbank Konflikten führen.

  1. Stoppen Sie den Seafile Dienst (Siehe ## Seafile Dienst Starten/Stoppen)
  2. Starten Sie den Seafile Client von Hand
  3. Führen Sie die Änderungen durch
  4. Beenden Sie den Seafile Client
  5. Starten Sie den Seafile Dienst wieder (Siehe ## Seafile Dienst Starten/Stoppen)