Seafile Cloud installieren und einrichten

Wir haben Ihnen die Cloud-Software Seafile bereits vorgestellt. In diesem Artikel möchten wir Ihnen zeigen, wie Sie Seafile auf Ihrem Server, zum Beispiel einem Raspberry Pi, installieren und einrichten können (Stand: 25.02.2023).

Schritt für Schritt werden wir Sie durch die Installation führen und Ihnen auch die Befehle mitteilen, die Sie in die Konsole Ihres Servers eingeben müssen. Dabei ist die Anleitung an die offizielle Seafile-Installationsanleitung angelehnt.

Voraussetzung für die korrekte Installation ist, dass Sie bereits über einen eigenen Server mit einem eigenen Host-Namen (z. B. ihrhost.dyndns.de) verfügen. Auch ein Nginx Webserver und MySQL müssen eingerichtet sein. Sollten Sie unserem Tutorial zur Einrichtung einer eigenen Cloud gefolgt sein, so ist dies bereits der Fall.

Wichtig: Bei Platzhaltern in diesem Tutorial (z. B. „[Platzhalter für Benutzer]“) sind auch die eckigen Klammern zu ersetzen (z. B. „user0815“).

Falls Sie Ubuntu als Betriebssystem verwenden sollten, finden Sie hier Hinweise zur Installation mit wenigen Klicks.

1. Installation und Herunterladen der notwendigen Pakete

Installieren Sie zunächst einige Pakete, die Seafile benötigt, über die Konsole:

sudo apt-get install -y python3 python3-setuptools python3-pip libmariadb-dev libmariadb-dev-compat && sudo apt-get install -y memcached libmemcached-dev

Weitere benötigte Pakete installieren wir mit:

sudo pip3 install --timeout=3600 django==3.2. future==0.18. mysqlclient==2.1. pymysql pillow==9.3. pylibmc captcha==0.4 markupsafe==2.0.1 jinja2 sqlalchemy==1.4.3 psd-tools django-pylibmc django_simple_captcha==0.5. pycryptodome==3.16. cffi==1.15.1 lxml

Wir legen nun den neuen Benutzer seafile an:

sudo adduser seafile

Anschließend legen wir noch einen neuen Ordner an, verteilen die Rechete und betreten diesen:

mkdir /opt/seafile && cd /opt/seafile && chown -R seafile: /opt/seafile

Jetzt fahren wir als Benutzer seafile fort:

su seafile

Suchen Sie jetzt nach dem aktuellen Server-Download-Link. Rufen Sie dafür auf Ihrem PC die Seafile-Seite auf. Sollten Sie den Raspberry Pi verwenden, benötigen Sie den Download-Link, der dort angegeben ist („Latest version“ anklicken > Datei unter „Assets“ oder ähnlich > Link so ähnlich wie „seafile-server_8.0.5_stable_pi.tar.gz“), ansonsten zum Beispiel den für ein 64Bit-Linux. Diesen Download-Link müssen Sie nun abtippen und auf dem Raspberry Pi den folgenden Befehl ausführen:

sudo wget [HIER-DOWNLOAD-LINK-EINGEBEN] && sudo tar -xzvf *tar.gz

Lassen Sie sich nun alle Dateien in diesem Ordner anzeigen:

ls

Dabei sollte in der folgenden Liste so etwas wie „seafile-server-9.0.10“ (oder andere Version am Ende) stehen. In dieses Verzeichnis können Sie nun mit folgendem Befehl automatisch navigieren:

cd seafile-server-*

2. MySQL für Seafile einrichten

Wir lassen Seafile nun die MySQL-Datenbank einrichten. Dafür sind sowohl das MySQL-Root-Passwort als auch der MySQL-Cloud-Benutzer und das zugehörige Passwort notwendig. Die Zugangsdaten haben Sie zuvor festgelegt. Starten Sie das entsprechende Skript:

sudo ./setup-seafile-mysql.sh

