Seafile ist neben Owncloud eine weitere bekannte Alternative zuDropbox. Damit lassen sich Dateien auf einem zentralen Server zur Synchronisierung mit verschiedenen Geräten ablegen. Wir haben uns die Installation genauer angesehen.
Wer seine Daten lieber auf einem eigenen Server bereithalten und trotzdem zwischen mehreren Geräten synchronisieren will, kann auf die Dropbox-Alternative Seafile zurückgreifen. Seafile ist neben Owncloud eine der bekanntesten Cloud-Speicher-Software-Lösungen, die sich auf einem heimischen Rechner installieren lässt. Clients gibt es für die Betriebssysteme Windows, Mac OS X und Linux sowie die mobilen Betriebssysteme iOS und Android. Die Installation des Seafile-Servers unter Linux ist weitgehend problemlos, die Wartung jedoch nicht so einfach.Wir haben Seafile auf unserem Raspberry Pi installiert, den wir als Versuchsrechner einsetzen. Unsere Installation erfolgt zunächst für die Verwendung in einem lokalen Netzwerk. Damit Seafile oder Owncloud später auch über das Internet erreichbar sind, gibt es einige zusätzliche Konfigurationsschritte, die der Absicherung dienen. Diese reichen wir in einem späteren Artikel nach.
Damit das Raspberry Pi immer unter der gleichen IP-Adresse erreichbar ist, kann noch die Textdatei /etc/network/interfaces angepasst werden. Statt iface eth0 inet dhcp müssen dann folgende Zeilen eingetragen werden:
iface eth0 inet static
address *mit ifconfig ausgelesene IP-Adresse*
netmask 255.255.255.0
gateway *IP-Adresse des Routers*.
Danach wird das Netzwerk-Subsystem des Raspberry Pi mit dem Befehl/etc/init.d/networking restart neu gestartet. Eine feste IP-Adresse stört den DHCP-Server im Netzwerk nicht, solange diese nicht bereits von einem anderen Gerät verwendet wird. Ein weiterer Vorteil einer festen IP-Adresse: Wir können das Raspberry Pi jetzt einfach über SSH verwalten, ohne mühsam die IP-Adresse zu ermitteln, etwa über ein Terminalfenster von Linux oder Putty unter Windows.
Die Installation
Der Seafile-Server ist nicht in den offiziellen Softwarequellen diverser Linux-Distributionen zu finden. Stattdessen muss die Software direkt von der Webseite des Projekts heruntergeladen werden. Der Nachteil: Neue Versionen des Servers müssen erneut händisch von der Webseite des Projekts heruntergeladen und eingespielt werden. Deshalb empfiehlt ein Howto auf der Webseite des Projekts ein spezielles Verzeichnislayout, dem wir folgen.
Zunächst erstellen wir als normaler Benutzer den Ordner seafile in unserem Home-Verzeichnis. Wir wechseln mit cd seafile dorthin und geben dann den Befehl
wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.0.2_pi.tar.gz
ein, um die Software von der Webseite des Projekts herunterzuladen. Anschließend wird das Tar.gz-Archiv mit tar -xzf seafile-server_* entpackt. Danach erstellen wir mit mkdir installed noch das entsprechende Verzeichnis und verschieben mit mv seafile-server_* installed das zuvor heruntergeladene Tar.gz-Archiv dorthin. Hier können später Archive aktuellerer Versionen des Seafile-Servers gespeichert werden.
Nun wechseln wir mit cd seafile-server-3.0.2 in den Ordner, in dem die zuvor entpackten Dateien liegen. Dort sind zahlreiche Shell-Skripts zu finden, die an der Endung .sh zu erkennen sind. Mit diesen erfolgt die Einrichtung des Seafile-Servers.
Zunächst müssen noch einige Python-Bibliotheken aus den Debian-Softwarequellen installiert werden. Folgender Befehl erledigt das in einem Rutsch:
sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging python-mysqldb
Anschließend starten wir mit ./setup-seafile-mysql.sh die Konfiguration der Mysql-Datenbank, für die wir das Administrator-Passwort der Datenbank benötigen. Zunächst muss ein beliebiger Name für den Seafile-Server eingegeben werden, wir haben uns für seafile_pi entschieden. Danach muss die IP-Adresse des Raspberry Pi im lokalen Netzwerk eingegeben werden.
Abfragen bestätigen
Seafile benötigt spezielle Ports, die in den nächsten Schritten definiert werden. Wir folgen hier den Vorgaben, die wir mit Enter quittieren. Auch der Vorgabe des Verzeichnisses für die Ablage der gespeicherten Daten folgen wir, diese werden im Home-Verzeichnis des Nutzers pi abgelegt. Nach der Festlegung weiterer Ports erfolgt die Abfrage, ob wir neue Datenbanken erstellen oder vorhandene nutzen wollen. Mit der ersten Option lassen wir zunächst neue Datenbanken erstellen. Bei einem späteren Upgrade auf eine neue Version von Seafile-Server können wir dann auf die bestehenden zurückgreifen.
Nach der Eingabe des Administrator-Passworts für Mysql lassen wir zunächst den neuen Benutzer seafile erstellen und geben diesem ein neues Passwort. Die Einrichtung der Datenbanken als Benutzer root ist aus Sicherheitsgründen nicht empfohlen, vor allem wenn der Server später auch über das Internet erreichbar sein soll. Die drei folgenden Empfehlungen für die Namen der neuen Datenbanken übernehmen wir wieder jeweils mit Enter. Nachdem das Skript noch eine Zusammenfassung unserer Eingaben anzeigt, drücken wir erneut die Eingabetaste, um die Änderungen zu übernehmen.
Begrenzung aufheben
Das Skript erstellt nicht nur die benötigten Datenbanken, sondern legt auch den symbolischen Link seafile-server-latest an, der zum Verzeichnis der aktuell verwendeten Seafile-Server-Version führt. Die im Laufe der Installation dort abgelegten Konfigurationsdateien lassen sich später weiterverwenden.
Standardmäßig gibt es unter Linux eine Begrenzung, wie viele Dateien gleichzeitig geöffnet werden dürfen, nämlich 1024. Das reicht in den meisten Fällen aus. Seafile hält die Verbindungen zwischen Client und Server offen, wenn diese verbunden sind. Daher wird empfohlen, die Begrenzung mit sudo ulimit -n 30000 zu erhöhen, vor allem wenn zahlreiche Clients auf den Seafile-Server zugreifen. Für erste Versuche in einem Heimnetzwerk ist diese Option nicht notwendig und kann später noch gesetzt werden.
Anschließend wechseln wir mit cd seafile-server-latest in das Stammverzeichnis des Seafile-Servers und starten ihn mit ./seafile.sh start. Jetzt muss mit./seahub.sh start der Hub-Server gestartet werden, über den die Clients zugreifen. Hier muss beim ersten Start noch ein Administrator-Konto eingerichtet werden. Dazu geben wir auf Anfrage eine E-Mail-Adresse und ein beliebiges Passwort ein.
Auf einem Client-Rechner lässt sich der Seafile-Server über den Browser überhttp://<IP-Adresse-des-Raspberry-PI>:8000 erreichen. Dort können über das Werkzeug-Symbol beispielsweise neue Benutzer und Gruppen eingerichtet werden. Dort neu erstellte Ordner, die sogenannten Bibliotheken, lassen sich verschlüsseln. Clients für diverse Betriebssysteme können von der Webseite des Projekts heruntergeladen werden.
Fazit
Probleme hatten wir nur kurzzeitig nach dem ersten Start des Servers, denn zunächst konnten wir uns nicht vom Browser aus mit dem Seafile-Server verbinden. Ein erneuter Start des Servers behob den Fehler aber ohne weiteres Zutun. Uns fiel auch auf, dass wir zur Verschlüsselung neu angelegter Bibliotheken über Clients ein beliebiges Passwort setzen konnten. Legten wir über den Browser eine neue Bibliothek an, monierte der Seafile-Server, das zuvor verwendete Passwort sei zu kurz.
Außerdem könnte es Probleme bei der Installation neuer Versionen des Seafile-Servers geben. Eine automatische Update-Funktion gibt es nicht, der Nutzer muss neue Versionen selbst herunterladen und aktualisieren. Immerhin gibt es Skripts, die die Migration dann vervollständigen.
Die Installation des Seafile-Servers ist dank des beigelegten Skripts jedoch weitgehend problemlos. Gut gefallen hat uns, dass die Minimalkonfiguration im Vergleich zu Owncloud auch ohne Anpassungen an Apache oder einen alternativen Webserver erfolgen kann. Sie müssen nur konfiguriert werden, wenn Seafile über eine gesicherte HTTPS-Verbindung erfolgen soll. Die Einrichtung erklären wir in einem späteren Artikel.
Quelle: golem.de
Wer seine Daten lieber auf einem eigenen Server bereithalten und trotzdem zwischen mehreren Geräten synchronisieren will, kann auf die Dropbox-Alternative Seafile zurückgreifen. Seafile ist neben Owncloud eine der bekanntesten Cloud-Speicher-Software-Lösungen, die sich auf einem heimischen Rechner installieren lässt. Clients gibt es für die Betriebssysteme Windows, Mac OS X und Linux sowie die mobilen Betriebssysteme iOS und Android. Die Installation des Seafile-Servers unter Linux ist weitgehend problemlos, die Wartung jedoch nicht so einfach.Wir haben Seafile auf unserem Raspberry Pi installiert, den wir als Versuchsrechner einsetzen. Unsere Installation erfolgt zunächst für die Verwendung in einem lokalen Netzwerk. Damit Seafile oder Owncloud später auch über das Internet erreichbar sind, gibt es einige zusätzliche Konfigurationsschritte, die der Absicherung dienen. Diese reichen wir in einem späteren Artikel nach.
Damit das Raspberry Pi immer unter der gleichen IP-Adresse erreichbar ist, kann noch die Textdatei /etc/network/interfaces angepasst werden. Statt iface eth0 inet dhcp müssen dann folgende Zeilen eingetragen werden:
iface eth0 inet static
address *mit ifconfig ausgelesene IP-Adresse*
netmask 255.255.255.0
gateway *IP-Adresse des Routers*.
Danach wird das Netzwerk-Subsystem des Raspberry Pi mit dem Befehl/etc/init.d/networking restart neu gestartet. Eine feste IP-Adresse stört den DHCP-Server im Netzwerk nicht, solange diese nicht bereits von einem anderen Gerät verwendet wird. Ein weiterer Vorteil einer festen IP-Adresse: Wir können das Raspberry Pi jetzt einfach über SSH verwalten, ohne mühsam die IP-Adresse zu ermitteln, etwa über ein Terminalfenster von Linux oder Putty unter Windows.
Die Installation
Der Seafile-Server ist nicht in den offiziellen Softwarequellen diverser Linux-Distributionen zu finden. Stattdessen muss die Software direkt von der Webseite des Projekts heruntergeladen werden. Der Nachteil: Neue Versionen des Servers müssen erneut händisch von der Webseite des Projekts heruntergeladen und eingespielt werden. Deshalb empfiehlt ein Howto auf der Webseite des Projekts ein spezielles Verzeichnislayout, dem wir folgen.
Zunächst erstellen wir als normaler Benutzer den Ordner seafile in unserem Home-Verzeichnis. Wir wechseln mit cd seafile dorthin und geben dann den Befehl
wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.0.2_pi.tar.gz
ein, um die Software von der Webseite des Projekts herunterzuladen. Anschließend wird das Tar.gz-Archiv mit tar -xzf seafile-server_* entpackt. Danach erstellen wir mit mkdir installed noch das entsprechende Verzeichnis und verschieben mit mv seafile-server_* installed das zuvor heruntergeladene Tar.gz-Archiv dorthin. Hier können später Archive aktuellerer Versionen des Seafile-Servers gespeichert werden.
Nun wechseln wir mit cd seafile-server-3.0.2 in den Ordner, in dem die zuvor entpackten Dateien liegen. Dort sind zahlreiche Shell-Skripts zu finden, die an der Endung .sh zu erkennen sind. Mit diesen erfolgt die Einrichtung des Seafile-Servers.
Zunächst müssen noch einige Python-Bibliotheken aus den Debian-Softwarequellen installiert werden. Folgender Befehl erledigt das in einem Rutsch:
sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging python-mysqldb
Anschließend starten wir mit ./setup-seafile-mysql.sh die Konfiguration der Mysql-Datenbank, für die wir das Administrator-Passwort der Datenbank benötigen. Zunächst muss ein beliebiger Name für den Seafile-Server eingegeben werden, wir haben uns für seafile_pi entschieden. Danach muss die IP-Adresse des Raspberry Pi im lokalen Netzwerk eingegeben werden.
Abfragen bestätigen
Seafile benötigt spezielle Ports, die in den nächsten Schritten definiert werden. Wir folgen hier den Vorgaben, die wir mit Enter quittieren. Auch der Vorgabe des Verzeichnisses für die Ablage der gespeicherten Daten folgen wir, diese werden im Home-Verzeichnis des Nutzers pi abgelegt. Nach der Festlegung weiterer Ports erfolgt die Abfrage, ob wir neue Datenbanken erstellen oder vorhandene nutzen wollen. Mit der ersten Option lassen wir zunächst neue Datenbanken erstellen. Bei einem späteren Upgrade auf eine neue Version von Seafile-Server können wir dann auf die bestehenden zurückgreifen.
Nach der Eingabe des Administrator-Passworts für Mysql lassen wir zunächst den neuen Benutzer seafile erstellen und geben diesem ein neues Passwort. Die Einrichtung der Datenbanken als Benutzer root ist aus Sicherheitsgründen nicht empfohlen, vor allem wenn der Server später auch über das Internet erreichbar sein soll. Die drei folgenden Empfehlungen für die Namen der neuen Datenbanken übernehmen wir wieder jeweils mit Enter. Nachdem das Skript noch eine Zusammenfassung unserer Eingaben anzeigt, drücken wir erneut die Eingabetaste, um die Änderungen zu übernehmen.
Begrenzung aufheben
Das Skript erstellt nicht nur die benötigten Datenbanken, sondern legt auch den symbolischen Link seafile-server-latest an, der zum Verzeichnis der aktuell verwendeten Seafile-Server-Version führt. Die im Laufe der Installation dort abgelegten Konfigurationsdateien lassen sich später weiterverwenden.
Standardmäßig gibt es unter Linux eine Begrenzung, wie viele Dateien gleichzeitig geöffnet werden dürfen, nämlich 1024. Das reicht in den meisten Fällen aus. Seafile hält die Verbindungen zwischen Client und Server offen, wenn diese verbunden sind. Daher wird empfohlen, die Begrenzung mit sudo ulimit -n 30000 zu erhöhen, vor allem wenn zahlreiche Clients auf den Seafile-Server zugreifen. Für erste Versuche in einem Heimnetzwerk ist diese Option nicht notwendig und kann später noch gesetzt werden.
Anschließend wechseln wir mit cd seafile-server-latest in das Stammverzeichnis des Seafile-Servers und starten ihn mit ./seafile.sh start. Jetzt muss mit./seahub.sh start der Hub-Server gestartet werden, über den die Clients zugreifen. Hier muss beim ersten Start noch ein Administrator-Konto eingerichtet werden. Dazu geben wir auf Anfrage eine E-Mail-Adresse und ein beliebiges Passwort ein.
Auf einem Client-Rechner lässt sich der Seafile-Server über den Browser überhttp://<IP-Adresse-des-Raspberry-PI>:8000 erreichen. Dort können über das Werkzeug-Symbol beispielsweise neue Benutzer und Gruppen eingerichtet werden. Dort neu erstellte Ordner, die sogenannten Bibliotheken, lassen sich verschlüsseln. Clients für diverse Betriebssysteme können von der Webseite des Projekts heruntergeladen werden.
Fazit
Probleme hatten wir nur kurzzeitig nach dem ersten Start des Servers, denn zunächst konnten wir uns nicht vom Browser aus mit dem Seafile-Server verbinden. Ein erneuter Start des Servers behob den Fehler aber ohne weiteres Zutun. Uns fiel auch auf, dass wir zur Verschlüsselung neu angelegter Bibliotheken über Clients ein beliebiges Passwort setzen konnten. Legten wir über den Browser eine neue Bibliothek an, monierte der Seafile-Server, das zuvor verwendete Passwort sei zu kurz.
Außerdem könnte es Probleme bei der Installation neuer Versionen des Seafile-Servers geben. Eine automatische Update-Funktion gibt es nicht, der Nutzer muss neue Versionen selbst herunterladen und aktualisieren. Immerhin gibt es Skripts, die die Migration dann vervollständigen.
Die Installation des Seafile-Servers ist dank des beigelegten Skripts jedoch weitgehend problemlos. Gut gefallen hat uns, dass die Minimalkonfiguration im Vergleich zu Owncloud auch ohne Anpassungen an Apache oder einen alternativen Webserver erfolgen kann. Sie müssen nur konfiguriert werden, wenn Seafile über eine gesicherte HTTPS-Verbindung erfolgen soll. Die Einrichtung erklären wir in einem späteren Artikel.
Quelle: golem.de