Die folgenden Angaben werden dabei von Ihnen abgefragt:

  • server name: Denken Sie sich einen Namen für Ihren Server aus, z. B. „meine-cloud“
  • ip or domain of the server: Geben Sie hier Ihren Server-Host ein, z. B. ihrhost.dyndns.de
  • where to put seafile data: Wenn Sie kein externes Speichermedium für Ihre Daten verwenden wollen, drücken Sie erneut [Enter]
  • port for the seafile fileserver: [Enter]
  • 1 or 2: Wenn diese Frage erscheint, geben Sie eine 1 ein und bestätigen Sie mit der [Enter]-Taste (Datenbanken neu erstellen)
  • host of mysql server: localhost
  • port of mysql server: 3306
  • password of the mysql root user: Wie von Ihnen zuvor festgelegt
  • mysql user of seafile: Ihr MySQL-Benutzername, wie er etwa in unserem Raspberry Pi-Tutorial erstellt wurde...
  • passwort for mysql user: ...und das zugehörige Passwort.
  • (3x) database name: jeweils [Enter] drücken

Nachdem die Konfiguration noch einmal angezeigt wird, sollten Sie mit [Enter] bestätigen.

Die Einrichtung der MySQL-Datenbanken für Seafile wird damit abgeschlossen.

3. SSL-Unterstützung aktivieren

Öffnen Sie nun eine Konfigurationsdatei:

sudo vi ../conf/seahub_settings.py

Navigieren Sie mit den Pfeiltasten zur entsprechenden Zeile und machen Sie aus dem "http" ein "https":

SERVICE_URL = "https://[IHRHOST.DYNDNS.DE]/"

Speichern Sie diese Datei durch [Esc] und „:wq“ sowie [Enter].

4. Seafile-Administrator erstellen

Zunächst sorgen wir dafür, dass dem Benutzer seafile alle Dateien gehören, die wir zuvor in seinem Homeverzeichnis abgelegt haben:

sudo chown -R seafile: /opt/seafile/

Starten Sie Seafile und Seahub (Webinterface) als seafile-Benutzer, indem Sie folgende Befehle eingeben:

sudo -u seafile ./seafile.sh start && sudo -u seafile ./seahub.sh start

Sie werden nun nach einer E-Mail-Adresse und einem Passwort gefragt. Legen Sie diese beliebig fest, aber wählen Sie in jedem Fall ein sicheres Passwort und merken Sie es sich. Über diesen Administrator-Account können Sie Seafile später verwalten.

Beide Dienste beenden wir anschließend noch einmal, um zunächst Nginx fertig zu konfigurieren:

sudo -u seafile ./seafile.sh stop && sudo -u seafile ./seahub.sh stop

5. Nginx-Konfiguation

Wir haben Ihnen auch für die Konfiguration von Nginx für Seafile eine entsprechende Konfigurationsdatei erstellt. Ersetzen Sie ||HOST|| durch Ihren Host in der hier bereitgestellten Datei

https://www.sim-networks.com/user/assets/getnginxconfig_seafile.txt

und verwenden Sie deren Inhalt als Servereinstellungen (der folgende Befehl öffnet den Inhalt der Datei):

sudo nano /etc/nginx/sites-enabled/default

Wichtig: Sollten Sie nicht unserer Raspberry Pi-Anleitung gefolgt sein, so müssen Sie sicherstellen, dass die Dateien /var/www/ssl/cloudssl.crt und /var/www/ssl/cloudssl.key sowie /var/www/ssl/dhparam.pem existieren und Zertifikatsdateien für Ihr SSL-Zertifikat sind.

Wir starten den Webserver Nginx nun neu:

sudo service nginx restart

6. Seafile-Benutzer und Dienst einrichten

Nun wollen wir dafür sorgen, dass die Seafile-Dienste auch beim Hochfahren des Systems mitgestartet werden. Die folgende Methode wird nur von neueren Betriebssystemen (mind. Debian 8 oder Ubuntu 15.04) unterstützt.

Laden Sie von unserem Server 2 vorkonfigurierte Dateien herunter. Wir beginnen mit der ersten Datei mittels folgenden Befehls:

sudo wget -q -O /etc/systemd/system/seafile.service - https://eigene-cloud-einrichten.de/getSeafileService

Es folgt die 2. Datei, die Sie mit folgendem Befehl abspeichern:

sudo wget -q -O /etc/systemd/system/seahub.service - https://eigene-cloud-einrichten.de/getSeahubService

Abschließend sorgen wir dafür, dass die erstellten Dateien auch bei Systemstart ausgeführt werden:

sudo systemctl enable seafile.service && sudo systemctl enable seahub.service

Nun können wir Seafile starten:

sudo -u seafile ./seafile.sh start && sudo -u seafile ./seahub.sh start

Damit sollten Sie sich nun über das Webinterface unter Eingabe Ihres Hosts bei Seafile anmelden können. Sollte es sich um ein selbst-signiertes SSL-Zertifikat – wie im Raspberry Pi-Tutorial – handeln, umgehen Sie die Browser-Warnung durch Hinzufügen einer Sicherheits-Ausnahmeregel. Alternativ können Sie auch ein sog. Let'sEncrypt-Zertifikat kostenlos einrichten, zum Beispiel nach dieser Anleitung.

Sollte es mit Seafile zu Problemen kommen, kann unter Umständen ein Neustart helfen:

sudo shutdown -r now

7. Weiteren Port freigeben

Um Seafile auf einem Home-Server korrekt nutzen zu können, müssen Sie einen weiteren Port über ihren Router freigeben. Folgen Sie dabei diesem Abschnitt aus dem allgemeinen Tutorial und geben Sie auch den Port 8082 frei.

8. Seafile aktualisieren (später notwendig)

Wenn Sie Seafile auf die aktuelle Version bringen, können Sie sich an den folgenden Schritten orientieren, soweit ein Update nicht über das Interface möglich ist.

Kurz zusammengefasst:

  • Wechseln Sie mit cd /opt/seafile in das korrekte Verzeichnis.
  • Laden und entpacken Sie die nächsthöhere Version von Seafile, wenn Sie etwa Seafile 6.0 nutzen, z. B. erst die 6.1er-Version, anschließend führen Sie das Ganze noch einmal für 6.2 durch, um auf 6.2 zu upgraden (siehe Abschnitt Download).
  • Stoppen Sie Seafile & Seahub (wie oben beschrieben).
  • Suchen Sie die entsprechende Upgrade-Datei, wie hier beschrieben, und führen Sie diese aus.
  • Anschließend können Sie Seafile wieder starten (wie oben beschrieben).

9. Fehlerbehebung

Sollte es einmal zu Fehlern kommen, können Sie sich derzeit noch aus dem Ordner /opt/seafile/ heraus durch den folgenden Befehl etwaige Fehlermeldungen anzeigen lassen:

sudo -u seafile ./seahub.sh start-fastcgi

Ein Fehler, der in letzter Zeit häufiger aufgetreten ist, hat mit einer falschen Versionsbezeichnung zu tun. Wie Sie die Konfigurationsdatei in dem Fall ändern müssen, erfahren Sie hier.

Cloud server

Cloud server

Erfahren Sie mehr über unsere hochverfügbare SIM-Cloud

Mehr erfahren

10. Fertig!

Herzlichen Glückwunsch! Damit ist die Installation von Seafile abgeschlossen. Sie können sich nun in die Weboberfläche einloggen, indem Sie in Ihrem Browser https://[IHRHOST.DYNDNS.DE] aufrufen.

Seafile web interface

Screenshot: Webinterface von Seafile. So ähnlich wird Ihr Seafile bei einem Zugriff über den Browser aussehen.

Sollten Probleme bei der Nutzung dieses Tutorials aufgetreten sein, schauen Sie in unserem FAQ nach, oder kontaktieren Sie uns.

Ansonsten wünschen wir Ihnen noch viel Spaß mit Ihrer Cloud basierend auf Seafile. Sie können nun auch die mobilen Apps für iOS* oder Android installieren, um auch mit Ihrem Smartphone auf Ihre Seafile-Cloud zugreifen zu können.

War dieser Artikel hilfreich?

Hat dir der Artikel gefallen?

Cookie-Zustimmung

Indem Sie auf «Ich stimme zu» klicken, stimmen Sie der Verwendung von Cookies auf unserer Website zu. Die Verwendung dieser Cookies dient der Optimierung Ihrer Nutzererfahrung, indem u. a. Präferenzen für kommende Besuche auf unserer Website gespeichert werden. Sie können unter «Cookies verwalten» detaillierte Einstellungen vornehmen und Ihre Cookie-Auswahl anpassen. Mehr dazu

Cookie-Einstellungen

funktional

Funktionale bzw. notwendige Cookies sind für die Grundfunktionen der Website von entscheidender Bedeutung und die Website funktioniert ohne sie nicht wie vorgesehen.

analyse

Analytische Cookies werden verwendet, um zu verstehen, wie Besucher mit der Website interagieren.

werbung

Werbe-Cookies werden verwendet, um Besuchern relevante Anzeigen und Angebote bereitzustellen.