Raspberry Pi: Owncloud-Alternative Seafile Server installieren
Die Daten immer und überall verfügbar zu haben, ist der Trend der Zeit. Wenn man jedoch seine Daten nicht Unternehmen wie Dropbox oder Google anvertrauen, sondern lieber auf dem eigenen Server unterbringen möchte, wird man schnell auf OwnCloud stoßen. Diese Software ist webbasierend und hat ein äußerst umfangreiches Webinterface. Jedoch gibt es immer wieder Probleme bei der Synchronisation der Dateien und wer Wert darauf legt, dass die Daten in der Cloud verschlüsselt sind, wird hier auch nicht fündig. Eine Alternative zu Owncloud ist Seafile. Die Software synchronisiert für meine Begriffe ordentlich und hat eine Clientside Encryption AES 256/CBC. Im Gegensatz zu OwnCloud gibt es ein nicht so umfangreiches Webinterface und man braucht zur Installation mehr als einen Standard-Webspace. Im Gegenzug ist die Performance wesentlich besser als bei Owncloud. Einen ausführlichen Vergleich Owncloud vs Seafile findest du ebenfalls in meinem Blog. Wie man Seafile auf dem Raspberry Pi installiert und verwendet, beschreibe ich im Folgenden.
Voraussetzung: Raspbian oder vergleichbare Distribution installiert
Zunächst müssen wir mittels des Paketmanagers APT einige Pakete installieren, die von Seafile benötigt werden.
sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging sqlite3
Bevor wir Seafile installieren, legen wir hierfür noch einen eigenen Benutzer seafile an und wechseln in diesen. Bei diesem deaktivieren wir den Login, da wir uns in diesen auch nicht über SSH anmelden müssen, sondern dies via su erledigen.
sudo adduser seafile --disabled-login
sudo su - seafile
Jetzt laden wir die aktuelle Version vom Seafile Server für den Raspberry Pi mittels wget herunter und entpacken sie. Zum Zeitpunkt als ich dieses Tutorial schrieb war die Version 4.0.6 aktuell. Die aktuelle Version bekommt man im Downloadbereich des Projektes.
wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_4.0.6_pi.tar.gz
tar -xvf seafile-server_4.0.6_pi.tar.gz
rm seafile-server_4.0.6_pi.tar.gz
Wir führen nun den Install-Prozess von Seafile aus. Zunächst stimmen wir dem Check mittels Enter zu. Sofern alles in Ordnung ist, werden wir nun aufgefordert, den Namen des Servers einzugeben. Hier können wir uns einfach etwas ausdenken. Daraufhin werden wir nach der Domain/IP-Adresse des Raspberry Pis gefragt. Hier tragen wir, falls wir eine DynDNS Domain verwenden möchten, diese ein, andernfalls die interne IP-Adresse des Raspberry Pis. Die Frage default port können wir mittels Enter überspringen. Falls die synchronisierten Daten auf bspw. einer externen Festplatte oder einem USB-Stick gespeichert werden sollen, müssen wir bei store your seafile data dessen Pfad angeben, wobei wir am Ende des Ordnernamens /seafile-data anhängen sollten. Beachtet werden sollte, dass das externe Speichermedium unter dem Benutzer seafile eingebunden ist. Alle weiteren Fragen können wir mittels Enter übergehen. Am Ende des Prozesses bestätigen wir unsere Eingaben erneut mit einem Enter. Daraufhin wird der Server eingerichtet, was ein paar Sekunden dauern kann.
cd seafile-server-4.0.6
./setup-seafile.sh
Nun starten wir Seafile (File-Synchronisation-Service) und Seahub (Webinterface). Beim Start letzteren Dienstes werden wir aufgefordert eine E-Mail Adresse und ein Passwort für den Seafile Admin Account zu definieren.
./seafile.sh start
./seahub.sh start 8000
Möchte man das Seafile Webinterface nun noch mit SSL zur verschlüsselten Übertragung der Daten weiter absichern, so sind folgende weitere Schritte notwendig. Eine DynDNS Domain (wie man eine solche anlegt, beschreibe ich im Artikel DynDNS einrichten) ist hierfür empfehlenswert. Andernfalls muss man erst bei Step 15 weitermachen.
Zunächst müssen wir für Seahub eine Konfigurationsdatei abändern. Dazu ändern wir das Protokoll der Variable SERVICE_URL von http auf https und den Port von 8000 auf 8001. Die folgenden Ausschnitte sind Beispiele und müssen durch die eigene IP-Adresse des Raspberry Pis oder DynDNS Domain angepasst werden. Gespeichert werden kann mittels STRG + X, Y und darauffolgend Enter.
nano /home/seafile/ccnet/ccnet.conf
SERVICE_URL = http://192.168.178.22:8000
ersetzen durch
SERVICE_URL = https://beispiel.no-ip.org:8001
Des Weiteren müssen wir eine weitere Konfigurationsdatei abändern. Hierfür fügen wir folgende Zeile in /home/seafile/seahub_settings.py ein. Die folgende Angabe ist ein Beispiel und die IP-Adresse oder DynDNS Domain muss erneut angepasst werden.
nano /home/seafile/seahub_settings.py
HTTP_SERVER_ROOT = 'https://beispiel.no-ip.org:8001/seafhttp'
Nun müssen wir Seahub im FastCGI Modus starten. Dies können wir mit folgendem Kommando bewerkstelligen.
/home/seafile/seafile-server-latest/seahub.sh stop
/home/seafile/seafile-server-latest/seahub.sh start-fastcgi
Ab sofort müssen wir Seahub immer mittels ersterem anstatt zweitem Kommando starten.
/home/seafile/seafile-server-latest/seahub.sh start-fastcgi
anstatt
/home/seafile/seafile-server-latest/seahub.sh start
Dieser und folgende Schritte sollten nicht mehr im Benutzer seafile ausgeführt werden, sondern z.B. im „normalen Benutzer“ pi!
Wir müssen nun nginx (PHP oder Ruby on Rails wird nicht benötigt) installieren. Wie dies funktioniert erklärte ich bereits im Tutorial Webserver Nginx installieren.
Nun müssen wir ein selbst signiertes SSL Zertifikat erstellen. Dies können wir mittels folgenden Befehlen bewerkstelligen. Dabei werden beim vorletzten Befehl mehrere Fragen gestellt. Bei Country Name geben wir DE (ggf. abweichend) an und bei Common Name die verwendete IP-Adresse oder DynDNS Domain. Alle anderen Felder können wir mittels Enter überspringen.
Hinweis am Rande: Sowohl der Seafile Client als auch der Browser wird später meckern, dass das SSL Zertifikat nicht vertrauenswürdig sei, was daran liegt, dass wir dieses selbst signieren. Folglich ist diese Warnung einfach zu ignorieren.
sudo mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
sudo openssl genrsa -out seahub.key 4096
sudo openssl req -new -sha256 -key seahub.key -out seahub.csr
sudo openssl x509 -req -sha256 -days 3650 -in seahub.csr -signkey seahub.key -out seahub.crt
Jetzt müssen wir ein nginx Site config file mit folgendem Inhalt anlegen. Dabei müssen wir my-seahub-domain.tld durch die verwendete IP-Adresse oder DynDNS Domain ersetzen.
sudo nano /etc/nginx/sites-available/seahub
server { listen 8001; ssl on; ssl_certificate /etc/nginx/ssl/seahub.crt; ssl_certificate_key /etc/nginx/ssl/seahub.key; server_name my-seahub-domain.tld; error_page 497 https://$host:$server_port$request_uri; client_max_body_size 10G; # set max upload size location / { fastcgi_pass 127.0.0.1:8000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param HTTPS on; fastcgi_param HTTP_SCHEME https; access_log /var/log/nginx/seahub.access.log; error_log /var/log/nginx/seahub.error.log; } location /seafhttp { rewrite ^/seafhttp(.*)$ $1 break; proxy_pass http://127.0.0.1:8082; client_max_body_size 0; } }
Wir müssen nun die soeben angelegte Konfigurationsdatei noch aktivieren, indem wir folgende Verknüpfung erstellen.
sudo ln -s /etc/nginx/sites-available/seahub /etc/nginx/sites-enabled/seahub
Jetzt müssen wir nginx neustarten, damit die Änderungen ihre Wirkung entfalten.
sudo /etc/init.d/nginx restart
Nun rufen wir Seahub unter http://IP:8000/ (IP ersetzen durch IP-Adresse oder, sofern verwendet, DynDNS Domain des Raspberry Pis) bzw. mit SSL https://IP:8001/ in unserem Browser auf. Dort loggen wir uns zunächst mit der zuvor definierten E-Mail Adresse und dem Passwort ein. Hier können wir nun Accounts, Gruppen und Bibliotheken (Ordner die synchronisiert werden sollen) anlegen. Sofern bislang nicht geschehen, sollte man jetzt auf dem PC/Mac den Seafile Client installieren. Diesen kann man auf der Seafile Webseite herunterladen. Sofern man SSL verwendet muss man im Client in Einstellungen > Erweitert die Einstellung Das Server-Zertifikat bei der HTTP-Synchronisation nicht überprüfen aktivieren, da unserer Zertifikat selbst signiert ist und ansonsten nicht akzeptiert wird.
Wir klicken nun auf Neue Bibliothek, um einen neuen Synchronisierungsordner anzulegen. Bei Name können wir einen Namen nach Belieben wählen und bei der Beschreibung müssen wir einen beliebigen Text reinschreiben. Möchten wir, dass die Dateien, bevor sie auf dem Raspberry Pi landen, verschlüsselt werden, müssen wir jetzt einen Haken bei Verschlüsselung setzen und ein Passwort für die Verschlüsselung angeben. Letztere Option ist später nicht mehr änderbar! Es empfiehlt sich, ein Passwort welches 20 Zeichen oder länger ist zu wählen.
Nachdem die Bibliothek nun angelegt wurde, sehen wir wenn wir mit der Maus über die Zeile der Bibliothek fahren rechts zwei Symbole. Mit dem rechten kann man die Bibliothek löschen, mit dem linken können wir die Bibliothek mit Benutzern und Gruppen teilen.
Im Client können wir uns nun mit den Zugangsdaten vom Webinterface anmelden, sehen die angelegten Bibliotheken und können diese synchronisieren lassen.
Zuletzt gehen wir noch einmal in die Konsole, wo wir in rc.local eine Zeile am Ende der Datei, jedoch vor exit 0
einfügen, sodass beim Start des Raspberry Pis Seafile und Seahub mit startet.
sudo nano /etc/rc.local
Ohne SSL
su seafile -c '/home/seafile/seafile-server-latest/seafile.sh start && /home/seafile/seafile-server-latest/seahub.sh start 8000'
Mit SSL
su seafile -c '/home/seafile/seafile-server-latest/seafile.sh start && /home/seafile/seafile-server-latest/seahub.sh start-fastcgi'
Fertig! Die Dateien werden nun mittels Seafile mit dem Raspberry Pi als Server synchronisiert und, sofern gewünscht, vorab verschlüsselt.
Zugriff außerhalb des eigenen Netzwerks
Portfreigabe im Router
Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.
Dieses Tutorial wurde am 22. Februar 2015 überarbeitet.
549 Kommentare. Hinterlasse eine Antwort
Wie sieht es denn mit der Geschwindigkeit aus? Ich hatte owncloud auf dem pi was furchtbar träge war.
Auf jeden Fall besser als bei Owncloud.
Hi,
vielen Dank für die ausgezeichnete Anleitung. Ich hätte noch 3 Fragen:
1. warum starten wir per Crontab nicht das Webinterface? (ich würde gerne von unterwegs über den Browser Dateien wie bei Dropbox verwalten, ist dies dann überhaupt möglich?)
2. standardmäßig wird die SD Karte als Speicher genutzt – wie kann ich einen USB Stick / Festplatte als Speicher nutzen, damit die SD Karte unangetastet bleibt?
3. Kann ich noch einen anderen Client (z.B. ES-Datei Explorer) nutzen? Wie müsste ich diesen Client konfigurieren (WebDav, FTP o.ä.?)
Viele Grüße
Marco
Zu 1: Es gibt ein Webinterface zur Dateiverwaltung, dieses ist aber nicht besonders gut. Ich habe das Webinterface nicht in den Autostart gelegt, da es in meinen Augen eben nicht besonders nützlich ist. Kann man aber durchaus mit starten lassen.
Zu 2: Beim Aufrufen von
./setup-seafile.sh
kann man den Pfad verändern.Zu 3: Für die Open Source Version gibt es keine alternativen Schnittstellen. Ich denke das liegt auch daran, dass eine einheitlicher Implementierung der Verschlüsselung nötig ist, was ja durchaus zu befürworten ist.
Hi,
vielen Dank für deine Antwort. Gerade ist die Android-App kostenlos im Markt zu haben, das wollte ich am Rande kurz erwähnen.
Um den Pfad zu ändern, kann ich also den Setup nochmals aufrufen?
Viele Grüße
Marco
PS: ein kleiner Fehler scheint im „crontab“ Teil zu sein – crontab -e muss unbedingt als sudo aufgerufen werden, damit die sudo-crontab-Datei angepasst wird bzw. der Befehl mit sudo ausgeführt wird.
Danke für den Hinweis. Ja, du musst erneut das Setup aufrufen. Und nein, um Seafile zu laden via Crontab, muss man nicht die Root-Crontab angreifen. Ansonsten hätte man sich den neuen Benutzer auch sparen können 😉
Die crontab des users wird aber nie geladen, weil man sich ja meistens mit dem user pi arbeitet und startet ?
Die Crontab ist unabhängig davon wie du dich einloggst.
Hi Jan
also vorab schön das es deinen Blog gibt echt Klasse
ich hab Seafile installiert klappt alles Festplatte gemountet mit ntfs-3g
nun will ich die mit ./setup-seafile.sh
einbinden dann kommt aber bash verzeichnis nicht gefunden……
woran kann es liegen die cloud läuft ja
danke schonmal 🙂
Sicher, dass du im richtigen Ordner bist. Denn dieser Fehler ist eindeutig…
Na ich hab mich ganz normal über putty angemeldet und bin dann user pi
kann es sein das ich irgendwie auf den user seafile wechseln muss oder liegt das an meinem server namen ?
Ich verstehe ehrlich gesagt gerade nicht dein Problem. Die Installation kannst du ganz einfach über deinen Benutzer pi beginnen und in Step 3 wechselst du den Benutzer.
ah kann es sein das ich erst wieder zum user seafile wechseln muss bevor ich dann ./setup-seafile.sh mache
Problem ist ich habe seafile installiert und wollte jetzt nachträglich meine festplatte als speichermedium hinzufügen was aber mit dem befehl nicht ging und jetzt nach deiner hilfe göaube ich das ich erst wieer den benutzer wechseln muss um das verzeichnis zu ändern
das werde ich heut abend mal gleich testen 😉
Hi
geht auch nicht ich weiß nicht was ich falsch mache aber die Cloude läuft,
nun wenn ich etwas ändern will und mich dann mit sudo su seafile anmelde geht das noch.
sowie ich aber etwas eingeben will kommt pw eingeben aber dann dieser Fehler
(nicht wörtlich) seafile is not sudoers….
glaub es heißt soviel wie Seafile hat keine Root recht oder so
Ja und wenn ich die Ordner suche kommt halt Datei, Verzeichnis nicht gefunden
Aber was ich nicht verstehe greife ich mit Remotedesktopverbindung auf den Pi zu
sehe ich die Ordner im Dateimanager.
ich weiß echt nicht mehr weiter.
Ich verzweifeln 🙂 Du liegt prinzipiell richtig, dass diese Fehlermeldung bedeutet, dass der Benutzer seafile nicht über sudo Root-Rechte bekommt. Wenn du jedoch mal in die Anleitung siehst wird
sudo
nach dem Kommandosudo su seafile
nicht mehr verwendet. Hast du das vielleicht einfach immer davor geschrieben?Ne das hab ich auch nicht gemacht ich habs mal nach der Anleitung gemacht aber das gleiche http://www.karesyk.de/seafile-server-installieren/
aber trotzdem danke das du dir die zeit nimmst 🙂
Mhhh… eigenartig. Ansonsten einfach mal Raspbian neu aufsetzen.
Ja wenn es nix wird werde ich es wohl machen hab es sonst immer van meiner back up Datei wo ssh schon aktiv ist gemacht vllt ist da ein Fehler entstanden
bin dir trotzdem für deine Mühe sehr dankbar! .)
Achja vllt noch ein kleiner Anreiz für deine to do Liste hast du schon mal probiert von anderen Netzwerken aus auf deine Cloude zuzugreifen da soll es ja auch viele Probleme geben.
Das werde ich demnächst auch probieren und sicherlich auch bisschen Hilfe brauchen ;D
Ich habe Seafile ja im produktiv Betrieb. Und habe die Synchronisation auch von unterwegs. Ohne Probleme 🙂
Hallo Jan, danke für das Howto! Cool wäre, wenn du noch ein paar Sachen ergänzen würdest, z.B. wie man SSL aktiviert (funktioniert noch nicht bei mir), oder welche Ports man öffnen muss um von extern zu syncen.
Gute Anregung. Habe es mir mal aufgeschrieben, sodass ich es umsetzte sobald etwas Luft dafür da ist 😉
Hat zwar lange gedauert, aber beide Anregungen sind nun umgesetzt.
Hallo Jan,
vielen Dank für die Tolle Anleitung, da mein Seafile nach dem Neustart nicht mehr geladen hatte. Habe ich in crontab -e [Step 10] noch @reboot /home/seafile/seafile-server-1.6.1/seahub.sh start 8000 eingetragen.
Hast du Version 1.6.1 installiert oder eine neuere? Falls letzteres musst du den Pfad entsprechend anpassen.
Ja, diesen Pfad hatte ich angepasst. Jedoch nur mit seafile.sh start konnte ich mich noch nicht anmelden. Habe die Version 2.0.1 installiert evtl. gab es hier eine Anpassung (kenne mich hier noch aus)
Die Datei seafile.sh startet den Service. Für das Webinterface muss man seahub.sh starten. Was für eine Ausgabe erhältst du denn, wenn du folgendes in der Konsole einfach ausführst?
/home/seafile/seafile-server-2.0.1/seahub.sh start 8000
Hallo Jan, sorry für die späte Rückmeldung. Habe deine Antwort vollkommen übersehen.
Wenn ich den Code ausführe erhalte ich folgende Meldung. „/home/seafile/ccnet/seafile.ini not found. Now quit“ – jedoch wenn ich diesen über sudo ausführe „Seahub is already running.“
vielen Dank Raiko
Ich würde dir raten das Ganze noch einmal neu zu installieren, denn das klingt so, als sei da mehrerlei schief gelaufen.
Den Fehler hatte ich auch, bei mir lag es daran, daß ich das Script als user pi und nicht als user seafile starten wollte. Hier reichen die Rechte des Users pi nicht aus.
@Raiko: seafile.ini not found
probier ein sudo für den start Befehl
sudo /home/…/seafile.sh start
Hey Jan, auch ich möchte mich zuerst für das ausführliche Tutorial bedanken.
Nachdem ich ein wenig mit den Ports rumgespielt habe, habe ich von außen auch wunderbar Zugriff auf den Server (habe bei der ip eine *.no-ip.org Adresse angegeben). Leider habe ich auch einen Client im selben Netzwerk und der verbindet sich zwar, synchronisiert sich aber nicht. Habe es beim Client sowohl mit der netzinternen ip als auch mit der no-ip Adresse versucht,..
Hast du eine Idee?
Ich habe schon ein paar vergebliche Versuche unternommen. Das Problem ist, dass der blöde speedport 921V der Telekom kein loopback (oder so?) unterstützt, weshalb ich den Pi nicht über die no-ip Adresse ansteuern kann, wenn ich im selben Netzwerk bin.
Um aber von außen zugriff zu erhalten muss ich in der ccnet(?) Datei die ddns Adresse angeben, was sich dann aber mit dem heimnetzclient beißt, da sich der ja nur unter Angabe der ip verbindet.
Ein Versuch, in die hosts-Datei des windows PCs,
192.168.2.103 Xyz.no-ip.org
Einzufügen war erfolglos 🙁
Puhh… habe mich da gerade etwas eingelesen, aber habe für diese Problemstellung auch keine Idee wie man es lösen könnte, denn, wie schon gesagt, beißt sich das je nach Netzwerk in dem man sich befindet. Wenn ich dir sage, dass der Router nicht der Beste zum basteln ist, sage ich dir wahrscheinlich, leider, auch nichts Neues…
Nur als Idee, kannst du intern einen Dns-Server aufsetzten, der immer auf Forwarding steht und nur deine externe DynDns-Adresse im lokalen Netz übersteuert.
Ich habe es bei dem einen betreffenden PC über einen Antrag in der hosts-datei gelöst. das funktioniert die letzten Monate jetzt ganz gut..
Für einen Speedport W724V habe ich eine Lösung dafür dass auch dort kein Loopback funktioniert: unter „Heimnetzwerk (LAN) / Übersicht der Geräte im Heimnetzwerk“ sollte man den Raspi sehen. Dort kann man dann auf „Ändern“ drücken und einen eigenen Namen für das Gerät eingeben. Gibt man als Name „meindomainname.ddns.net“ ein (Beispiel), dann sorgt der Router dafür dass hausinterne Zugriffe auf die IP dieses Geräts umgeleitet werden. Optimal in dem Zusammenhang kein DHCP für den Raspi zu verwenden, sondern eine statische IP (am besten vorher machen und dann Gerätenamen zuweisen), sonst kann es passieren dass nach x Tagen zwangsweise dem Raspi eine neue IP zugewiesen wird und die Odysee beginnt von vorne…
Hallo,
wie hast du das Port Forwarding auf dem W724V hinbekommen? Bei mir ist Port 8082 für interne Zwecke reserviert.
Danke
Hm, das ging einfach so… Mein W724V hat die Firmware-Version 05011603.00.007 und meint das ist die aktuellste. Hast Du vielleicht eine ältere Version? Ich hab meinen übrigens nicht von der Telekom gekauft / gemietet – kann mir aber nicht vorstellen dass das einen Unterschied macht.
Klingt eigenartig. Da es im internen Netzwerk ja auch nicht funktioniert würde ich nicht auf die Ports tippen. Aber eine sinnvolle andere Idee habe ich leider auch nicht wirklich…
Merkwürdig ist auch, dass ich, wenn ich auf dem netzinternen PC versuche mich mit dem pi zu verbinden, sogar die Bibliotheken des korrekt angezeigt bekomme. Also die Verbindung wird intern dann über die lokale IP schon hergestellt, nur der sync funktioniert dann leider nicht…
Kann dir da wie gesagt leider nicht wirklich weiterhelfen, so Leid es mit tut…
Ich hab’s. War nur bei meinem ersten Test zu blöde und hab die Einstellungen falsch gemacht. Wenn ich in der hosts-Datei
192.168.2.103 xyz.no-ip.org
Eingebe ohne vor das xyz auch noch ein http:// zu setzen, klappt das alles wie geschmiert 🙂
Warum auch immer ich das bei meinem ersten Versuch vorangestellt habe,..
Aber danke für alles und ich freue mich über weitere Tutorials 😀
Hallo,
wie immer, super Anleitung. Gibt es eine Möglichkeit mehr als 100MB zu übertragen per Webbrowser? Kann man das irgendwo einstellen?
Danke!
Das Upload-Limit kann man selbst definieren. Wie ist im Wiki von Seafile beschrieben.
Hi Jan,
ich mal wieder.
Vielen Dank für Deine super Anleitung.
Vielleicht könntest Du noch im Step 10 hinzufügen, dass crontab -e als Benutzer seafile ausgeführt werden muss, damit der Prozess auch unter diesem Nutzer läuft.
Mir ist es als LinuxNoob passiert, dass ich den Job als root angelegt habe. Und das wollen wir doch nicht! 😉
Gruß Sylvio
In der logischen Schlussfolgerung würde das bedeuten, dass man bei jeder Step den Benutzer angeben muss. Wenn man das Tutorial von Oben nach Unten durchmacht sollte das kein Problem sein, daher werde ich den Verbesserungsvorschlag ausnahmsweise mal nicht aufgreifen 😉
Hallo,
danke für die Anleitung. Leider bekomme ich aber Seafile nicht so eingestellt, dass es die Dateien, die pyLoad auf die externe lädt, anzeigt. Hast du da eine Idee?
Danke!
Du installierst hier ja nur einen Seafile Server. Um neue Dateien in diesen einzuspeisen würdest du einen Seafile Client auf dem Raspberry Pi benötigen. Ich würde dir eher empfehlen einen Samba Server zu installieren und die Downloads damit freizugeben.
Wären die Downloads bei einer Samba Lösung dann nicht nur in einem LAN abrufbar (OK, das Netz könnte man um einen zusätzlichen VPN Zugang erweitern; der Aspekt der Synchronisierung von Daten würde dann aber auf der Strecke bleiben)
Ich bringe diese Überlegung ein, da ich im Moment über die Möglichkeit nachdenke einen NAS auf dem RasPi zu installieren, der dann mit aufgesetztem Seafile und dynDNS zu einer synchronisierten Cloud wird. D.h. in meinem Fall das die Daten grundlegend auf dem RasPi vorliegen, aber Abbilder auch auf meinem HomePC und Android Smartphone. Die Abbilder wären eine Art Datensicherung. Der NAS liegt als RAID1 auf 2 64GB USB Sticks.
Ist es in diesem Fall dann also wirklich so, dass ich auch einen RasPi Seafile Client installieren muss ?
Über eine Anwort würde ich mich sehr freuen und möchte mich natürlich bedanken für die klaren Anleitungen und die gedanklich sehr gewinnbringenden Diskusionen des Blogs.
Zu Samba/pyLoad/Extern: Willst du wirklich heruntergeladene Dateien wieder hochladen, damit du sie extern verfügbar hast? Klingt für mich nicht ganz so sinnvoll ^^
Zur allgemeinen Problematik: Seafile speichert die Dateien nicht einfach so, sondern als Git Repository, was einen Client zum Einspeisen der Dateien zwingend nötig macht.
Danke dir, Jan.
Hat alles so funktioniert wie es sollte. 🙂
Grüße,
Rodney
Hallo Jan,
Dein Tutorial ist wirklich klasse, danke dafür!
Lässt sich parallel zu der Installation von Seafile der RPI auch als Webserver verwenden? Ich würde gerne meine eigene Website hosten (z.B. test.dyndns.org) und dann aber gleichzeitig auch die Möglichkeit haben über z.B. test.dyndns.org/seafile/ meinen Seafile-Server erreichen.
Hast Du eine Idee ob das prinzipiell möglich ist, und wenn ja wie?
So wie ich das verstanden habe, bringt seafile ja seinen eigenen Webserver mit. Es stellt sich für mich die Frage, ob man den dafür verwenden kann/sollte oder ob man parallel dazu noch nginx oder apache braucht.
Danke Dir,
Viele Grüße
Ulf
Du hast recht: Seafile bringt seinen eigenen kleinen Webserver mit – seahub. Unter welchen Port man diesen startet definiert man über das Startscript (Standard ist, wie im Tutorial beschrieben, 8000). Ein „normaler Webserver“ wie nginx oder Apache2 läuft standardmäßig unter dem Port 80 bzw. Port 443 (SSL). Von dem her steht aus diesem Gesichtspunkt deiner Idee nichts im Wege. Musst nur sehen ob dir die Performance ausreicht 😉
Erst mal danke für das 1A Tutorial.
Ich hab jedoch noch eine Frage bezüglich der Sicherheit. Ist SSL standardmäßig aktiviert?
Nein. Für Seafile bzw. Seahub mit SSL muss anscheinend über einen dritten Webserver realisiert werden. Wie das geht wird im Wiki von Seafile beschrieben. Wobei ich nicht weiß, ob die Client-side AES encryption auch im Webinterface Client-side ist (sofern aktiviert). Falls ja, ist SSL nicht zwingend notwenig.
Hallo Jan,
tolle Anleitung- ohne SSL geht alles.
Um das SSL Feature einzubauen habe ich mal versucht – basierend auf Apache2 – gemäß des Wiki Eintrages (https://github.com/haiwen/seafile/wiki/Enable-Https-on-Seafile-web-with-Apache) beim voranzukommen.
Allerdings ergeben sich hier mehrere Fragen, vielleicht hast du Lust und Zeit dich dem anzunehmen, das würde mich sehr freuen.
Ich habe zunächst Apache (http://www.forum-raspberrypi.de/Thread-tutorial-raspberry-pi-als-webserver-apache-2-installation) und Seafile 2.0.3 (siehe Anleitung hier) aufgesetzt.
Ich denke der Anfang (a2enmod) ist noch ganz klar – bei der Begrifflichkeit „Apache configuration file“ geht’s aber schon los. Welche Datei ist damit gemeint? Die httpd.conf? Die apache2.conf? Ein Eintrag im Verzeichnis /etc/apache2/sites-available ?
Sollte dann die richtige Config Datei gefunden sein, ergeben sich weitere Fragen. Ist der Servername die interne Adresse + 8000’er Seafile Port? Mit https? Oder kommt hier der dynamic-Host hin, also z.B. 123. Dnsdynamic.com?
Ich denke die Pfad-Angaben der SSL Zertifikate ergeben sich aus dem Schritt „Generate SSL digital certificate with OpenSSL“. Die Rewrite-Engine empfinde ich als Noobie so intransparent, dass ich sie stehen gelassen habe.
Bei der CCNET Conf fehlt imo auch die exakte Pfadangabe, ich denke aber mal das ist /home/NUTZERNAME/ccnet. Hier wird auch wieder eine Angabe zu einem Server beschrieben- handelt es sich hier nur um das hinzufügen des „s“ bei http und … welcher Server muss hier (analog zur Apache Configuration) stehen?
Herzliche Grüße und allen Foren-Beteiligten einen guten Start in das neue Jahr.
Keine Bange, selbst wenn man mehrere Jahre mit der Rewrite-Engine arbeitet muss man einiges nachsehen und manchmal steht man wie ein Fragezeichen da. Da zur Einrichtung mit SSL noch weitere Schritte vor den im Wiki beschriebenen Einrichtung nötig sind ist macht es nicht all zu viel Sinn, dass ich dir deine Fragen im Konkreten beantworte. Habe mir aber SSL für Seafile mal auf die Todo-Liste geschrieben und hoffe bald dafür Zeit zu finden 😉
Oh schön, Danke für die Antwort.
So. Die Anleitung ist nun überarbeitet und um u.a. die Thematik SSL erweitert.
Ich hab die neue Anleitung gleich mal ausgeführt. Ich habe jedoch noch eine Frage zum erstellen SSL Zertifikat.
Sowohl der Browser als auch der Seafile Client meldet, dass das Zertifikat nicht vertrauenswürdig ist. Liegt das einfach nur daran, dass es selbst erstellt ist oder muss habe ich vielleicht etwas falsch gemacht?
Korrekt. Er meckert, da das SSL-Zertifikat selbst signiert ist. Habe ich nun auch noch in die Anleitung reingeschrieben.
Auch von mir besten Dank für deine verständliche und präzise Anleitung. Die Installation hat reibungslos funktioniert.
Hatte zuvor ownCloud auf meinem Pi ausprobiert und war von der schwachen Performance sehr enttäuscht. Wegen deines Hinweises in der ownCloud-Anleitung hier im Blog habe ich dann Seafile ausprobiert – und ich glaube auch ich habe hier meinen Favoriten gefunden!
Hallo,
erstmal vielen Dank für das Tutorial, deine Anleitungen gehören zu den brauchbarsten hier im Netz. So kann man auch als kompletter Neueinsteiger mit dem RaspPi was anfangen.
Ich habe meinen Server aufgesetzt und lasse das alles auf einem 16 GB USB stick syncen, den ich auch mit einer deiner Anleitungen gemountet habe.
Allerdings gibt es große Differenzen zwischen dem, was auf meinem Rechner liegt und dem, was ich in seafile per webinterface sehe. Die Statusleuchte des USB Stick blinkt unentwegt, aber so richtig scheint nichts zu synchronisieren, im Desktop-Client wird angezeigt, die letzte Sync sei 15 h her, obwohl ich seitdem mehrere Dateien verändert habe.
Weißt Du, ob es eine Möglichkeit gibt, die Aktivität des Pi anzuzeigen, ähnlich wie beim Windows Task Manager? Ich möchte wissen, ob er sich „tot läuft“ auf dem USB-Stick oder ob da echte readwrite-Aktivität herrscht.
Und wie ist die Performance von Seafile mit großen Bibliotheken und großen Dateien? Macht es Sinn, ne 500 GB Festplatte mit Fotos und solchen Sachen zu syncen oder ist da auf Dauer die Performance zu gering?
Vielen Dank und schönen Sonntag
joram
Also ich lasse, zwar auf meinem Cubieboard2 anstatt auf dem Raspberry Pi, rund 250 GB synchronisieren und das ohne Probleme. Du schriebst der Stick blinke andauernd. In meinen Augen ist das ein Zeichen, dass er ständig schreibt/ließt, was darauf hindeuten lässt, dass dieser für die eingehende bzw. ausgehende Datenmenge zu langsam ist. In Zahlen kannst du das mittels iotop aulesen.
Installieren:
sudo apt-get install iotop
Benutzen:
sudo iotop
Dort dann nach dem Seafile Prozessen suchen.
Hallo,
vielen dank erstmal für das Tutorial. Für jemanden, der noch nicht sehr viel Ahnung mit linux hat echt optimal.
Ich hätte da aber mal ein paar fragen:
Auf welchen Port muss ich weiterleiten, damit seafile auch von außerhalb erreichbar ist? Der Server läuft auf Port 10001, konnte die Android-App aber nicht verknüpfen.
Reicht es, wenn der Server und nicht das Webinterface läuft?
Und ist es möglich eine SSL verschlüsselte Verbindung aufzubauen?
Fragen über fragen…
Mach weiter so!
MfG
Für Linux Anfänger sind meine aktuellen Artikel auch gedacht 😉
Zu Ports: Findest du im Seafile Wiki.
Server/Webinterface: Server reicht. Webinterface ist optional.
SSL: Geht mit Nginx, ist aber nicht ganz easy. Erklärt wieder im Seafile Wiki.
Falls noch bedarf für SSL besteht: Jetzt auch hier im Tutorial erklärt!
Hi Jan,
noch eine Frage hätte ich:
Ist es möglich nachträglich einen USB-Stick als Speicherort für die Seafile-Daten (den „Inhalt“ der cloud) zu definieren? Ich habe momentan lediglich eine 16GB sd Karte drin.
Genügt es, wenn man in der „seafile.ini“ den Pfad zum mounted Laufwerk neu setzt? Ich habe in einem anderen Forum etwas über Probleme mit den Benutzerrechten in diesem Zusammenhang gelesen, hast Du mit dieser Prozedur Erfahrung?
Danke Dir,
Gruss
Wenn die Dateien/Ordner nach dem Umzug die selben Rechte wie zuvor haben sehe ich kein Problem. Aus dem Bauch raus würde ich tippen, dass die Änderung in der genannten Datei ausreichend ist.
wie muss diese Datei denn aussehen? bei mir ist sie nämlich leer.
Danke für Antworten
Kann ich dir auf die schnelle leider nicht beantworten, da ich gerade keine Testumgebung mit Seafile installiert habe.
Hallo,
also die Anleitung ist soweit super und ich kann nach jedem reboot auch den seafile server starten (v2.0.3)
wenn ich aber den reboot befehl in der crontap speicher und reboote startet dieser server kein einziges mal
folgendes steht bei mir drin:
@reboot /home/seafile/seafile-server-2.0.3/seafile.sh start
den pfad hab ich überprüft der stimmt soweit auch
Wenn ich aber mit dem pi user folgendes mache:
pi@raspberrypi /home/seafile/seafile-server-2.0.3 $ ./seafile.sh start
/home/seafile/ccnet/seafile.ini not found. Now quit
pi@raspberrypi /home/seafile/seafile-server-2.0.3 $
gebe ich aber dann sudo su ein und erneut ./seafile.sh start so startet dieser auch
wie kann ich denn da abhilfe schaffen das auch bei mir seafile automatisch startet.
Ansonsten wirklich ein super tutorial
Jack
Probier mal folgendes in die Crontab einzutragen:
@reboot sudo /home/seafile/seafile-server-2.0.3/seafile.sh start
Das kommt jetzt wohl ein wenig spät, aber:
Ich hatte genau das selbe Problem. Auslöser war, dass ich bei Schritt 15 nicht zurück zum für Seafile erstellten Benutzer wechselte (es sollen ja nur die Schritte 10-14 als „normaler“ Benutzer (pi) durchgeführt werden.
Trägt man die Befehle in dessen crontab ein, kommt genau dieser Fehler.
Trägt man die Befehle in die crontab des Seafile-Benutzers ein, funktioniert es.
Wollte den Port von der Weboberfäche (8000) ändern. Dachte mir der liegt in
/home/seafile/seafile-server-2.0.3/seahub.sh
Wenn ich mich aber versuche mit sudo su anzumelden
oder sudo nano /home/seafile/seafile-server-2.0.3/seahub.sh eingebe kommt
seafile is not in the sudoers file. This incident will be reported.
Was kann ich tun? Was bedeutet dies? Zur Info habe deine von dir dies hier befolgt
https://jankarres.de/2013/12/raspberry-pi-ssh-vor-angriffen-absichern/
Schonmal danke für die Hilfe im vorraus.
Zusammenfassung:
Wie kann ich mich mit sudo anmelden
Wie oder wo ändere ich den Port der Weboberfläche
ok hab das eine Problem selbst gelöst man muss sich mit Benutzer Pi bzw. den geänderten Namen anmelden und dann sudo ausführen
und Punkt zwei hab ich in der Datei gefunden und den Port 8000 geändert
Danach ins Verzeichnis
/home/seafile/seafile-server-2.0.3
wechseln und
./seahub.sh restart neu gewählter port angeben
fertig
Geht viel einfacher als du denkst. Anstatt
./seahub.sh start 8000
einfach z.B../seahub.sh start 1234
aufrufen 😉Hallo,
ich habe alle nach Anleitung gemacht aber wenn ich die Weboberfläche aufrufe kann ich mich nicht mit der e-Mail anmelden. Reboot des pi bringt nichts. auch das erneute ausführen des ./setup-seafile.sh mit neueingabe des Passworts bringt nichts. Hat irgendwer noch nen Tipp??
bei mir war es so, dass ich zuerst noch das seafile setup auf meinem pc installieren musste
Vielleicht hast du Seafile über eine am Raspi angeschlossene Tastatur installiert (und auch das Passwort gesetzt) und auf dem Computer auf dem du doch einloggen möchtest ein anderes Tastaturlayout?
Hallo Jan, also an den Tastarur Layout liegts nicht. ich hab das Passwort mal an die Email Adresse angehängt so das ich sehen konnte was dort geschrieben wurde. Das Passwort passt. ich hab auch das Setup nochmal und nochmal ausgeführt. Keine Besserung. Server vorher gestoppt und danach neu gestartet. Ohne Erfolg. Nur nochmal zum Verständniss ich muss mich doch mit der EMail und dem Password aus dem Setup auf der Weboberfläche anmelden können oder??
Vollkommen korrekt? Vielleicht hast du Sonderzeichen/Umlaute im Passwort/E-Mail Adresse die Probleme bereiten?
So hatte jetzt meinen USB Stick an den Pi angeschlossen und wie nach deinem (USB-Stick einbinden) tutotial eingerichtet. Wenn ich jetzt aber das seafile-setup starte und den speicherort bei /media/usbstick/seafile/seafile-data angebe, gibt er mir die Fehlermeldung „Permission denied“ aus. Mit sudo fragt er mich nach einem passwort, was er dann jedoch immer als falsch ablehnt.
Das sudo Passwort ist im Normalfall das Passwort deines Benutzers mit dem du gerade angemeldet bist. Jedoch wäre die galantere Lösung zu versuchen die Rechte der Ordner im USB-Stick richtig hinzubiegen (Schlagwort chown und fstab Konfigurationen)
Hatte Seafile vor ne Zeit instaliert aber nun möchte ich Ihn so langsam richtig nutzen.
Leider bekomme ich meine Daten auf dem Rechner nicht synchronisiert bzw Daten (auch von der Weboberfläche aus) hochgeladen
Woran kann das liegen?
an den ganzen Konfigurationen und ob du DynDNS-Namen oder IP Adressen eingetragen hast und ob du den eingebauten Webserver nutzt oder nicht 🙁
eigener webserver benutze ich. dyndns geht wobei auch von meinem internen netzwerk aus die probleme auftauchen
Puh… das kann an sehr vielem liegen. Am ehesten würde ich auf ein Rechteproblem tippen. Schau mal ob der Ordner bei der Seafile installation seafile-data/ existiert und beschreibbar ist.
existieren tut es
wie kann ich den sehen ob der Ordner auch beschreibbar ist?
Geh in das Verzeichnis indem der Ordner liegt und führe dort
ls -l
aus. Dann erhält du eine Ausgabe ähnlich folgender. Bei im Beispiel ocr_pi.png sind die Recht auf -rw-r–r– gesetzt. Was dieses kryptische Zeug dann bedeutet googelst mal selber, da das den Rahmen eines Kommentars sprengt 😉pi@raspberrypi ~ $ ls -l
total 2076
drwxr-xr-x 2 pi pi 4096 Sep 25 23:20 Desktop
-rw-r--r-- 1 pi pi 5781 Feb 3 2013 ocr_pi.png
ok wenn ich das nun alles richtig verstanden habe müste das richtig sein
rechte sind bei:
drwxr-xr-x
auser halt die seafile.conf und seafile.db stehen auf lesen nur -rw-r–r–
ausgeführt habe ich das ganze wo ich mit dem Benutzer seafile angemeldet war.
Dann müste das ganze wohl an was anderem liegen?
Sieht so aus… wobei ich nun leider nur noch ins blaue verschiedene Idee raten könnte. Vielleicht einfach Seafile neu installieren?
Hey ihr
Danke erstmal für das tolle Tut, doch leider funktioniert das nicht wirklich. Installation und start des Seafile Servers „von Hand“ auf der Konsole funktionieren prächtig. Nur der Cronjob will einfach nicht funktionieren. Habe alles probiert, was hier auch in den Comments steht, aber ser Server startet einfach nicht, beim Hochfahren.
Manchmal ist er auch nicht erreichbar. (Handy Samsung Galaxy S2 mit der App) Dann seh ich die Bibo nicht und kann demnach auch nicht zugreifen auf den Server. Laut ps aux ist er aber gestartet. Router Portweiterleitung und co sind eingerichtet. Wenn ich ihn auf der Konsole von Hand starte, funktioniert er ja auch. Nur nicht per Cronjob.
Wo liegt den der Crontab? Ist das normal, das er im tmp Ordner angelegt wird?
Wo liegt der Fehler?
Die Crontabs sollten in /var/spool/cron/crontabs/$user abgelegt sein ($user setzten durch den Benutzernamen). Leider habe ich jedoch auch spontan keine Idee woran deine konkrete Problematik liegen könnte.
Ich hab ja die Probleme mit dem synchronisieren.
Noch ne Frage bzw. Info. Vielleicht liegt es ja daran.
Ich habe den Standardport in seahub.sh im editor geändert.
Kanns daran liegen bzw. muss man vielleicht wo anders auch noch einen anderen Port eintragen?
Hast du auch die geänderten Ports freigegeben?
Tolle Anleitung – vielen Dank. Ich habe jetzt durch einen zweiten Durchlauf den Pfad für die Dateien geändert und neue Dateien über den PC gesynct. Ich sehe die Dateien in der Weboberfläche – hat also geklappt. Kann ich irgendwo sehen wo im Dateisystem die Dateien jetzt wirklich liegen? Es sieht so aus als wenn im neuen Verzeichnis nur eine seafile.conf liegt… Danke!
Nope. Die Dateien werden in einem Git Repository auf dem Raspberry Pi (falls aktiviert sogar verschlüsselt) abgelegt, sodass es keines einfachen Ordner gibt, sondern man den Seafile Client verwenden muss.
Hallo Jan,
vielen Dank für das super klare und einfach zu befolgende Tutorial!
Ich hab gerade die Anleitung (ohne DynDNS oder SSL) durchgemacht.
Stecken bleibe ich bei Step 13: Ich scheitere am Login des Webclients. Der Client behauptet, die Logindaten wären falsch. Dasselbe nach einem zweiten Durchlauf des Setup, um sicher zu gehen, dass ich mich bei den Logindaten nicht vertue.
Hast du einen Tipp für mich?
Danke!
Hast du vielleicht Seafile mit einer angesteckten Tastatur direkt am Raspberry Pi installiert (dabei das Passwort definiert) und versuchst dich nun über einen anderen Rechner einzuloggen? Falls ja könnte ich mir vorstellen, dass es zwei verschiedene Tastaturlayouts sind und folglich du am Raspberry Pi ein anderes Passwort als erwartet definierst. Tipp: Installiere über SSH.
Vielen Dank für die Antwort. Ich hatte beide Installationen / Setups per SSH gemacht und das Weblogin von demselben Rechner probiert. Am Tastaturlayout liegt es offenbar nicht. Das Passwort selber habe ich überprüft. Ich glaub, ich setze den Pi noch mal komplett neu auf.
@RETTSAN78 Hast du inzwischen eine Lösung?
Hallo,
ich habe exakt das gleiche Problem, auch über SSH installiert und sicher kein Fehler in der email-Adresse oder dem Password. Ich frage mich, ob sich eine Neuinstallation lohnt. Ich hatte mit komplett neu aufgesetzten System angefangen.Kann man das admin password irgendwo in einem config-file ändern?
Herzlichen Dank
Gruß
Dirk
Im Ordner seafile-server gibt es eine Datei namens reset-admin.sh. Wenn du diese ausführst kannst du die Zugangsdaten zurücksetzen lassen.
Hallo Jan
Diese Idee hatte ich auch verfolgt. in der Anleitung wird es auch beschrieben.
http://manual.seafile.com/maintain/account.html
Nur, bei mir funktioniert das nicht.
Nach der Befehlseingabe — sh reset-admin.sh — erscheint folgende Meldung:
— sh reset-admin.sh
reset-admin.sh: 9: reset-admin.sh: Syntax error: „(“ unexpected —
und ich kann keinen Reset durchführen. Wie komme ich jetzt weiter? Kannst Du mir weiterhelfen?
Vielen Dank
Jens
Guten Tag Jan
Vielen Dank für das präzise und kompetente Tutorial.
Deine Site finde ich Klasse.
Ich habe den Seafile Server ohne Probleme auf einem Cubietruck mit SSL installiert.
Gruss Martin
Das klingt doch super 🙂
Hallo Jan,
deine Anleitungen sind für einen Neuling wie mich traumhaft. Linux ist für mich eine völlig neue Welt. Daher auch eine Frage zu Seafile: Kann man damit auch einen Kalender- bzw. Kontakt-Synchronisation integrieren ?
Schön zu lesen, dass es die Zielgruppe getroffen hat.
Zur Frage: Nein, Seafile bietet mommentan keine Kalender- oder Kontaktverwaltung an.
Hallo Jan,
ich habe die Anleitung inkl. ssl ausgeführt und stolpere noch über eine Kleinigkeit.
Ich komme von Aussen auf den Seahub und schaue mir eine Bibliothek an:
Pfad: https://test.no-ip.biz:8001/repo/a2e500fe-1944-423e-8f86-7cbe07a94321/
Wenn ich jetzt aber eine Datei downloaden möchte spring er auf den Port 8082, denn hab ich mit ssl natürlich nicht freigeben und so sehe ich nur einen Ladefehler
http://test.no-ip.biz:8082/files/b88a4a13/Bild.jpg
Hast du eine Ahnung was ich falsch gemacht habe? Auffällig ist das er von https auf http springt. Ein Hochladen von Daten über den Seahub funktioniert auch nicht.
Danke im Vorraus Martin
Habe das Tutorial noch einmal etwas angepasst. Versuch doch die aktuelle Step 7 und Step 8 noch mal ausführen und schau mal ob das Abhilfe schafft.
Hallo Jan,
(mit SSL-Lösung)
Habe es mir eben auch mal angesehen. Der Download Dialog überhaupt kommt erst beim Port-Forwarding mit 8082.
Bei einem Test zum Download: Der Hover Link zum Download ist HTTPS, die URL von außen ist HTTP.
Beim Upload einer Datei erscheint:
Fehler: [Exception… „“ nsresult: „0x805e0006 ()“ location: „JS frame :: https://MEINE_DYN_DNS_DOMAIN:8001/media/js/jq.min.js?t=15555555 :: .send :: line 4″ data: no]
Just for info: Die Funktionsfähigkeit der Weboberfläche von außen scheint mir bei Nicht-Freigabe der Ports 10001
& 12001 nicht beeinträchtigt.
Danke für das tolle Tutorial, läuft alles bestens. Nur eine kleine Frage: Wenn ich von außen auf Seahub zugreife und eine Datei runterlade, wird die richtige URL : https://test.no-ip.biz:8001/repo/a2e500fe-/xyz.pdf erzeugt. Will ich allerdings einen „Share Link“ erzeugen, wird ein Link mit meiner internen IP erzeugt: https://192.168.178.12:8001/repo/a2e500fe-/xyz.pdf . Woran liegt das?
Da das Problem öfter auftreten kann habe ich im Tutorial ergänzt. Step 7 und 8 einfach noch einmal ausführen!
Ok ich habe es selbst herausgefunden, meine Ports waren noch nicht offen =)
Jetzt hätte ich aber andere Fragen undzwar.
Ich möchte natürlich auch von z.B. meinen Handy darauf zugreifen können, kann man die 8001 irgendwie ich sage mal entferenn so das man nur die Domain eingeben muss?
Und kann man den Client auch direkt auf den Raspberry installieren, weil ohne geht ja weder Upload noch Download.
Hallo, Danke auch für die SSL Ergänzung. Via Web-Frontend klappt alles. Der Client für Windows sync auch fleissig. Nur via Android App scheitert schon die erste Anmeldung: Die App stürzt bei der Eingabe der URL ab. Welche Variante klappt bei euch?
(mit/ohne Kreuz bei https)
sub.dynadresse.com:8001
https://sub.dynadresse.com:8001
http://sub.dynadresse.com:8001
sub.dynadresse.com
https://sub.dynadresse.com
http://sub.dynadresse.com
und dann gäbe es ja noch die Möglichkeit überall ein www mal auszuprobieren, und mal nicht.
Viele Grüße!
Hallo
ich stecke bei Punkt 10 fest
wenn ich die folgenden Befehle als root ausführe
root@raspberry-pi:/etc/nginx/ssl# openssl genrsa -out seahub.key 2048
kommt bei mir Meldung
-bash: openssl: command not found
bei den Befehlen
openssl req -new -key seahub.key -out seahub.csr
openssl x509 -req -days 3650 -in seahub.csr -signkey
ist es das gleiche
was mache ich den falsch?
Du musst OpenSSL installieren. Bei den meisten Distributionen ist das schon installiert – bei dir anscheinend nicht.
sudo apt-get install openssl
Hey, bei mir kommt das an folgender Stelle:
/etc/nginx/ssl $ seahub.key -out seahub.crt
-bash: seahub.key: command not found
Woran könnte das liegen?
Wenn ich das als Root ausführe kommt folgende Meldung:
:/etc/nginx/ssl# ./seahub.key -out seahub.crt bash: ./seahub.key: Permission denied
Hallo Jan,
ich stoße bei der Installation auf Step 3
……..Nach dem ersten Kommando muss man ein Passwort für den Benutzer definieren. Dieses sollte möglichst stark sein……
Wenn ich die Kommandos wie in Step 3 und auch so in der Reihenfolge eingebe, kommt keine Möglichkeit um ein Passwort zu definieren.
Was mache ich falsch ?
Kann ich das Passwort nachträglich definieren ?
Gruß Andreas
@Andreas:
Bei Step 3 einfach „sudo adduser seafile“ anstatt „sudo adduser seafile –disabled-password“ ausführen, dann wird nach einem Passwort verlangt. Mit dem Argument „–disabled-password“ wird wie eigentlich leicht erkennbar kein Passwort für den Benutzer verlangt. Warum das bei Step 3 so aufgeführt ist, darüber aber steht, dass ein möglichst starkes Passwort gewählt werden soll weiß ich auch nicht.
Falls der Benutzer schon erstellt wurde kann das Passwort mit dem Befehl „passwd“ (wenn man als seafile eingeloggt ist) bzw. mit „sudo passwd seafile“ (wenn man als pi eingeloggt ist) geändert werden.
Ich hoffe das hilft dir weiter.
Gruß Simon
Danke, Simon
Da ich ein absoluter Anfänger in Sachen Linux / Debian bin, ist mir das manchmal nicht so klar. Ich werde bestimmt noch einige komische Fragen stellen.
Gruß Andreas
Das war noch aus einer alten Version des Tutorials. Habe ich beim Überarbeiten wohl übersehen. Nun aber ist es entsprechend abgeändert. Danke für den Hinweis!
Hallo,
vielen Dank für die tolle Anleitung – funktioniert soweit super!
Ich habe aber eine Frage: Wo werden denn die Dateien im „seafile-data“ gespeichert?
Testweise habe ich einmal ein Foto hochgeladen, finde es in diesem Verzeichnis aber nirgends.
Vielen Dank im Voraus!
Gruß Simon
Die Datei als Solches wirst du dort nicht finden, da Seafile auf Git basiert. Folglich liegt die Datei in einem nicht ausgecheckten Git Repository und, wenn die Verschlüsselung aktiviert ist, auch noch verschlüsselt.
Schön das du die Anleitung abgeändert hast mit Verschlüsselung.
Step 17 must du noch abändern in dem was du in Step 8 gesagt hast oder nicht?
/home/seafile/seafile-server/seahub.sh start-fastcgi
Vielleicht kannst du zur Info auch noch erwähen wie man das webinterface started?
Dachte das hattest du schonmal nur sehe ich es jetzt nicht mehr in der Anleitung.
Danke, das mit SSL habe ich noch ergänzt. Wie man das Webinterface mit SSL aufruft findest du in Step 14.
Hallo, ich hänge gerade in der Installation fest und brauche Hilfe zu Step 17:
1. Unter welchem User wird der crontab -e gemacht ?? Ich habe gelesen, dass es nicht der root-User ist, mir ist aber nicht klar, ob es dann pi-User oder seafile-User ist ? Muss ich bei diesem User dann auch in ein bestimmtes Verzeichnis rein ?? Wenn ja, welches und wie ??
2. Die einzufügende Zeile Step 17 wird von Jan benannt. Der Ordnername ist anzupassen, falls ich eine neuere Version habe. Die Zeile von Jan führt aber nirgendwo eine Version: @reboot /home/seafile/seafile-server/seafile.sh start
Kommt da jetzt noch die Version von seafile rein und heißt dann eventuell:
@reboot /home/seafile/seafile-server-2.1.3/seafile.sh start
oder nicht ??
Gruß Andreas
zu 1. wird von user seafile ausgeführt soviel ich weis
einfach eingeben den befehl
zu 2. ja kann sein das da ne versionsnummer dann steht und man eingeben muss
einfach unter cd /home/seafile/ gehen und mit ls die verteichnisse auflisten und schauen wie der ordner benannt ist
Zu 1: Im Ablauf der Anleitung, folglich den Seafile Benutzer.
Zu 2: In Step 5 benennen wir den Ordner um. Wenn du das nicht gemacht hast musst du natürlich die Versionsnummer an der beschriebenen Stelle hinzufügen.
Danke für die Hilfe, es läuft und funktioniert.
Andreas
Habe soweit alles eingerichtet.
Außerdem habe ich die Mailkonfiguration eingestellt, wie hier beschrieben:
http://www.nerd.junetz.de/blogbox/index.php?/archives/1323-Seafile-auf-dem-Raspberry-Pi-Setup-und-Betrieb-mit-Huerden.html
Anfangs hat alles funktioniert. Nur leider scheint mittlerweile der Download & Upload aus dem Webinterface sowie der Android App nicht zu funktionieren.
Ich sehe die verschiedenen Dateien im Web-Interface, aber wenn ich auf Herunterladen klicke bekomme ich folgende Fehlermeldung:
„Es tut uns leid, aber die angefragte Seite wurde nicht gefunden.“
Wenn ich in der Android App etwas herunterladen möchte kommt die Fehlermeldung „The file … has been deleted“. Der Upload klappt auch nicht über Webinterface und Android App.
Hast du eine Idee woran das liegen könnte? Port-Forwarding habe ich eigentlich wie beschrieben für SSL eingerichtet.
Gruß Thomas
Ok, hab den Fehler gefunden und behoben:
Es lag am Eintrag HTTP_SERVER_ROOT in der seahub_settings.py.
Ich habe diesen Eitnrag einfach entfernt, danach klappt es. Warum auch immer, denn eigentlich waren URL und Port richtig eingetragen.
Danke für die tolle Anleitung! 🙂
Mein ursprünglicher Eintrag der Variablen HTTP_SERVER_ROOT in seahub_settings.py verursachte einen Fehler im Browser:
HTTP_SERVER_ROOT = „https:///seafhttp“
Das Entfernen des Eintrags war aber nicht erfolgreich, ich bekam dann bei up- und downloads weiterhin den Fehler (Seite nicht verfügbar oder so ähnlich).
Behoben ist das Problem seit in der seahub_settings.py folgendes steht:
HTTP_SERVER_ROOT = „https://:/seafhttp“
Damit entspricht dieser Wert der Variablen SERIVICE_URL aus der ccnet.conf plus „/seafhttp“. Die location „/seafhttp“ wurde ja in Schritt 11 konfiguriert.
…vielleicht hilft es jemandem der ebenfalls durch verschiedene Tutorials den Überblick verloren hat. Mir ist dabei der fehlende Port verborgen geblieben…
Übrigens ein Klasse Howto! Mein PI und ich sagen danke 🙂
Stefan
…da wurden wohl meine Platzhalter entfernt?! Folgendes sollte eigentlich in den Variablen stehen:
Fehlerhaft: HTTP_SERVER_ROOT = “https://meineDomain/seafhttp
Korrekt: HTTP_SERVER_ROOT = “https://meineDomain:Port/seafhttp
hm… portfreigaben da, HTTP Server Root auch wie angegeben… aber Android meldet nur Fehler beim Download. Der PC-CLient geht allerdings
Das sollte nun aber ein Problem deinerseits sein, da ich es inzwischen Produktiv im Einsatz nach der Anleitung habe – ohne Probleme.
Hi Tom,
danke für den Hinweis. Ich hatte das selbe Problem: Dateien konnten weder im Web noch über Android hoch- oder runtergeladen werden. Sync über Windows hat aber funktioniert. Wo da der Fehler liegt, keine Ahnung, hab viel gesucht aber sonst nichts gefunden. Tutorial habe ich zwei mal komplett gelesen und alles beachtet. Ich wäre niemals auf die Idee gekommen die Zeile einfach zu löschen, jetzt funktioniert alles.
Bist du sicher, dass auch das Verzeichnis „/seafhttp“ hinter dem Port angegeben war (Schritt 8)? Das hatte ich nämlich mal vergessen und das selbe Fehlverhalten.
Ja das war definitiv drin, hat aber nicht geholfen. Ich habe nur eben gemerkt dass ich keine Bilder im Webinterface öffnen konnte (Fehler war ganz grob „bad database“) – habe also eine neue Library angelegt und nochmal synchronisiert, jetzt funktioniert alles wunderbar.
Ich schau mir kommende Woche den Artikel noch einmal an, da dieses Problem wohl mehrere bei Seafile mit SSL haben.
Es hat ein Port zur Freigabe gefehlt. Habe den Artikel entsprechend überarbeitet.
Hallo Jan,
ich habe seafile installiert und SSL eingerichtet, ich komme auf den Server, aber mein erstes admin log-in klappt nicht, es heisst immer, email oder password seien falsch. Ich habe einen blog von Leuten mit dem gleichen Problem nach Installation nach Deiner Anleitung gefunden:
https://groups.google.com/forum/#!msg/seafile/lufKQJl-dNM/eLrm3evGqM4J
Gibt es da einen Trick? Kann man das Skript „reset-admin.sh“ ausführen?
Herzlichen Dank
Gruß Dirk
Hallo,
vielen Dank für die tolle Anleitung. Einige Probleme scheinen noch bei seafile selbst zu liegen.
Das Problem mit der Fehlermeldung „email-Adresse/password nicht korrekt“ beim ersten Enloggen mit der admin-email-Adresse liegt möglicherweise an der .de toplevel domain-Endung der email. Zumindest konnte ich mich weder mit noch ohne ssl über meine .de email-Adresse einloggen (obwohl RaspberryPi nochmal neu aufgesetzt, password korrekt). Ich habe es dann mit einer .net email-Adresse versucht und es kappt wunderbar, auch über ssl mit dyndns.
Übrigens, für den Android client muss für ssl im Router auch der port 8082 geforwardet werden, sonst sieht man die Dateien nur, kann sie aber nicht bearbeiten/runterladen.
Gruß Dirk
Klingt strange, aber okay. Werde ich mir die Frage noch mal im Konkreten ansehen.
Das Script reset-admin.sh solltest du ausführen können und damit die vergessenen Zugangsdaten zurücksetzen können.
Hi Jan,
danke für die Anleitung. Ich hatte es zuerst auf meinem Raspberry Pi bzw. SD Karte ohne ssl eingerichtet und war begeistert wir performant das ganze im Vergleich zu mein Owncloud läuft. Also wollte ich das ganze auch mit ssl und dyn-dns haben. Nun bekomme ich nach dem Durchführen deiner Anleitung aber nur einen „Welcome to nginx“ Screen gezeigt. Bei einem internen Ansprechen mit der der IP des Rpi’s. Über DNS komme ich gar nicht rein. Portforwarding kann ja erst einmal nicht das Thema sein, da ich ja auch „intern“ nicht drauf komme. Was meinst du wo hakt es?
Grüße
cabby
Edith ruft gerade in den Raum: Ich bin alle Schritte bis 6 nochmals durchgegangen. Nun bekomme ich den Seafileserver über:
http://IP:8000/ Aber das war ja nicht Sinn der Sache. Ich würde gerne über den dyn-dns drauf.
Habe leider das gleiche Problem, mit der internen IP komme ich drauf, (Problem zusätzlich = es werden keine Bilder angezeigt, Formatierung von Seafile alles links am Bildschirmrand) und über mein no-ip ohne Port komme ich nur auf „Welcome to Nginx“ mit Port „Webseite nicht verfügbar“. Hat jemand eine Ahnung wie ich das beheben kann?
Dann musst du noch die entsprechenden Ports (siehe Anleitung) in deinem Router freigeben.
Ich tippe drauf, dass du die Sites Config von Nginx für Seafile nicht ordentlich eingerichtet hast.
Hey Jan,
bin schon seit Monaten begeisterter Leser Deines Blogs – Weiter so!
Seafile läuft seit 2 Monaten stabil (Sync mit 3 PCs, knapp 20 GB auf externer HDD an RPi). Ich habe allerdings eine Verständnisfrage:
Durch die Verschlüsselung auf dem Seafile-Client vor dem Upload kann ich mir die SSL-Verbindung doch eingentlich sparen, oder?
Viele Grüße,
Michi
Vom Grundgedanken her schon richtig, aber trotzdem falsch. Die Verschlüsselung ist nur clientseitig wenn man den Sync-Client verwendet. Nutzt man hingegen das Webinterface so lädt man die Dateien unverschlüsselt. Ganz davon abgesehen, dass auch die Anmeldung im Webinterface ohne SSL unverschlüsselt abläuft. Daher ist SSL an dieser stelle schon empfehlenswert.
ich habe lange gesucht (Linux-Anfänger) warum Seafile (V. 2.1.3) nach einem Reboot nicht mehr startet. Ganz einfach, weil der Pfad in der Version 2.1.3 /home/seafile/seafile-server-latest/
lautet.
Also einfach:
crontab -e
hier dies eintragen:
@reboot /home/seafile/seafile-server-*/seafile.sh start
@reboot /home/seafile/seafile-server-*/seahub.sh start 8000
Damit habe ich keine Probleme mehr. Könnte man ja in der Anleitung ändern 😉
Die Beschreibung ist sonst super gemacht.
Dankeschön
mit
@reboot /home/seafile/seafile-server-*/seafile.sh start
@reboot /home/seafile/seafile-server-*/seahub.sh start 8000
in der crontab -e, wollte Seafile mal starten und mal nicht.
Nachdem ich es zu
@reboot /home/seafile/seafile-server-latest/seafile.sh start
@reboot /home/seafile/seafile-server-latest/seahub.sh start 8000
geändert hatte, startet Seafile endlich zuverlässig.
Du hast das Umbenennen in Step 5 (mv) wohl nicht gemacht. Daher stimmt die Anleitung prinzipiell schon.
Vielen Dank für diesen klasse Beitrag!
Eventuell kannst Du zu Step 11 ja noch angeben, dass der Pfad zum Seafile-Server ggf. auch in der ngix-Konfiguration (unter „location /media“) je nach Installation angepasst werden muss.
Ein falscher Pfad führte bei mir dazu, dass die CSS-Files nicht richtig geladen wurden und das Web-Interface wirklich fürchterlich ausschaute.
Muss eigentlich nicht angepasst werden. Sollte auch so einwandfrei funktionieren…
Ich habe nun auch seafile am laufen. Allerdings ohne nginx. Das automatische starten von seafile und seahuib funktioniert leider nicht wenn ich folgendes eintrage:
@reboot /home/seafile/seafile-server-2.1.3/seafile.sh start
@reboot /home/seafile/seafile-server-2.1.3/seahub.sh start 8000
Wenn ich dann den Rapsberry Pi neu starte startet Seafile nicht mit. 🙁 Jemand noch eine Idee?
In Step 5 hast du den Ordner seafile-server-2.1.3 in seafile-server umbenannt (mv). Daher verwende den in Step 17 beschriebenen Autostart.
Hallo Jan,
Vielleicht kannst du bei Gelegenheit noch WebDAV (mit SSL) hinzufügen?
Das bekomme ich nicht hin und finde das eigentlich ganz spannend und nützlich…Ohne SSL ist es ziemlich einfach – mit SSL und ensprechender nginx Konfiguration ist zu hoch für mich.
schöne Grüße
Mit der Einrichtung von SSL sollte das schon getan sein. Anstatt dav:// musst du lediglich davs:// verwenden 😉
Hallo Jan, mir würdest du auch aus einer hoffnungslosen Lage helfen, wenn du den webdav Bereich erklärst.
Hallo Jan, ich stehe gerade vor dem gleichen Problem, dass ich webdav nicht zum Laufen bekomme. Wurde das denn nun irgendwo geklärt oder könntest Du mir kurz eine Hilfestellung geben, was man denn noch machen muss, damit es funktioniert. Mit der Standardanleitung von Seafile komme ich da nicht weiter.
Danke und Gruß, Jörg
Hallo Jan!
wenn ich „./setup-seafile.sh“ ausühre sagt er nur Error occured during setup, pls fix possible issues and run the script again!
ich bin auf dem seafile user w/o password.
was mach ich falsch? hab schon mal mit root user probiert. da läuft zwar alles glatt durch bis zum ende. Dennoch kann ich seafile erst nicht über dem Browser aufrufen so wie in Step 14 erklärt wird. Hatte dannach den PI zurückgesetzt und alles von vorn begonnen. (d.h. 3 versuche insgesamt)
Hast du denn in Step 2 alle Pakete installiert? Wäre so meine einzige Idee…
Hallo Jan,
ein ganz großes Lob auch von meiner Seite, genau so sollen Tutorials sein, mach weiter so! 🙂
Eine kleine Anmerkung noch (hab in den Kommentaren noch nichts dazu gefunden, anscheinend nutzt die Mehrheit kein SSL):
Im letzten Step 17 unterscheidest du beim seafile.sh Start zwischen nicht SSL und SSL (d.h. den Parametern start und start-fastcgi), das spielt IMHO aber nur für den seaHUB eine Rolle und dummerweise funktioniert start-fastcgi beim seafile.sh nicht mal, da nur start und stop und restart im script behandelt werden 😉
Außerdem fände ich es schon gut, wenn du den seahub.sh (dieses mal mit und ohne SSL 😉 ) in den letzten Schritt aufnimmst (zumindest optional), ich glaube, dass viele Leute schon Wert auf das Webinterface legen, zumal da ja auch kräftig dran entwickelt wird 🙂
Also nochmal vielen dank und ich freue mich schon auf das nächste Tutorial (kleine Anregung: Habe gerade hdparm für die Festplatte am raspi eingerichtet, dass das Ding nicht 24/7 läuft; das (oder auch mounten im allgemeinen) wäre doch n nettes Thema 😉 )
Gruß Patrick
Genau an diesem Punkt verzweifle ich gerade, durch den crontab reboot befehl scheint seafile gar nicht erst zu starten, zumindest kann ich keine Dateien über die Android App hochladen.
Wie lautet denn nun der korrekte reboot befehl um seafile zu starten und z.b. mit meinem Android Client zu verwenden? Das Web Interface sollte dafür ja nicht benötigt werden.
@reboot /home/seafile/seafile-server/seafile.sh start
Ist dadurch nicht die SSL Verschlüsselung zwischen dem Android Client und dem Seafile Server gegeben, oder bezieht sich die SSL Verschlüsselung immer nur auf das Webinterface des NGINX Webservers?
Sollte SSL nur in Verbindung mit dem Webinterface funktionieren wäre es bezüglich Datenschutz auf jedenfall ratsam immer in den verschlüsselten Ordner zu schreiben.
@Android App: Benötigt die Android app seahub? Irgendwie scheint nämlich trotz manuellen starts von seafile kein Up/Download möglich zu sein, ohne das seahub dazu gestartet wird.
Habe das Tutorial entsprechend Patricks Kommentar verbessert. Damit sollten sich auch deine Probleme lösen.
Habe ich verbessert. Danke! Und auch Seahub wird nun standardmäßig gestartet. Inzwischen ist das ja auch ansehnlich 😉
Ich hänge fast an dem selben Punkt. Das mit crontab -e und dem Befehl funktioniert nicht. Auch wenn ich den Befehl ( /home/seafile/seafile-server/seafile.sh start -fastcgi) selbst eingebe, geht es nicht.
Was aber funktioniert, ist folgendes:
als benutzer „pi“ anmelden und dann folgendes eintippen
sudo su seafile
cd /home/seafile/seafile-server
./seafile.sh start
./seahub.sh start-fastcgi 8000
Dann komme ich mit iPad und Android Smartphone mit der App auf den raspberry, ebenso wie über den Browser am PC.
Wieso ich hier den 8000er Port eingeben muss, obwohl ich eigentlich mit SSL arbeite weiß ich leider noch nicht. In der fritzbox ist der 8000er auch nicht freigegeben, wird wohl irgendwo ein Fehler in der config sein?!
Wäre super, wenn du das mit dem crontab nochmal genauer erklären könntest.
@PHUX: ich komme via Android nur drauf, wenn ich seafile.sh und seahub.sh starte.
Danke für deine Antwort!
Meines Erachtens hatte ich alles richtig gemacht. Aber als ich nochmal neu angefangen hatte ist alles glatt durchgelaufen. Musste also irgendetwas übersehen haben. Im Heimnetzwerk funktioniert jetzt alles, werde mich im laufe der Woche aber noch an das DynDNS einrichten wagen.
Br
[…] Raspberry Pi: Owncloud-Alternative Seafile Server installieren » Jan Karres. […]
Aus irgendeinem Grund weicht bei mir die Änderungszeit der Dateien ab. Scheinbar geht die Uhr in Seafile um 7 Stunden vor.
Die Uhrzeit im Raspian passt aber.
Es schaut so aus als wäre die falsche Zeitzone eingestellt.
Kann man diese in Seafile anpassen?
Danke
Habs eben selbst rausgefunden.
Die Datei seahub_settings.py benötigt folgenden Eintrag:
TIME_ZONE = ‚Europe/Berlin‘
[…] “Raspbian” und das Aufsetzen des Seafile-Servers war dank der diversen Tutorials von Jan Karres und monoxyd kein Problem. Aber auch hier steckte der Teufel im Detail. Es war tatsächlich eine […]
Jetzt habe ich doch noch eine Frage, die mit der Funktionsweise von Seafile zu tun hat.Ist es mit Seafile möglich einen beliebigen Ordner auf zwei PC’s zu sychronisieren?Beispiel:Ich möchte die Eigenen Dokumente auf zwei PC’s synchron halten.Bei dem ersten PC ist es ja kein Problem.Ich wähle den Ordner aus und er wird in Seafile geladen.Doch wie sage ich Seafile das er diese Dateien mt den Eigenen Dateien auf dem zweiten Rechner abgleichen soll?Bisher verwende ich den Clouddienst Cubby.Mit diesem ist das ganz simpel zu bewerkstelligen, nur habe ich bei Seafile noch keine Möglichkeit gefunden.Vielleicht kannst du mir weiterhelfen.Danke.
Für alle die genauso dumm sind wie ich und sich gefragt haben wie man die Synchronisation von zwei Rechner einrichtet.
Zunächst läd man einen Ordner vom Rechner 1 ind die Cloud.
Dann geht man in den Client von Rechner 2 und klickt auf die gerade hochgeladene Bibliothek, mit der rechten Maustaste auf „herunterladen“ und wählt aus „mit existierenden Ordner synchronisieren“.
Dort wählt man dann z.B die Eigenen Dokumente von Rechner 2 aus.
Und fertig.
Nun werden beide Rechner stehts synchron gehalten.
War ein bisschen eine umstellung zu chubby. Aber wenn man weiß wie es geht ist es easy.
Vielen Dank für die tolle Anleitung. So war es super einfach für mich Seafile auf meinem Pi zu installieren.
Als ich jetzt mal von außen per Web-Oberfläche auf meinen Seafile-Server zugegriffen habe, musste ich aber feststellen, dass Teile der Daten unverschlüsselt übertragen werden – nämlich genau die Daten, die ich in mein Seafile-Ordner gepackt habe.
Die Anleitung auf https://github.com/haiwen/seafile/wiki/Enable-Https-on-Seafile-web-with-nginx sichert auch diesen Kommunikationskanal ab. Ich würde mich freuen, wenn du die Anleitung entsprechend anpassen könntest. Wenn du möchtest, helfe ich dir auch gern dabei.
Grüße
Gregor
Ich glaube, alles was zum Glück fehlt ist das folgende:
In der seahub_settings.py die folgende Zeile hinzufügen:
HTTP_SERVER_ROOT = ‚https://www.yourdomain.com/seafhttp‘
Und dann braucht man im Router nur noch die folgenden Ports freischalten:
8001, 10001, 12001
Danke für den Hinweis. Werde ich bei Zeiten noch ergänzen 😉
So. Ist überarbeitet.
Hallo zusammen,
dankeschön (für’s Tutorial und den Kommentar)! Der abgeänderte Porteintrag (ohne Port 8001 in der HTTP_SERVER_ROOT) hat bei mir ein Problem mit dem ngix gelöst, da dieser beim Starten immer den Fehler „[emerg]: bind() to 0.0.0.0:8001“ ausgelöst hatte.
Nachdem ich dies geändert hatte und den ngix, sowie seafile und seahub neu gestartet hatte, hat alles bestens funktioniert …
Aber, nun habe ich das Problem, dass nach einem Reboot der ngix nicht wirklich reagiert (keine Response im Browser) und sowohl der seafile, als auch der seahub Server manuell gestartet werden müssen. Die Crontab Einträge unter dem User seafile habe ich drin und sie verweisen auf die richtigen Stellen.
Wenn ich sie in folgender Reihenfolge starte ist alles sauber:
1. ngix Server (als User pi)
2. seafile (als User seafile)
3. seahub-fastcgi (als User seafile)
Habt Ihr eine Idee, wie ich den Autostart nun noch vernünftig hinbekomme?
Danke und schöne Grüße
Sascha
Reihenfolge sieht gut aus. Was sagt den die Prozessliste nach dem Start (Befehl: ps aux). Läuft dort denn nginx, seafile oder seahub? Je nachdem was läuft bzw. nicht läuft kann man weiter sehen.
Hallo Jan,
danke für die Antwort. Unmittelbar nach Reboot sind weder ngix noch seafile/ seahub gestartet. Nach einer gewissen Zeit startet aber des seafile/ seahub automatisch, was mir vorher nicht aufgefallen ist. Das würde bedeuten, dass ich erst einmal nur das Problem habe, dass der ngix nicht automatisch startet. Er müsste m.E. auf jeden Fall vor dem seafile/ seahub starten, damit es keinen Port Konflikt gibt, das Binding Problem beim ngix besteht nämlich aktuell dann doch weiterhin, wenn der seafile/ seahub schon läuft.
Hast Du eine Idee?
Hallo zusammen,
habe nun noch ein wenig selber probiert, kann leider die wirkliche Ursache nicht mehr genau bestimmen, aber sagen, dass die Wirkung unverändert ist. nichtsdestotrotz beschreibe ich mal, was ich gemacht habe:
1. Startscript aus dem nginx Tutorial installiert. Dieses hatte ich zuvor nicht dabei, da ich dachte, es wird nur benötigt, wenn man die Ruby on nails Erweiterung braucht. Nach ein wenig Nachdenken klang es aber hilfreich 😉 – Nachdem ich das Startscript installiert hatte, konnte ich den nginx Server aber garnicht mehr starten. Es erfolgte keinerlei Output nach dem Restart /etc/init.d/nginx start.
2. Irgendwann hatte ich mir das Startscript zerschossen und es war leer, so dass ich dieses mit diesem Script (http://pastebin.com/dUrusNTt#) wieder hergestellt habe.
=> Nun ist es mir möglich den Server wieder manuell zu stoppen, starten etc.
=> Mein Autostart Problem ist leider nicht gelöst, d.h., wenn ich den RPi neu boote wird der nginx Sevrer nicht gestartet.
Folgendes habe ich dann versucht:
a) crontab -e (im User Pi) und folgende Zeile ergänzt:
@reboot /etc/init.d/nginx start => ohne Wirkung
b) crontab -e (im User Pi) und folgende Zeile ergänzt:
@reboot sudo /etc/init.d/nginx start => ohne Wirkung
c) sudo crontab -e und folgende Zeile ergänzt:
@reboot /etc/init.d/nginx start => ohne Wirkung
c) sudo crontab -e und folgende Zeile ergänzt:
@reboot pi /etc/init.d/nginx start => ohne Wirkung
Habe leider aktuell keine weiteren Ideen, woran es liegen könnte. Versuche mich gleich noch durch logs zu wühlen … Hier jemand?
Schöne Grüße
Sascha
So, probiert und probiert und dann war die raspberry hin 🙁 – Naja, somit war ich dann gezwungen alles nochmal neu aufzusetzen und nun läuft nach dem Reboot auch der nginx selbstständig los. Einziges Problem im Autostart bleibt nun nur noch der seafile/ seahub Server, da diese – trotz Eintrag im crontab des seafile – nicht starten, aber da schau ich dann die Tage nochmal.
Vielen Dank für’s Tutorial und die Arbeit!
Schöne Grüße
Sascha
Hallo Jan,
leider bekomme ich immer bei Schritt 14 beim neustarten des nginx den Fehler :
nginx:[emerg] unkown directive “ listen“ in /etc/nginx/sites-enabled/seahub:2
und ich weiß einfach nicht warum. Mehrmaliges Neuaufsetzen des RPIs half nicht. Hoffe du kannst mir weiterhelfen
Klingt mir nach einem Copy&Paste Problem. Lösche das in Step 12 eingefügte noch einmal und schau, das nginx wieder startet (Step 14). Dann kopiere den Schnippel aus Step 12 nicht direkt in die Datei, sondern erst z.B. in den Texteditor. Vielleicht siehst du dort dann Zeichen die gelöscht/hinzugefügt wurden beim Kopieren. Habe ich vereinzelt schon bei anderen Lesern gehört, dass das deren Problem war.
Scheint tatsächlich ein Copy&Paste Problem gewesen zu sein.
Wenn man das aus der Website hier rauskopiert sind statt Tabs-Abständen Leerzeichen eingefügt.
Habe zuerst versucht diese einzeln herauzulöschen, es kam aber zu Fehlern
Der Fix für alle die diesen Fehler auch bekommen :
Selbst abtippen.
Dauert, hat bei mir aber geholfen.
Danke für das Tutorial Jan
Muss irgendwie an deiner Browser Konfiguration in Kombination mit dem Blog liegen, den dieses Problem haben nur sehr wenige Leser.
Hallo zusammen,
und erstmal vielen Dank für die nette Anleitung. Leider habe ich bei Installation von Seafile ein „kleines“ Problem. Wenn ich die Startseite (Seahub) ausführe erscheint nach dem Login folgendes:
Page unavailable
Sorry, but the requested page is unavailable due to a server hiccup.
Our engineers have been notified, so check back later.
Ich habe dann wie hier (https://github.com/haiwen/seafile/wiki/Seafile-FAQ#wiki-Website_displays_Page_unavailable_what_can_I_do) beschrieben den Wert auf True gesetzt und erhalte folgendes:
########################################################################
SearpcError at /home/my/
Error received: 511 Unknown service (In _start_service)
Request Method: GET
Request URL: https://myip:8001/home/my/
Django Version: 1.5.1
Exception Type: SearpcError
Exception Value:
Error received: 511 Unknown service (In _start_service)
Exception Location: /home/seafile/seafile-server/seafile/lib/python2.7/site-packages/ccnet/rpc.py in _start_service, line 36
Python Executable: /usr/bin/python2.7
Python Version: 2.7.3
Python Path:
[...]
Ich habe Seafile mehrfach aufgesetzt. Es macht dabei keinerlei unterschied, ob ich die Seite über SSL oder „normal“ aufrufe. Ich kann Nutzer und Gruppen anlegen, jedoch keine Bibliotheken. Mein Client kann sich ebenso nicht verbinden. Hab gegoogelt und ausprobiert. Bislang hat nichts geholfen. Meine Daten sollen auf eine angeschlossene Festplatte ausgelagert werden.
Anbei meine Logs:
https://dl.dropboxusercontent.com/u/31043809/logs.zip
Ich würde mich freuen, wenn jemand noch eine Idee hat oder mit der Fehlerbeschreibung mehr anfangen kann als ich.
LG
Walter
Ich hatte exakt das gleiche Problem und schlicht vergessen, den seafile-server zu starten (Step 5). Bist du sicher, dass der läuft?
Hallo,
also den Seafile- und den Seahub-Server hab ich ganz normal gestartet (start und start-fastcgi). Dabei erhalte ich auch die Message „Seafile server started … Done“. Auch wenn ich einen restart mache, erhalte ich die Bestätigung des erfolgreichen Starts. Schaue ich dann mittels „htop“ nach meinen Tasks, so sehe ich den „ccnet-server“ bzw. den „seafile-server“.
Kann jemand mit den logs etwas mehr anfangen? Dennoch erstmal vielen Dank Martin.
Hallo Walter,
hast du bereits eine Lösung für das Problem? Ich bin nun leider an der selben Stelle hängen geblieben 🙁
Server läuft korrekt.
Login Screen kommt mit ssl ordentlich hoch.
Nach login dann:
„Page unavailable
Sorry, but the requested page is unavailable due to a server hiccup.
Our engineers have been notified, so check back later.“
heeeeeellllp !!! :-/
Hi,
Wie kann ich den Server von 2.3.1 auf 2.5.1 updaten?
Bin an der Wiki gescheitert…
Hat das schon jemand gemacht? I
Mich interessiert das auch. Hat jemand dafür eine Losung?
im Prinzip ganz easy, für 2.3.1 auf 2.5.1 muss eigentlich einfach nur die *.tar.gz Datei entpackt werden, am einfachsten so, dass dann
seafile-server_2.1.3
und
seafile-server_2.1.5
im selben ordnet liegen. danach einfach mit dem Befehl
crontab -e
(als user „seafile“, bzw dem user, der den server starten kann)
die Einträge anpassen. nachdem man die Dienste, oder den ganzen pi, neu gestartet hat, sollte der server unter neuer versionsnummer ausgeführt werden.
Grüße, Markus
p.s. ich hoffe das war kein ganz großer Mist. aber so mache ich es einfach 😉
nicht von den zahlendrehern beunruhigen lassen. aktuell ist version 2.1.5 und nicht 2.5.1 🙂
Hej Jan,
ist es irgendwie möglich die Domain mit ~/seafile anstatt des Ports aufrufbar zu machen?
Greetz,
Christoph
Möglich ja. Dazu beschäftigst du dich am besten mit location in nginx.
Dank Dir! werd mich die Tage mal dran machen und es ausprobieren.
Hallo Christoph,
neben der Möglichkeit Seafile in einem Unterverzeichnis zu betreiben, ist es auch möglich Seafile mit einer eigenen Subdomain z.B. https://cloud.ionas.com zu verbinden.
D.h. wenn man Seafile (z.B. auf einem Raspberry Pi zu Hause installiert hat) und eine Domain bei einem Webhoster besitzt, kann man auch eine Subdomain auf das eigene Seafile zeigen lassen.
Falls dich interessiert wie das geht, schau dir mal meinen Artikel an:
https://www.ionas-server.com/blog/seafile-mit-der-eigenen-subdomain-verbinden/
Viele Grüße
Christoph
Hallo Jan,
danke für die gute Anleitung – ich habe die SSL-Installation mit nginx gewählt. Ich kann sowohl über WAN als auch im LAN mit dem Windows-Client perfekt auf seafile zugreifen und die Dateien werden auch synchronisiert.
Mit der Weboberflächehabe ich jedoch ein Problem: Es funktioniert alles (WAN und LAN) bis auf den Dateiupload (sowohl WAN als auch LAN). Es passiert einfach gar nichts und die errorlogs geben auch nichts her. Auch mit verschiedenen Browsern hatte ich keinen Erfolg.
Hallo,
bei mir geht es nur mit Chrome.
Gruß
Kann ich mir eigentlich kaum vorstellen, denn dann müsste der Upload ein clientseitiges Problem sein. Und das wäre schon ein arger Bug.
Mhhh… ohne aussagekräftige Logs, die es ja nicht gibt, wird es schwer den Fehler zu finden. Kannst du denn Dateien aus dem Webinterface herunterladen? Wenn nicht wäre das ein möglicher Ansatzpunkt.
Habe den Fehler gefunden. Ich hatte unterschiedliche Ports in den Konfigurationsdateien angegeben, weil ich nachträglich auf 443 umgeschwenkt bin. Inzwischen habe ich das angepasst und es funktioniert alles. Asche auf mein Haupt. 😀
So etwas in die Richtung habe ich mir schon gedacht. Daher auch die Frage ob der Download geht, da ich anhand dessen den Fehler besser hätte einschätzen können 😉
Hej Jan,
falls mal wieder jemand drüber stolpert und sich wundert, dass der Server beim reboot nicht mitstartet, ist es evtl. erwähnenswert, dass die crontabs des Seafile-Servers (Step 18) auch als Nutzer Seafile erstellt werden sollten.
Greetz
Wenn man die Anleitung aufmerksam durcharbeitet wird das eigentliche klar, da beim Wechsel des Benutzer explizit beschrieben ist von wann bis wann welcher Benutzer zu verwenden ist.
Hallo erstmal,
danke für dieses tutorial, es ist wirklich sehr hilfreich. ich hatte nur ein problem, weil ich während des einrichten der no-ip anwendung, die alle 10 minuten prüft, dass die ip bei no-ip noch mit der von meinem router übereinstimmt im falschen user war und gedankenlos den cron daemon mit pfad zum pi user angelegt habe. und das obwohl du ja extra darauf hingewiesen hast wie ich später gesehen habe 😉
allerdings habe ich noch eine frage: Ist es möglich die portnummer (8001) aus der no-ip URL „unsichtbar“ zu machen, sodass man sie nicht mehr angeben muss?
Grüße aus Kiel.
Da Port 8001 kein Standard-Port ist, muss er angegeben werden. Du kannst allerdings – wie ich – den Standard-Port für HTTPS einrichten, das ist Port 443. Das musst du dann aber an allen Stellen machen (Step 7, Step 8, Step 12) und die entsprechenden Services neustarten. Auch das Port-Forwarding nicht vergessen!
Du könntest anstatt Port 8001 den Port 443 verwenden (Standard https:// Port). Dann kannst du auf diesem jedoch keine andere Anwendung mehr laufen lassen.
Edit: Kommentar von Martin übersehen, der das sehr schön erklärt hat.
Hallo Jan,
mit zwei Dingen komme ich irgendwie nicht weiter.
1. Wie richte ich den Download richtig ein?
Einzelne Dateien kann ich ohne Probleme vom Webinterface herunterladen. Wenn ich jedoch versuche einen ganzen Ordner (circa 400 MB) herunter zuladen erhalte ich folgenden Fehler „504 Gateway Time-out“.
Dies deutet ja darauf hin, dass der Server nicht antwortete. Die Frage ist nur woran liegt das? Ich habe gelesen, dass der Pi wohl zu lange braucht um das ZIP Archiv zu erzeugen. Jedoch habe ich nirgends eine Lösung dazu gefunden.
2. Könntest du erklären wie man WebDAV mit SSL einrichtet? Hier komme ich nicht weiter.
Ich habe versucht Seafile als Netzlaufwerk unter Windows 7 einzubinden. Jedoch ohne Erfolg.
Wäre toll wenn du weiterhelfen könntest.
Ciao
Silvio
Zu 1: Wie du ja schon gelesen hast braucht der Raspbery Pi wahrscheinlich zu lange. Eine mögliche Lösung wäre die Webserver Gateway Timeout hochzusetzten. Wie das geht kann ich dir auf die Schnelle nicht beantworten weshalb du da selbst mal suchen musst.
Zu 2: Seafile bietet einen super Client den ich die empfehlen würde zu verwenden. Falls du dennoch WebDav verwenden möchtest findest du im Seafile Wiki eine ausführliche Anleitung.
Zu 1. habe ich die Lösung. Für alle die es interessiert in der nginx.conf (Pfad: etc/nginx/nginx.conf) müssen folgende Zeilen eingefügt werden:
proxy_connect_timeout 600s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
Die Werte können natürlich angepasst werden.
Nun hat der Pi mehr Zeit um z.B. für den Download ein ZIP Archiv zu erstellen.
@Jan vielleicht sollte man sowas nochmal sammeln und einen extra Blog mit Tipps und Tricks veröffentlichen.
Ich glaube da hat sich hier schon einiges angesammelt jedoch ist dies über die Kommentare etwas unübersichtlich.
Wäre vielleicht etwas für die nächsten Monate. 🙂
dazu jedoch eine Frage:
Ich habe die Werte mal auf 1200s hochgestellt und selbst nach dieser Zeit hat der Pi es nicht geschaft aus 260MB Fotos eine ZIP zu generieren.
Ist das normal? Ich habe es mal mit Bildern von 18MB versucht, da war er nach wenigen Sekunden fertig.
Zu 2. WebDav würde ich schon gern nutzen, Den Wiki Beitrag kannte ich schon, leider hat dieser mir auch nicht weitergeholfen. Irgendwie klappt die Anmeldung an WebDav nicht.
Zu 1: Wenn ich mich richtig Erinnere war bei Seafile größere Dateien sowieso noch ein Problem, dass aber in Version 3.0, die in kürze erscheinen soll, gelöst sein sollte.
Zu 2: Da kann ich dir leider mangels Erfahrung nicht weiterhelfen, sorry.
Bzgl. Tipps: Das wäre ne Menge Arbeit. Wenn man weiß nach was man sucht findet man solche Tipps mittels Google und Co. eigentlich recht schnell 😉
Hallo Jan,
vielen Dank für dein super Tutorial (und das du es aktuell hältst). Ich habe hier Seafile 2.1.5 laufen. Als Speicher habe ich einen 32Gb USB-Stick in die fstab mit noatime eingebunden. Trotzdem blinkt die LED des Sticks wie wild. Alle Ordner sind syncronisiert und im top taucht seafile nur kurz auf. Hast du einen Tipp, wie ich den USB-Stick beruhigen könnte?
OK, es liegt dann wohl doch nicht an Seafile. Ich hab mal die crontab Einträge auskommentiert. Nach einem Reboot blinkt der Stick immer noch wie wild.
Irgend jemand???
Vielleicht blinkt der Stick immer und nicht nur bei Aktivität…?
Also wenn ich ihn aus der Buchse ziehe, blinkt er nicht mehr …
Hi,
zunächst einmal vielen Dank für das gute Tutorial. Habe alles nach Anleitung eingerichtet. Soweit funktioniert auch alles bei mir – mit einer Ausnahme: ich kann mit der Android-App keine Dateien herunterladen. Im Browser hab ich die gleichen Schwierigkeiten. Beides läuft ja über den Seahub, den ich (nach Anleitung) mit fast-cgi betreibe.
Hat jemand eine Idee, was ich ausprobieren könnte?
Hab das System auch noch einmal neu installiert mit aktuellem Raspbian, Nginx und Seafile. Ansonsten ist alles unverändert.
Viele Grüße,
Eric
Schau dir doch mal den Kommentar von Tom an. Klingt nach dem selben Problem 😉
Danke für den schnellen Kommentar! Hab es ausprobiert, aber leider funktioniert das nicht.
Meinst du, es würde Sinn machen, den Nginx mal durch einen Apache zu ersetzen?
Ich denke nicht, dass das etwas ändert. Weitere Ideen habe ich jedoch leider auch nicht…
Hallo Jan
Danke für dein How too, funktioniert alles wie es soll ohne SSL bis jetzt.
Aber der Autostart funzt nicht.
habe unter den Benutzer Seafile „crontab -e“ gestartet und diesen Eintrag eingegeben.
@reboot /home/seafile/seafile-server/seafile.sh start
@reboot /home/seafile/seafile-server/seahub.sh start 8000
Aber es wird nichts gestartet.
Habe meinen Speicherort bei der config unter “ /mnt/USBstick/seafile-data “ angegeben
Habe den Eintrag
/home/seafile/seafile-server/seafile.sh start &
/home/seafile/seafile-server/seahub.sh start 8000 &
Mal in “ /etc/rc.local “ eingetragen aber es wird der Webserver mit port 8000
nicht gestartet. ??
Gruß
einbi
hab es jetzt hinbekommen
Habe es jetzt so in die /etc/rc.local eingetragen.
sudo /home/seafile/seafile-server/seafile.sh start &
sudo /home/seafile/seafile-server/seahub.sh start 8000 &
Danke trotzdem.
einbi
Hi,
hab mal versucht seafile nach dieser Anleitung zu installieren, leider ohne Erfolg. Wenn ich auf den Seahub auf IP:8000 zu greifen will, kommt bei mir Pyload. Ok, dachte ich, dann ändere ich einfache alle Einträge von 8000 auf 8500. Leider ohne Erfolg.Welche Änderungen im HowTo muss man vornehmen wenn auch Pyload auf dem Pi läuft? Muss auch bei Nginx der Port von 8000 auf 8500 geändert werden?
Dann noch eine Verständnisfrage. Ab Step 18 ist man wieder auf dem User seafile? d.h. die Einträge bei crontab -e werden unter seafile eingetragen und nicht dem Standarduser, richtig?
P.S. Irgendwann, hatte ich seafile kurz laufen, dann lief Pyload aber nicht. Also wieder alles von vorne…
Danke im voraus
Entweder zu änderst den Port von Seafile (in Step 6, 7, 12 und 15) oder eben bei pyLoad. Zwei Programme auf einem Port funktioniert auf jeden Fall nicht. Ab Step 3 befindet man sich im Benutzer seafile.
Danke für den Tip. Habs noch mal mit einem sauberen Image probiert. pyLoad auf einen anderen Port gelegt und Seafile mit SSL installiert. Jetzt läufts. Hatte wohl zu viel Murks mit den Ports angestellt. So langsam macht der Pi richtig Spass.
Vielen Dank für das tolle Tutorial! Alles klappt hervorragend. Ich habe allerdings eine Frage bezüglich des SSL-Zertifikats. Da es selbst unterschrieben ist, bekommt man stets die Meldung, das Zertifikat sei nicht vertrauenswürdig. Gibt es die Möglichkeit ein „vertrauenswürdiges“ Zertifikat zu verwenden? Für die Anwender sähe dies sicherlich angenehmer aus.
Über eine Antwort würde ich mich sehr freuen!
Dazu kann ich auf meinen Artikel Kostenloses SSL Zertifikat bei StartCom StartSSL erstellen verweisen 😉
Alles klar, schaue ich mir an! Vielen Dank für die blitzschnelle Antwort!!!
Erstmal vielen Dank für das Tutorial.
Ich habe es Schritt für Schritt befolgt, einschließlich mit dem Abschnitt SSL.
Per Linux Client läuft auch alles ohne Probleme.
Wenn ich mich allerdings mit dem Webinterface verbinde kann ich keine Dateien hochladen.
Als Fehlermeldung erscheint:“Fehler: can not connect the server“.
Ich habe jetzt eigentlich alles nochmal doppelt und dreifach nachgeschaut, kann aber meinen Fehler nicht finden, zumal ich ja alles größtenteils per Copy und Paste gemacht habe.
Liegt es vielleicht daran, dass ich mich aus dem lokalen Netzwerk verbinde? Weil in den ganzen Dateien gibt man ja immer die Domain an. Ich kann aber aus meinem lokalen Netzwerk nicht auf meine Domain zugreifen, dass geht nur von außerhalb.
So ich habe mir jetzt nochmal eine zweite SD Karte geschnappt. Wenn ich es ohne SSL einrichte klappt alles, aber danach mache ich irgendeinen Fehler. In Schritt 12, muss man da „my-seahub-domain.tld“ durch http://www.beispiel.no-ip.org oder beispiel.no-ip.org ersetzen?
Auch wenn es nicht hilft, aber mir geht es genauso. Ich habe gestern Testweise einmal ohne SSL alles eingerichtet und es klappte problemlos. Heute habe ich es mit SSL versucht und ich kann Dateien weder über das Webinterface noch über die iOs-App herunter- oder hochladen.
Irgendwo muss da ein Fehler sein, oooder die Fritzbox hat Fehler in der Portweiterleitung,
Durch beispiel.no-ip.org ersetzen.
Dein Kommentar hat mich auf die richtige Spur gebracht: In Schritt muss (natürlich) statt der IP die Dyndns angegeben werden – Und schon läuft Alles 🙂
Danke für das Tutorial! 🙂
Wenn ich dich richtig verstanden habe, hast du in den Configs deine DynDNS Domain angegeben. Folglich wird der Zugriff auch nur ordentlich klappen, wenn du darüber auf Seafile zugreifst.
Das Problem ist, dass ich meinen Server intern nicht unter der DynDNS Domain erreichen kann, wobei ich nicht genau weiß ob das evtl. an unserem Speedport liegt.
Das Webinterface erreiche ich also nur unter der internen ip und wenn ich dann irgendetwas hochladen will, versucht er wahrscheinlich über die DynDNS zu verbinden.
Gibt es vielleicht die Möglichkeit, dass ich mich im internen Netzwerk weiter ohne ssl verbinden kann und von außerhalb nur mit SSL?
Speedport – ja, da gibt es bei vereinzelten Modellen ein solches Problem. Jedoch sollte dort kein SSL auch keine große Abhilfe schaffen…
Jep auch ohne SSL läuft nicht alles glatt. Das Problem ist einfach, dass der Speedport keinen internen Zugriff über die externe IP zulässt. Wenn ich alles von SSL weglasse, klappt intern alles gut. Allerdings kann man dann von außen über das Webinterface nichts hochladen. Gebe ich dann in der ccnet.conf meine dyndns ip an, kann ich zwar von außen über das Webinterface Dateien hochladen, allerdings nicht mehr von intern über das Webinterface 🙁
Über den nativen Clienten klappt das synchronisieren dann noch, weshalb ich es momentan dabei so belasse, da ich im internen Netzwerk das Webinterface nicht benutze.
Gibt es vielleicht irgendwie die Möglichkeit in der ccnet.conf 2 Adressen anzugeben, quasi eine als Fallback, falls eine nicht geht?
Warum willst du auch innerhalb des LAN mit dem dyndns-Namen hantieren? Ich habe alles für Web- und Clientzugriff vom Internet aus konfiguriert und es läuft problemlos. Innerhalb des LAN nehme ich halt den lokalen Namen (bspw. https://raspberrypi). Da gibt es keine Probleme.
Wäre halt schön gewesen, wenn das Webinterface sowohl von intern, alsauch von extern funktioniert. Aber wie gesagt, ab sofort nehme ich intern nur noch die Clients.
Daran kann man jetzt aber wahrscheinlich auch nichts ändern, liegt wie gesagt am Speedport.
Vielen Dank für die Antworten bisher, ich lasse das Thema jetzt aber erstmal so wie es ist ruhen.
Nochmal zum Verständnis: Du kannst also von außen über deinen dyndns-Domainnamen auf das Webinterface zugreifen, im LAN aber nicht über die interne IP oder den Hostnamen? Wenn das so ist, hat der Speedport damit nichts zu tun, denn dann kommunizieren der Client-PC und der Pi direkt miteinander und der Speedport fungiert höchstens als Switch. Dann läge der Fehler woanders. Was bekommst du denn für eine Fehlermeldung, wenn du von intern das Webinterface aufrufst?
Das Problem mit dem Speedport Model wurde in den Kommentaren hier ja schon mal diskutiert. Scheint leider keine zufriedenstellende Lösung zu geben.
@Martin, Momentan ist es folgendermaßen. Das Webinterface meines Server lässt sich sowohl von intern, alsauch von extern erreichen. Allerdings kann ich nur über die externe IP Dateien hoch/runterladen, was bei mir im internen Netzwerk also nicht geht, weil der Speedport ja die externe IP blockiert. Ich habe es dennoch hinbekomme Sachen herunterzuladen, indem ich dann im Browser einfach im Downloadlink die externe ip durch die interne ersetze, dann klappts.
Mit dem Sync-Client klappt es intern einwandfrei.
Momentan versuche ich extern meinen Server zu synchronisieren, aber leider klappt das auch nicht 🙁
Er zeigt mir zwar die aktuellen Bibliotheken an, und ich kann auch welche erstellen, allerdings kann ich keine Sachen hoch/runterladen, weil da ständig steht: Verbinde mit Server…
Allerdings weiß ich jetzt nicht genau, ob das evtl an unserem Uni Netzwerk liegt, weil die evtl Ports blockieren. Seltsam finde ich aber dass ja anscheinend eine Verbindung besteht.
Siehe auch meine Antwort weiter oben. Zumindest für den Speedport W724V gibt es eine Lösung für die fehlende Loopback-Fähigkeit vieler Speedport-Router (übrigens meine ich mein alter W501 konnte das noch…). Unter “Heimnetzwerk (LAN) / Übersicht der Geräte im Heimnetzwerk” kann man Namen für Geräte vergeben. Gibt man dort die dyndns-Adresse ein, dann wird sie netzwerk-intern auf die interne IP aufgelöst und von außerhalb tut das ja sowieso. Somit kann man dann intern wie extern die selbe URL verwenden und die in der Konfiguration hinterlegen. Damit das dauerhaft funktioniert sollte man u. U. auf DHCP für den Raspi verzichten (eine statische IP vergeben).
http://www.heise.de/newsticker/meldung/Der-GAU-fuer-Verschluesselung-im-Web-Horror-Bug-in-OpenSSL-2165517.html
–> kann man irgendwas tun um die SSL-Verbindung von der PI/Seafile abzusichern?
Warten. Die Version 1.0.1e-2+rvt+deb7u4 von OpenSSL (momentan aktuelle) enthält wohl noch kein Fix.
For the stable distribution (wheezy), this problem has been fixed in version 1.0.1e-2+deb7u5.
https://www.debian.org/security/2014/dsa-2896
–> sudo apt-get update && sudo apt-get dist-upgrade
–> sudo apt-cache show openssl
Package: openssl
Version: 1.0.1e-2+rvt+deb7u6
Dann noch Restart von Nginx und Test
http://filippo.io/Heartbleed
–> All good, XXXXX.XXXXXX.XX:8001 seems safe!
Hallo Jan,
super Tutorial was mir sehr geholfen hat. Auch Linux Noobs wie ich können damit easy eine private Cloud bauen. Funktioniert auch alles super bis auf einen Haken bei dem ich etwas verzweifele. Ich möchte die Seafile Daten natürlich nicht auf der SD Karte speichern, sondern auf meiner USB Festplatte. Nun hat sich ein „schlauer“ Mensch überlegt die Platte „TOSHIBA EXT“ zu nennen. Das Leerzeichen war bisher kein Problem, wenn man es escaped. Wenn ich allerdings das setup script — setup-seafile.sh — ausführe klappt das leider nicht.
Sieht dann so aus:
Where would you like to store your seafile data?
Note: Please use a volume with enough free space.
[default: /home/seafile/seafile-data ] /media/TOSHIBA\ EXT/seafile
ls: cannot access /media/TOSHIBA: No such file or directory
ls: cannot access EXT/seafile: No such file or directory
dirname: extra operand `EXT/seafile‘
Try `dirname –help‘ for more information.
dirname: extra operand `EXT/seafile‘
Try `dirname –help‘ for more information.
The path does not exist.
Alle anderen Methoden den Pfad einzugeben waren leider auch erfolglos. Nun bin ich ratlos. Die Platte umzubenennen habe ich auch schon überlegt, aber das scheint nicht so einfach zu sein. Ich bin für jede Idee dankbar 🙂
Gruß André
Umbenennen (dismounten und unter anderem Pfad wieder mounten) ist das sinnvollste, da du ansonsten auch an weiteren Stellen an Grenzen stoßen wirst. Prinzipiell unter Unix/Linux Pfad und Dateinamen mit Leerzeichen am besten vermeiden.
Wenn ich eine ZIP Datei z.B von 1GB Größe über das Webinterface hochlade, geht der Upload zunächst sehr schnell.
Bei 99,99% bleibt er jedoch stehen und es tut sich einige Zeit lang gar nichts.
Was macht er in dieser Zeit?
Ich habe an dieser stelle auch schon mal den Upload abgebrochen.
Zunächst war das File nicht ersichtlich. Als ich jedoch dann das gleiche File erneut hochgeladen habe, war nach erfolgreichen Upload des zweiten auch auf einmal das erste File ersichtlich.
Hat jemand das gleiche Problem oder kennt vielleicht sogar jemand eine Lösung. Oder liegt das einfach an der schwachen Performance des Pi?
Danke.
Performance kann da wirklich das richtige Stichwort sein. In Seafile 3.0, dass in Kürze erscheinen sollt, wurde an einer Verbesserung zum Handeln von vielen und Großen Dateien noch mal geschraubt. Vielleicht löst das ja dein Problem 😉
Hallo Jan. Ich habe nun am Wochenende Seafile auf die Version 2.1.5 gehoben. Hier scheint sich schon einiges getan zu haben . Eine kleine Gedenktpause legt er zwar auch noch ein aber diese ist minimal. Damit kann ich leben.
Hallo Jan,
super Tutorial! Es hat alles funktioniert!
Mich würde allerdings noch interessieren, ob man den Ordner der gespeicherten Cloud Daten auch noch nachträglich in einen anderen Ordner verschieben kann. Zum Beispiel auf einen externen Datenträger.
Ja das ist möglich, habe ich auch schonmal gemacht. Die Daten befinden sich meines Wissens als „Block-Dateien“ im Ordner seafile-data im Home-Ordner von dem User seafile. Also Seafile beenden. Den Ordner verschieben und den neuen Pfad in die seafile.ini im Unterordner /ccnet einfügen und danach seafile wieder starten. Bin mir aber nicht sicher ob es reicht nur seafile zu beenden, am besten auch seahub
Sicherlich. Wie das geht in im Wiki von Seafile beschrieben.
Hallo und danke für das Tutorial.
Bei mir hat alles soweit geklappt und kann mich über die Weboberfläche verbinden.
Nur kann sich der Client nicht mit dem Server verbinden.
Adresse: http://einName.noip.me:8000/
Benutzer: „Der bei der Konfiguration eingetragen wurde.“
Unter links im Client steht: „Mit keinem Server verbunden.“
Bei der Bibliothek steht: „Verbinde mit Server…“
Hat jemand vil. eine Idee?
Einen Ansatz habe ich gefunden. Und zwar habe ich keine Bibliothek zum Syncen freigegeben. Das liegt daran, weil es den Punkt unter den Aktionen nicht gibt. Nur Freigeben und Löschen. Hmmm…
Hast du auch alle Ports freigegeben?
8000 8082 10001 12001
Ahh, ich danke Dir! In meiner geistigen Umnachtung bin ich davon ausgegangen, dass ich nur den 8000 Port benötige.
Das Tutorial funktioniert soweit einwandfrei. Vielen Dankl dafür. Aber auch ich habe nach inzwischen vier Versuchen, inklusive Image-Wiederherstellung, keine Möglichkeit gefunden den Crontab des users Seafile zum Laufen zu bringen. Mein Seafile-Verzeichnis liegt auf einer per fstab eingebunden externen Festplatte. Könnte das das Problem sein?
Ja, könnte es, da es ein paar Sekunden nach dem ausführen der Crontab eingebunden werden könnte. Lösungsidee: Schreib hinter @reboot folgende Zeichen. Das sagt, dass das Script mit der Ausführung eine Minute warten soll.
sleep 60 &&
Hallo,
ich habe eben das Update auf Version 3.0 ausgeführt und leider hat nicht alles so funktioniert, wie ich mir das gewünscht habe. Mittlerweile sind jedoch alle Funktionen wiederhergestellt.
Allerdings startet er seafile jetzt nicht mehr nach einen reboot, wie in der crontab angegeben.
Der betrefende Ordner heißt weiterhin seafile-server, aber über die Ctronab scheint er seahub.sh nicht mehr starten zu können.
In der Crontab steht, genau wie hier im Tutorium:
@reboot /home/seafile/seafile-server/seafile.sh start
@reboot /home/seafile/seafile-server-latest/seahub.sh start-fastcgi
Wenn ich als User seafile: /home/seafile/seafile-server-latest/seahub.sh start-fastcgi
selber ausführen will, klappt alles wunderbar.
Wo ist das jetzt der Fehler?
Stehe gerade exakt vor dem selben Problem…
Habe auch beide Einträge in der Crontab.
…/seafile.sh start -> wird gestartet
…/seahub.sh start-fastcg -> läuft nicht…
Anybody else?
Habe exakt das gleiche Problem, habe mittlerweile auch mal den Server 3 neu aufgesetzt, das Problem besteht aber weiterhin. Nur Seafile selbst startet per crontab, seahub muss man jedes mal manuell starten …
Hi,
war bei mir genauso – was geholfen hat ist statt:
@reboot /home/seafile/seafile-server-latest/seahub.sh start-fastcgi
das hier:
@reboot /bin/sleep 15 ; /home/seafile/seafile-server-latest/seahub.sh start-fastcgi
Liegt wohl daran weil seahub sonst zu früh gestartet wird weil seafile noch nicht läuft.
Was bei mir allerdings nicht funktioniert ist ein Dateiupload über das Webinterface von Seafile 3.0.
Habe mich exact an die SSL Anleitung hier gehalten aber bekomme nur „Fehler: can not connect the server“ wenn ich etwas über das webinterface hochladen möchte – über die ios app funktioniert es problemlos. Runterladen kann ich über das Webinterface auch nichts.
Weis da jemand Rat?
Danke.
Vielen Dank für den Tipp. Mit dem Sleep Befehl funktioniert es bei mir einwandfrei.
Ich habe beim Webinterface genau das Selbe Problem, was allerdings an meinem Speedport Router liegt.
OK, korrektur – die Sache mit dem Webupload/download funktioniert doch.
Ich hatte meinen Pi über seine lokale IP im Browser aufgerufen. Hat auch alles funktioniert – nur eben der upload/download ging nicht. Als ich den Pi dann im Browser über die Dynamische IP aufgerufen habe (also übers internet statt intranet) lief dann auch die Sache mit dem Down/Upload.
Der iOS App war das egal – da konnte ich auch munter mit der lokalen IP des PI up und Downloaden…
Ach ja – Danke für die tolle Anleitung für seafile hier 🙂
Das hat das Problem bei mir auch behoben. Danke für den Tipp!
Der Hinweis mit der Wartezeit für das Crontab unter User Seafile ist essentiell wichtig.
@Jan, könntest du das Tutorial bitte anpassen?
Habs angepasst 😉
[…] Um die Daten “intern” hosten zu können, habe ich einen kleinen Raspberry Pi aus dem Schrank ausgepackt, mit Raspbian bestückt und nach folgendem HowTo SeaFile installiert: Owncloud-Alternative Seafile Server installieren […]
Was muss ich eigentlich tun, um die E-Mail Unterstützung für Seafile zu aktivieren? Also z.B:, dass Nutzer sich bei veressegnem Passwort einen Link zuschicken lassen können oder, dass ich Freigaben direkt per Mail verschicke?
Auf der Seafile Seite wird das nochmal erklärt, habs genauso gemacht und bei mir funktioniert es auch, allerdings weiß ich nicht genau, was du für was anderes als Googlemail eintragen musst.
https://github.com/haiwen/seafile/wiki/Seafile-server-configuration-options#Sending_Email_Notifications_on_Seahub
Danke!
Hallo,
zuerst einmal vielen Dank für die Anleitung!
Leider habe ich ein Problem mit dem Zugriff von extern. Ich kann unterwegs auf dem Handy zwar eine verbindung aufbauen und durch Ordner navigieren, allerdings keine Dateien ansehen oder up-/downloaden.
Alle 5 Ports leite ich von meinem Router an die ip des Pi weiter. Das müsste so passen oder?
Ich verwende eine Apple Time Capsule.
Die Idee wäre gewesen, einen Speicherplatz für 10 Personen anzulegen um Fotos von Ausflügen zu sammeln. Aber leider kann ich nur innerhalb meines WLANs Dateien tatsächlich up-/downloaden und ansehen.
Was mache ich falsch? Hat jemand Tipps?
Also, bei mir ist es ebenfalls so. Ich habe dann wie im Schritt 7 (optional) meine externe ip, mit http statt https und 8000 statt 8001 eingetragen.
Dann ist es möglich von außen Dateien hoch und runterzuladen. Allerdings geht es dann nur von außen, d.h. du kannst dann nichts mehr über die App über die interne ip hochladen. Auf die Sync-Clients hat das keinen Einfluss. Also wenn du einen dyndns-host hast den eintragen.
Hallo Hans!
Ich hatte genau das gleiche Problem – Ich konnte im Web-Frontend navigieren, aber Bilder wurden mir nicht angezeigt.
Die Lösung: Die Zeile „HTTP_SERVER_ROOT=’…‘ aus der seahub_settings.py einfach löschen. Dann ging’s bei mir!
lg
Hallo Jan,
besten Dank für Dein Tutorial. Hat bei mir bestens geklappt, allerding nutze ich SSL derzeit noch nicht, da nur für den internen Gebrauch konfiguriert. Nutze die Clients für Mac, iPad und Android. Endlich kann ich meine Daten ohne umständliches kopieren auf dem gleichen Stand halten.
Ich habe gelesen, das Seafile auch ein Wiki unterstützt. Habe aber nirgends Infos dzu gefunden wie man das einrichtet. Irgendeine Idee? Oder unterstützt das nur die Profiversion?
Gruß Jürgen
Das kannst du einfach im Webinterface von Seafile einrichten, wobei das, zumindest in Version 2.x, noch nicht gerade schon ausgebaut war bzw. ist.
Ja, Danke. Gefunden unter dem kleinen Zahnradsymbol. Module inzufügen.
Gruß Jürgen
Hi Jan,
vielen Dank für deine super Tutorials. Ich habe nach deiner Anleitung sowohl Owncloud und Seafile installiert.Seafile hat mich letzten Endes deutlich mehr überzeugt. Ein Problem habe ich aber: Von meinem Arbeitsplatz (PC hinter Proxy) kann ich zwar auf die Weboberfläche zugreifen (nachdem ich dem Admin nach Bestechung die Freigabe für Port 8001 abgerungen habe), der Seafile Client (Windows) meldet aber immer „Verbindung verweigert“. Ich muss dem Client wahrscheinlich irgendwo doe Proxy Konfiguration mitteilen, Frage ist nur: Wo?
Gruß,
Max.
Ok, bin schonmal einen Schritt weiter. Man kann mit einem „Proxifier“ den Seafile Client zwingen alles über den Proxy zu leiten (ich benutze ProxyCap für Windows). Leider benötigt der Client ja noch mehr Ports als den 8001 (wenn ichs richtig sehe braucht da ccnet z.B. Port 10001), die aber alle durch den Proxy gesperrt werden. Gibt es eine andere Lösung als meinen Admin weiter zu nerven? Könnte ich einfach die Ports die seafile benutzt auf „Standardport“ (z.B. 80, 443) ändern (in den entsprechenden config files)?
Gruß,
Max.
Logo könnte man das. Der Port ist in der Config unter seafile-server/ccnet/ccnet.conf definiert. Danach nicht vergessen Seafile und Seahub neuzustarten und ebenfalls im Client entsprechend abzuändern.
Meines Wissens nach bietet der Client keine Proxy Settings an.
Ich glaube, ich habe ein Problem mit deinem Reboot Script entdeckt. Wenn ich einen Reboot durchgeführt hatte, bekam ich immer ein „Bad Gateway“ vom Server. Obwohl laut der Log Datei /home/seafile/seafile-server/seahub.sh start-fastcgi ausgeführt wurde, lief der Prozess nicht und ich musste ihn manuell starten.
Nach einigen weiten Reboots und dem Studieren der Log Datei ist mir aufgefallen, dass Cron in manchen Fällen seahub.sh start-fastcgi vor seafile.sh start gestartet hat. Daher vermute ich, das Cron grundsätzlich nicht wartet, bis seafile.sh start gestartet ist, sondern seahub.sh start-fastcgi startet, auch wenn seafile.sh start noch nicht soweit ist.
Ich habe darauf hin das Script in
@reboot /home/seafile/seafile-server/seafile.sh start && /home/seafile/seafile-server/seahub.sh start-fastcgi
geändert. Nun habe ich keine Probleme mehr beim rebooten.
Das war die Rettung! Das gleiche Problem hatte ich auch und bin daran einfach nur verzweifelt, weil nichts half. Aber ich Idiot hab auch nicht in die syslog geschaut. Durch deine simple Lösung funktioniert mein System nun auch wieder einwandfrei.
Super, vielen Dank! Hat auch mein Autostart Problem gelöst!
Vielen herzlichen Dank für diese tolle Anleitung! Endlich hat es funktioniert!
Super Tutorial, hat prima geklappt, nachdem ich es dann endlich mit der Portweiterleitung auch hingebracht hab.
Ich hätte da aber noch eine Frage:
Ist es mit seafile, ähnlich wie in owncloud, möglich, einen externen Speicher wie Dropbox oder Gdrive einzubinden? Einige meiner Freunde wollen nicht auf mein seafile umstellen, und da hätte ich gerne den gemeinsamen Dropbox-ordner in seafile als externen Speicher eingebunden. In owncloud ist das ohne weiteres möglich, aber in seafile scheint das nicht vorhergesehen zu sein, lieg ich da richtig?
Nochmals vielen Dank für das ausführliche Tutorial, hat mir einige Stunden an Arbeit und Frickelei abgenommen.
Ich hab aus dem Grund einen Dropbox Ordner als Bibliothek in Seafile eingebunden. Auf meinem Laptop halt, aber das funzt wunderbar. 🙂
Man könnte den Dropbox Ordner in den Seafile Ordner an einem Client legen. Dann würde Seafile, sobald sich seitens Dropbox was ändern, dieses ebenfalls in Sefile syncen. Eine bessere Lösung kenne ich direkt nicht.
Vielen vielen Dank für das Tutorial,
hat wunderbar funktioniert!
Das Einrichten von Seafile hat Dank Deiner Anleitung wunderbar funktioniert. Das Ganze funktioniert auch prima parallel zu baikal.
Gibt es eigentlich eine Möglichkeit ganze Verzeichnisbäume hochzuladen oder runterzuladen?
Funktioniert auch parallel zu anderen Anwendungen – musst nur sehen, dass du die nginx site config entsprechend verschachtelst. Verzeichnisbäume über das Webinterface glaube ich nicht, jedoch ist das mit den Clients ja kein Problem.
Hallo Jan,
es ist nicht sinnvoll, die Versionsnnummer hinter dem „seafile-server“ zu entfernen. Während dem Setup wird ein Link „seafile-server-latest“ auf die aktuelle Version angelegt. Auch um die Scripte zu starten sollte also „seafile-server-latest/seahub.sh […]“ verwendet werden. Das spart im Falle eines Updates eine Menge Arbeit. Auch dein nginx-script sollte den Pfad über den Linkordner verwenden. 😉
Nur als kleiner Tipp, da ich gerade am upgraden war. 😉
Gruß Max N (Xam_Green)
Erstmal danke für deinen Erfahrungsbericht. In Seafile 2.x gab es meines Wissens nach noch keinen Symbolic Link. Außerdem würde ich behaupten, dass dies Geschmacksache ist. Ein mv beim Upgraden mehr oder weniger sollte nicht so wild sein.
Hallo Jan,
vielen Dank für die Mühe für das tolle Tutorial. Erspart doch viel Zeit bei der Einrichtung.
Ein Verbesserungsvorschlag habe ich im Step3:
Statt „sudo su seafile“ und „cd“ auszuführen, nutze doch am Besten „sudo su – seafile“ mit dem „-“ hinter su läd man die Umgebungsvariablen etc. des Benutzers und ist direkt im Homeverzeichnis des Benutzers.
Ist nur ein Tipp um das Tutorial noch ein wenig mehr abzurunden.
Beste Grüße,
Chris
Danke für den Tipp. Habe ich gerne umgesetzt 🙂
Hallo Jan ich habe nach deinen beiden Anleitungen den Baikal Server und Seafile Server installiert.
Und wollte die beiden Server mit SSL versehen bin dabei ebenfalls so vorgegangen wie es von dir beschrieben wurde.
Jetzt habe ich folgende Probleme erst konnte ich auf keinen der Beiden Server mehr zugreifen.
Dann ging Baikal von alleine wieder nur der Zugriff auf den Seafile Server klappt nicht mehr.
Wenn ich auf die URL zugreifen will erhalte ich die Fehlermeldung Bad Gateway 502.Ich hoff du hast einen Tipp für mich den kenne mich mit den Webserver Sachen nicht so gut aus.
Viele lieb Grüße Michael
Du musst eine zweite site config in nginx anlegen für den zweiten Service, da dieser auf einem anderen Port laufen soll. Einen Beginner Guide zu diesem Thema findest du im Wiki von nginx.
Hi,
nach wie vor bin ich großer Fan dieser Seite! Nochmal Danke für alle Tutorials!
Allerdings wills mit seafile und dem Pi bei mir einfach nicht laufen.
Im lokalen Netzwerk funktioniert alles wie geschmiert. Allerdings verzweifle ich am Zugriff von außerhalb. Ich habe das Tutorial nun mehrfach mit allen Schritten durchgeführt. Nginx läuft, portforwarding läuft (sämtliche port sind freigegeben: 22 , 80 , 443 , 10001, 12001, 8082, 8000). Ich kenne alle Schritte mittlerweile auswendig 😛
Trotzdem schaffe ich es nicht über http://xyz.xyz.org:8001 auf meinen seafile Server zuzugreifen. Ich werde noch bekloppt. Kennt jemand noch ein paar Tips, bzw. Hilfestellungen, warum es nicht funktionieren könnte?
Vielen Dank
Grüße, Max
OH MEIN GOTT. Ich habe den wichtigsten Port nicht freigegeben: 8001. Sorry für den Wind. Problem gelöst!
Grüße, Max
Die Ports 22, 80 und 443 sind für seafile auch nicht wichtig. Wenn Du über SSL arbeitest, kannst Du auch den Port 8000 schließen. Ich mein Seafile-Sever unter SSL laufen und habe bei nur die Ports 8001, 8082, 10001 und 12001 offen.
[…] Heute wurde die Seafile Version 3.0.4 für den Raspberry Pi released. Seafile ist eine OpenSource “File Sync & Share” Software, ähnlich wie der kommerzielle Dienst Dropbox. Der Vorteil ist, dass Seafile selbst gehostet werden kann und somit die Kontrolle der eigenen Daten jeweils in eigener Hand bleibt. Anleitungen, wie Seafile auf dem Raspberry Pi installiert werden kann, gibt es genügend. Zu empfehlen ist die Anleitung von Jan Karres Klick […]
hallo Jan ich habe mir den Wiki link von dir mal angesehen komme aber leider nicht ganz damit klar da mein Englisch absolut schlecht ist und Ich wollte fragen ob es dir möglich wäre mir auf deutsch weiterzuhelfen wäre dir echt dankbar dafür es ging darum wie man den baikal Server und den seafile Server gleichzeitig auf dem pi laufen lassen kann leider habe ich dazu keine Dokumentation auf deutsch gefunden wäre echt nett wenn du mir dabei helfen könntest viele liebe Grüße Michael G
Das ist auch für mich etwas aufwändiger ist wäre ein es ganzes Tutorial wert. Werde ich aber auf die Todo-Liste aufnehmen, wobei ich es in näherer Zukunft (Juli) noch nicht schaffen werden, da noch andere Artikel anstehen.
Füge in Deine vHost Config unter /etc/nginx/sites-available/foo.config folgenden Absatz für Baikal ein.
# Baikal CalDav/CardDav config
location ~* /baikal {
root /var/www;
#include /etc/nginx/naxsi.rules;
location ~ ^(.+\.php)(.*)$ {
try_files $fastcgi_script_name =404;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include /etc/nginx/fastcgi_params;
}
rewrite ^/.well-known/caldav /baikal/cal.php redirect;
rewrite ^/.well-known/carddav /baikal/card.php redirect;
charset utf-8;
location ~ /(\.ht|Core|Specific) {
deny all;
return 404;
}
}
Für Seafile nimmst Du folgenden Absatz direkt danach ein.
# Seafile Config
location /seafile {
#include /etc/nginx/naxsi.rules;
fastcgi_pass 127.0.0.1:8000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param HTTPS on;
access_log /var/log/nginx/seahub.access.log;
error_log /var/log/nginx/seahub.error.log;
}
location /seafhttp {
#include /etc/nginx/naxsi.rules;
rewrite ^/seafhttp(.*)$ $1 break;
proxy_pass http://127.0.0.1:8082;
client_max_body_size 0;
}
location /media {
#include /etc/nginx/naxsi.rules;
rewrite ^/seafmedia(.*)$ /media$1 break;
root /home/seafile/seafile-server-latest/seahub;
}
# root Config
location / {
root /var/www;
index index.html;
#include /etc/nginx/naxsi.rules;
charset utf-8;
}
Damit sollte alles gehen. Ich habe auch mehrere Dienste unter einer nginx config laufen.
Gruß
Michi
Ein Servus an ALLE,
nachdem der Neustart von Seafile nicht wollte, legte ich den PI erstmal weg. Nun habe ich endlich die Lösung hier gelesen. In Step 18 „sleep 10“.
Danke an alle die auf der Suche nach dem Problem waren.
Habe dann nach der wunderbaren Anleitung von Jan einen Sick eingebunden.
Nun mein Problem. Wie kann ich genau meine Seafile-Daten auf den USB-Stick verschieben? Es gibt hier einige Andeutungen, aber verstehen tue ich sie nicht.
Mit über 60 und als Windows-User ist das Gehirn nicht mehr so flott 🙂
Kann mir mal jemand genaue Befehle posten, die ein Anfänger auch nachvollziehen kann?
Ich muss mich erst an alles langsam rantasten.
Danke schon mal für Euer Verständnis, Hilfe und die vielen wunderbaren Anleitungen von Jan.
Mit
mv VON AN
(VON und AN durch Pfad ersetzen) kannst du das seafile-data Verzeichnis verschieben. Anschließend musst du in ccnet den Pfad zum neuen Ort in der seafile.ini anpassen (/home/seafile/ccnet/ccnet.conf) und Sefile neustarten.Hallo,
ich bin nach dem Tutorial vorgegangen um Seafile inkl. SSL auf meinem RPi Server einzurichten, der später über Dyndns zugänglich gemacht werden soll.
Aktuell kann mich ich mich nicht lokal anmelden. Wenn ich ‚192.168.178.22:8001‘ eingebe bekomme ich eine Fehlermeldung:
SSL hat einen Eintrag erhalten, der die maximal erlaubte Länge überschritten hat. (Fehlercode: ssl_error_rx_record_too_long)
Hat mir jemand nen Tip?
Es geht!
Layer 8 Problem.
Hatte ’ssl on;‘ unter /etc/nginx/sites-available/seafile vergessen.
Momentan habe ich einen USB Stick mit Fat. Spricht etwas dafür ein anderes Filesystem zu benutzen (ext4, usw.)?
FAT32 ist auf 4GB je Datei beschränkt. Sprich bei großen Dateien bekommst du mit diesem Dateisystem Probleme.
Aber die Dateien werden ja nicht 1:1 auf dem Dateisystem angelegt, sondern in Blockdateien aufgeteilt. Ich habe in meinem seafile-data nicht eine einzige Blockdatei, die größer als 100MB ist. Hat jemand größere? Kann die maximale Dateigröße wirklich zum Problem werden beim seafile-data-Verzeichnis?
Ah, Seafile, Git. Habe ich vergessen. Du hast vollkommen recht. Dank dieser Aufteilung sollten die Blöcke in den seltensten Fällen größer als 4GB werden.
Eine ausführliche Gegenüberstellung von Dateisystemen habe ich bei Tecchannel gefunden.
Hallo Jan ich habe nur eine kurze Frage bezüglich dieser Anleitung hier und zwar bin ich wie von dir beschrieben vorgegangen um den Seafile Server mit SSL einzurichten.
Nun ist mir aber folgendes aufgefallen ich kann über das Webinterface nur noch Dateien hochladen wenn ich über die Dyndns Adresse gehe. Wenn ich das Webinterface über die ip Adresse aufrufe und eine Datei hochladen möchte bekomme ich die Fehlermeldung Server nicht gefunden.
Nochmal betont über die dnyns Adresse funktioniert alles wunderbar nur über die ip Adresse nicht.
Das Problem dass dadurch für mich entsteht ist das die Upload Rate über die Dyndns wesentlich geringer ist als über die IP Adresse des Pi obwohl ich mich im heimischen Netzwerk befinde.
Hast du einen Vorschlag oder eine Idee wie es machbar ist das man über beide Adressen Dateien hochladen kann für einen kurzen Tipp wäre ich sehr dankbar.
Und nochmals danke für die tolle Anleitung
viele Liebe Grüße Michael
Bei Seafile gibt es nur die Möglichkeit eine Adresse zu definieren. Wenn dein Router einen sogenannten Loopback beherrscht (die meisten können das; einige Speedports jedoch nicht) erkennt der Router, dass du im selben Netzwerk bist und der Upload funktioniert wie über die interne IP-Adresse.
Hallo Jan, schönen Dank für das Tutorial. Ich habe Seafile gemäß deiner Anleitung prinzipiell zum laufen gebracht (kann mich also mit meiner Mail und Passwort anmelden. Klicke ich dann auf „Meine Bibliothek“ und anschließend rechts auf den „Hochladen“ Knopf, so erscheint die betreffende Datei, samt Größenangabe zwar im Dialog, jedoch wenn ich dann weiter rechts auf „Start“ gehe, bekomme ich folgende Fehlermeldung: Fehler: can not connect the server
SSL habe ich nicht versucht, d.h. Seafile ist in meinem Fall über Port 8000 zu erreichen. Nicht verstanden habe ich zudem die Angabe für die freizuschaltenden Ports. Benötigt man auch 8082, 10001 und 120001? Sind die Routerfreigaben auf das TCP-Protokoll beschränkt, oder muss ich jeweils auch UDP freigeben?
Vielen Dank schon.
Wenn du Seafile ohne SSL eingerichtet hast musst du Port 8000, 8082, 10001 und 12001 freigeben. Letztere sind für die Clients relevant. Alles samt TCP. Dann sollte es auch funktionieren 🙂
Hallo Jan, d.h. du führtst also die genannte Fehlermeldung „can not connect the server“ direkt auf ungeöffnete Ports im Router zurück? (was ja mein eigentliches Problem ist)
Ich könnte mir anhand des Fehlers und deiner Beschreibung zumindest vorstellen, dass es daran liegt.
Hallo Herr Karres,
vielen Dank für die vielen Anleitungen.
Wie kann man denn die Seafile und Nginx-Installationen samt allen Einstellungen wieder vom Raspi wegradieren, um nochmal neu anzufangen?
Vielen Dank im Voraus.
Ede
und dann wüsste ich gerne noch, wie ich meinen Usb-Speicher in Seafile integrieren kann, ohne die dort befindlichen Daten löschen zu müssen.
Neues Verzeichnis auf dem Stick anlegen und in diesem Seafile installieren.
Im Endeffekt alle Dateien, Dateiänderungen und Nutzer anlegen rückgängig machen. Wie das konkret Schritt für Schritt geht wäre eine eigene Anleitung. Ggf., falls es auf eigene Faust nicht klappt, Raspbian noch einmal neu installieren?
[…] auch für seafile nginx und sqlite – wie für diese Website. Danke an Jan Karres für das gute Tutorial an dieser […]
Klasse Tutorial, beim SSL Teil bin ich vor einem Jahr ohne Anleitung gescheitert.
Ein Fallstrick lauert, bei deinem Tut aber, wenn man wie im Seafile WiKi angedacht eine Ordnerebene mehr verwendet (wegen Updates) und man einen abweichenden seafile user benutzt.
Dann unbedingt in Schritt 12 unter location /media den Pfad korrigieren und auch bei Schritt 18 die richtigen Pfade nehmen.
Dann auch nicht den Ordner mit der gerade installierten Version angeben sondern seafile-server-latest. Das ist ein symbolischer Link auf den Ordner mit der neusten Version, der bei einem Update angepasst wird. Somit braucht man nach einem Update auch nichts weiter ändern.
Danke, Robert
Hallo Jan,
also ich bekomme es leider ums verrecken nicht hin. Ich bleib immer beim Punkt nginx hängen, ich erhalte immer einen 502 Bad Gateway Fehler.
Wenn ich das ganze ohne SSL installiere geht es. Hast du eine Idee? Ich verwende RASPBMC.
Danke,
Sebastian
Ich tippe mal drauf, dass du Seafile oder Seahub in Step 9 nicht ordentlich gestartet hast. WAs bekommst du den beim Ausführen der darin enthaltenen Kommandos für Rückmeldungen?
[…] Die Daten immer und überall verfügbar zu haben ist der Trend der Zeit und wer Wert darauf legt dass die Daten in der Cloud verschlüsselt ( Clientside Encryption AES 256/CBC ) sind wird hier mit Seafile fündig – hier findet man Informationen wie man Seafile auf den Raspberry Pi installiert und verwendet […]
Hallo Jan,
bei Schritt 14 wenn ich nginx neustarten will bekomme ich folgende Fehlermeldung:
nginx: [emerg] SSL_CTX_use_certificate_chain_file(„/etc/nginx/ssl/seahub.csr“) failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib)
Ich tippe, dass da beim erstellen des SSL-Zertifikats was schief ging. Probiere doch diese Schritte einfach noch einmal durchzuführen.
[…] den Erneuerungen zu profitieren. Wie man Seafile installiert erklärte ich bereits in dem Artikel Owncloud-Alternative Seafile Server installieren. Ausgegangen von dieser Installation (Anleitung Stand 10. August 2014 oder neuer) erkläre ich im […]
Hallo Jan,
könntest du die Anleitung erweitern, um einen usb stick als Speicherplatz zu nutzen? Ich habe einen usb stick mit ext4 formatiert und an die position /mnt/storage gemountet und mit fstab zur automatischen einbdungen eingetragen.
Dann habe ich noch folgenden Ordner erzeugt:
/mnt/storage/seafile/seafile-data
Diesen Pfad habe ich auch bei der seafile Installation angegeben.
Dann habe ich noch mit dem Befehl:
chown seafile -R /mnt/storage/seafile
Die Rechte für den Nutzer seafile auf den Ordner gegeben. Es scheint auch soweit alles zu funktionieren. Auf meinem Windows Rechner habe ich den neuesten Clienten installiert. Allerdings habe ich das Problem, dass wenn ich mehrere Dateien einfüge, er manchmal nur ein paar synchronisiert. Erst wenn ich den clienten neustarte synchronisiert er weiter. Manchmal erscheint auch die Meldung: Fehler: Fehler beim hochladen der Datei.
Also bei mir scheint die synchronisation nicht wirklich sauber zu laufen. Nun bin ich mir nicht sicher, ob ich das mit dem mounten und einbinden usw. auch wirklich richtig gemacht habe.
Ich habe in Step 5 mal das Tutorial zum richtigen Einbinden eines USB-Speichermediums verlinkt, wobei ich denke, dass dein Problem eher am Client liegt. Installiere den Seafile Client doch mal neu.
Ahoi!
Vielen Dank an Deiner Stelle für Deine vielen hilfreichen Tutorials. Es lohnt sich, Dir bei Facebook und hier zu folgen!
Leider scheitere ich hier an Deiner Anleitung und die hängt offenbar mit Zugriffsrechten zusammen. Warum legst Du einen extra Benutzer „seafile“ an und richtest Seafile nicht unter dem Standardbenutzer an?
Mein Problem: der Benutzer seafile hat offenbar keine Berechtigung auf meine angeschlossene Festplatte zuzugreifen:
Bei der Einrichtung erhalte ich immer diese Meldung:
„Directory /media/hdd1/seafile-data cannot be created.
Failed to generate seafile configuration“
Die Festplatte wird in der fstab wie folgt gemountet:
„UUID=0815 /media/hdd1 ext4 defaults 0 1“
Bei Owncloud und Co bereitet dies auch keine Probleme …
Warum eigenen Benutzer: Erstens bietet es eine etwas abgeschirmtere Umgebung und zweitens breitet sich der Seafile Server auch eine Verzeichnisebene höher aus, wozu ein Home-Verzeichnis eine gute Struktur gibt.
Binde doch deine Festplatte mit folgendem Kommando in fstab ein. Dann sollte seafile die benötigten Rechte darauf haben.
UUID=0815 /media/hdd1/ ext4 defaults,auto,umask=000,users,rw 0
Moin moin Jan,
erst mal vielen dank für diesen absolut tollen Blog, erhat mir bei meinen ersten Linux Schritten sehr geholfen.
Ich hänge bei schritt 15 fest den ich als User seafile ausführe ich gebe meine Adresse http:dyndnsAdresse:8001 ein mir wird wie angkündigt gesagt das das Zertifikkat nicht vertraueswürdig ist und dann nach ok klicken 502 Bad Gateway … neue Zeile … nginx/1.2.1
ich habe alle Schritte einschließlich nginx server einrichten laut deiner Anleitung durchgeführt. Hast du ne Ahnung woran es liegt ?
Welche Ports muss ich genau in meiner Fritzbox forwarden für nginx,ssl,seafile ?
In meiner Fritzbox habe ich die Fernwartungsmöglichkeit deaktiviert da es in letzter Vergangenheit Security Probleme damit gab. Diese nutzt den Port 443 für ssl den ich aber erst abändern kann wenn ich die Fernwartung aktiviere (was ich ungerne möchte) Gibt es die Möglichkeit den nginx ssl Port auf einen anderen umzustellen wenn ja wie und wo ? Oder liegt es an etwas ganz anderem ??? Bitte brige Licht ins Dunkel wollte ungerne meinen Raspberry wieder zurückschicken weil ich zu dumm für Linux bin 😀
Vielen Dank schon mal im voraus
MfG Timo
Zu dumm für Linux gibts nicht, nur der Einstieg ist nicht einfach. Deshalb versuche ich auch anfängerfreundlich zu schreiben 😉
Zu 502 Bad Gateway: seafile und/oder seahub läuft wahrscheinlich nicht. Prüfe das mal. Siehe Sept 6 und Step 9.
Zu Ports: Siehe Ende es Artikels. Einen anderen Port als 443 musst du nicht setzen, da wir diesen schon auf 8001 gesetzt haben.
Hallo!
Ich habe es dank deiner Anleitung geschafft, Seafiele auf dem Raspi zum Laufen zu bekommen! Nun wollte ich das Zertifikat aus deiner Anleitung auch auf meinem Samsung installieren, doch da macht Samsung ein strich durch dir Rechnung, denn es lassen sich nur Zertifikate installieren die von irgendeiner CA bestätigt wurde.
Nun hatte ich das versucht über openssl bekomme es einfach nicht hin,
kennt jemand hier einen Weg???
Mfg Steffen
Du musst das gar nicht installieren. Du musst lediglich auf deinem Smartphone/Tablet/TV bei der Nachfrage bestätigen, dass du dem Zertifikat, das selbst signiert ist, weshalb die Nachfrage kommt, vertraust.
Hallo, vielen Dank für die tolle Anleitung. Nachdem die aktuelle OwnCloud Version nicht mit den aktuellen Apps und einem SSL Zertifikat läuft, habe ich nun seafile probiert. Lief auch kurz ganz nett. Doch nach einem Neustart nicht mehr. Zum einen werden die .sh Services nicht mit gestartet, trotz eintrag im crontab -e und zum anderen kann ich seitdem Seafile nicht mehr aufrufen und kommen nicht mehr über den Browser drauf. Was läuft da schief?
In den Logs steht nichts was mir hilft. Ich weiss einfach nicht weiter. Langsam frustriert der PI nur noch.
Hast Du eine Idee?
Ich erhalte auch keinen 502 error, sondern einfach nichts.
„Diese Website ist nicht verfügbar“.
Dann würde ich darauf tippen, dass du bei nginx einen Fehler gemacht hast. Kannst du nginx denn händisch starten?
sudo /etc/init.d/nginx start
Hi! Bei mir dasselbe…
Kein 502 Error, sondern:
„Diese Webseite ist nicht verfügbar.
ERR_CONNECTION_TIMED_OUT“
Habe es bereits komplett erneut versucht…
Wenn ich im Browser https://192.168….:8001/ eingebe komme ich auf die Anmeldeseite von Seafile.
Nur wenn ich die DynDns Domain eingebe kommt das o.g. Problem.
Hallo Jan, ich habe nach deiner Anleitung seafile mit nginx und ssl installiert und den Benutzer seafile mit einem Passwort belegt. Ich habe auch seafdav (webDAV) eingerichtet. Es funktioniert alles bestens und ich kann kleine Dateigrößen ohne Probleme von meinem iPhone ins webdav synchronisieren. Will ich aber Fotos hochladen, wird das Uploaden nicht durchgeführt und bricht ab. Ich habe schon als Benutzer seafile die seafile.conf um den max_upload und max_download Bereich mit 200 MB ergänzt. Trotzdem bricht der Upload ab. Kennst du eine Lösung?
Andreas
Hallo Jan,
ich habe es selbst rausgefunden. Es hat mit der seafile.conf und max_upload bzw. max_download nichts zu tun.
Für alle, die die gleichen Probleme haben, meine Lösung:
1, als Benutzer pi
sudo nano /etc/nginx/sites-available/seahub
2. nach dem ersten Absatz (unter dem Bereich)
server {
listen 8001;
ssl on;
….
error_page 497 …
und vor
location / {
fastcgi_pass 127.0.0.1:8000;
die folgenden 2 Zeilen einfügen:
# Max upload size
client_max_body_size 2G;
3. speichern: STRG + X, Y und darauffolgend Enter
4. sudo /etc/init.d/nginx restart
Hallo Jan, am 17. Juli hatte ich eine Frage zur Seafile Installation/Konfiguration. Ich wollte kurz Rückmeldung geben, wie sich deine Vorschläge auswirkten. Du schlugst vor die entsprechenden Routerfreigaben zu prüfen. Ich glaube sämtliche Ports waren aber zu dem Zeitpunkt schon weitergeleitet, weswegen ich an der Stelle erstmal aufgab. Zwischenzeitlich ist eine aktualisierte Version von Seafile heraus und ebenso sah ich, dass auch du deine Anleitung noch im August überarbeitet hattest. Das veranlaßte mich dazu es noch einmal zu probieren. Ich löschte also den User Seafile mit sudo deluser –remove-home seafile und installierte anschließend erneut gemäß deiner Anleitung. SSL ließ ich der Einfachheit halber wieder weg. Und diesmal klappte es auch mit dem Hochladen von Dateien. An einem Punkt hapert es allerdings noch: will ich andere User einladen bekomme ich die sinngemäße Meldung E-Mail konfiguration sei nicht richtig konfiguriert. Bei meiner Rechersche kam ich dann auf folgenden Link: http://www.nerd.junetz.de/blogbox/index.php?/archives/1323-Seafile-auf-dem-Raspberry-Pi-Setup-und-Betrieb-mit-Huerden.html. Das war für mich als Linux-Anfänger einfach eine Nummer zu schwierig. Hättest du einfachere/verständlichere Antworten zur Thematik zu geben?
Ich glaube du machst es schwieriger als es ist 😉 Im Seafile Manual ist das ebenso beschrieben. Du musst eigentlich nur die Zugangsdaten zu einem E-Mail Adresse eintragen – wie bspw. auch in in Microsoft Outlook.
Hi, ich habe wie beschrieben in der Datei /home/seafile/seahub_settings.py folgende Zeilen hinzugefügt. Das einzige, was dort in dieser Datei stand war diese Zeile mit dem Secret-Key. Kann diese Zeile gelöscht werden?
SECRET_KEY = „xyzabc“
EMAIL_USE_TLS = True # use TLS
EMAIL_HOST = ‚mail.gmx.net‘ # smpt server
EMAIL_HOST_USER = ‚[email protected]‘ # username and domain
EMAIL_HOST_PASSWORD = ‚passwort‘ # password
EMAIL_PORT = ‚465‘ # smtp-port
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
SERVER_EMAIL = EMAIL_HOST_USER
Logge ich mich dann als admin ein und klicke dann auf „Kontakte“, dort dann auf +Kontakte hinzufügen, so poppt ein Dialog mit drei Eingabefeldern auf (E-Mail, Name, Notiz). Gebe ich dann eine gültige E-Mail dort ein und klicke „Absenden“ an, so erscheint oben kurz ein kleines grünes Kästchen mit dem Inhalt „[email protected] wurde erfolgreich den Kontakten hinzugefügt“. Leider kommt diese Mail nie an, sodaß der Adressat die Einladung nicht „akzeptieren“ kann…
Laut http://manual.seafile.com/config/seahub_settings_py.html könne man noch in der Datei /home/seafile/logs/seahub.log nach möglichen Fehlern suchen, was ich auch getan habe. Dort finde ich folgendes:
2014-09-01 14:25:27,477 [ERROR] seahub.views.sysadmin:657 user_add (535, ‚Authentication credentials invalid‘)
Kannst du mir da weiterhelfen? Vielen Dank.
Habe auf die Schnelle was im Debian Forum gefunden, was dir weiterhelfen könnte 😉
Hallo Jan und Blog Community:),
erstmal großes Lob für deinen hilfreichen Blog bis hierhin.
Ich hoffe du kannst mir an einem Punkt weiterhelfen, dar ich nicht weiterkomme. Habe auch bereits schon einmal von vorne begonnen um jegliche Fehler sicher vermieden zu haben, deshalb frage ich nun in letzter Instanz um Rat.
Und zwar bei Step 5:
Nachdem ich das Setup mit “ ./setup-seafile.sh “ gestartet habe, durchlaufe ich es bis zum Schluss. Dort angekommen, bekomme ich dann immer gesagt, dass das Verzeichnis nicht angelegt werden konnte.
Bei mir handelt es sich um eine externen Usb-Stick den ich vorher wie von dir erläutert( https://jankarres.de/2013/01/raspberry-pi-usb-stick-und-usb-festplatte-einbinden/ ) eingebunden habe.
Das einbinden des Usb-Sticks habe ich als Root gemacht und nicht mit dem neu angelegten User „seafile“. Daran wirds wohl schonmal nicht liegen?!
Fstab habe ich auch bearbeitet um den Stick immer wieder automatisch einzubinden und um die nötigen Rechte für den Schritt zu erhalten wie du hier schonmal betont hast.
Was mir auffiel ist das meine Uuid im Verhältnis zu anderen „Ellbogenlang“ ist, aber das nur als laie dahingestellt^^
Naja…ich hoffe das ist genug Info um mir weiterhelfen zu können:)
Gruß
Vielleicht ist auch hier der Fehler?
Habe statt „pi“, „seafile“ eingetragen, dar ich mit diesem anschließend Schritt 5 ausführen wollte.
Das sähe dann eben so aus:
NTFS:
sudo mount -t ntfs-3g -o uid=seafile,gid=seafile /dev/sda1 /media/usbstick/
Verstehe ehrlich gesagt auch nicht wieso du an dem Schritt „pi“ genutzt hast, wenn du doch im Terminal mit dem user „seafile“ aufs Speichermedium zugreifen willst.
„Das einbinden des Usb-Sticks habe ich als Root gemacht“ – das könnte schon die Fehlerquelle sein. Hat den der Benutzer seafile den Schreibrechte auf der externen Festplatte (siehe auch Kommentar von Kaktus)?
Hm, also ich glaube nicht…
Wie erfahre ich denn ob der angelegt User die benöigten Rechte hat
und wie weise ich ihm diese ggfs zu?
Grüße
Hab das Problem inzwischen gelöst indem ich dem Verzeichnis rw Rechte zugewiesen habe mit “ chmod 777 /media/usbstick „.
Aber eine letzte Sache ist jetzt noch und zwar werden Ordner nicht synchronisiert.
Also hoch und runterladen vom Web-Browser aus kein Problem, aber wenn ich mich mit dem Client einlogge klappts nicht, bei informationen steht nur die nüchterne Info “ Verbindung wird hergestellt…“.
Bin absolut ratlos an diesem Punkt. Ports offen, Dyndns ok …hm
Und eine andere Frage: Bei der Nginx installation ratest du die max Prozesse für den raspi einzuschränken. Was denkst du wäre für den BananaPi empfehlenswert?
Hatte einen Zahlendreher bei den Ports…arrrrg:D
Alles klar dann…letztere Frage wäre dann noch wissenswert, wenn du mir daszu was sagen könntest wäre echt toll.
Für eine Benutzung innerhalb einer kleinen Familie sollte der zweifache Wert vom Raspberry Pi ausreichen sein, und folglich würde ich diesen auf dem Banana Pi verwendet.
Hallo Jan,
leider habe ich Seafile ausversehen mit dem Pi Benutzer, anstatt mit dem extra dafür angelegten User installiert und auch ssonst scheint nicht alles zu stimmen.
Wie kann ich Seafile deinstallieren?
Danach möchte ich es neuinstallieren.
Vielen Dank für deine Hilfe.
Wenn auch noch andere Fehler vorhanden sind, würde ich an deiner Stelle gleich ganz neu aufsetzen. Wenn nämlich wieder ein Problem auftritt kannste schonmal sicher sein, dass dieser nicht vom vorherigen ausgeht.
Hey Jan,
ich hab das Problem wenn ich meine Festplatte einbinde hat der Nutzer seafile keine Rechte sie zu lesen bzw zu schreiben, leider verstehe ich das mit der rechte Verwaltung nicht.
hab auch schon versucht bei ubuntuwiki es zu verstehen aber finde die setzen schon zu viele Grundkenntnisse voraus.(oder ich steh total auf der Wlan-Leitung ;D )
Könntest du mir bitte schreiben wie ich es hinbekomme das seafile die nötigen rechte bekommt
Mit freundlichen Grüßen
Micha
Beim Einbinden in fstab steht im Tutorial
uid=pi,gid=pi
. Dort musst du den richtigen Benutzernamen (anstatt pi) einsetzen. In dem Fall seafile. Dann sollte es laufen 🙂Hey meinst du ,,sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda /media/usbstick/,, dort den namen ändern oder soll ich in den fstab das ganze so eintragen ,,mount -t ntfs-3g -o uid=seafile,gid=seafile /dev/sda /media/usbstick/,,
Verwirrung, hast recht. Meine Antwort bezog sich natürlich nicht auf fstab, sondern auf den mount Befehl.
Lieber Jan,
und wieder stieß ich auf Steine, die mich ins wanken bringen…ich hoffe ich kann die balance lange genug halten;-)
Das Problem stellt sich als dieses dar: Lade ich mehrere beliebig Große Dateien, gleicher-, oder unterschiedlicher Dateisysteme hoch, so schlagen alle außer dem ersten mit “ Bad Request“ Fehl.
Daraufhin habe ich den Pi übers Terminal einmal neugestartet und plötzlich kam ich nicht mehr ins Webinterface. Es heißt “ 502 Bad Gateway…nginx“.
Was tun?
Error 502 sollte in dem Fall bedeutet, dass Seafile und/oder Seahub nicht läuft.
[…] would like to thank Jan Karres for his guide. I found it when I was cruising the internets looking for help setting up my […]
Hallo Jan,
vielen Dank für dein umfangreiches Tutorial, es hat mir bei der Einrichtung meines Seafile-Servers sehr geholfen.
Allerdings habe ich jetzt folgendes Problem. Beim Zugang zum Webinterface via SSL bekomme ich dieses nur im Textmodus zu sehen – es sind keine Grafikelemente vorhanden.
Ich betreibe mein System mit einer USB-Festplatte, die unter „/share“ gemounted ist. Auf dieser Platte befindet sich auch das Home-Verzeichnis des Benutzers „seafile“. Deshalb habe ich den „media“-Pfad in der Datei „/etc/nginx/sites-available/seahub“ entsprechend angepasst :
location /media {
root /share/seafile/seafile-server-latest/seahub;
}
Meiner Meinung nach ist das der einzige Verweis auf die media-Dateien oder habe ich da einen Denkfehler ?
Kannst du mir bei diesem Problem helfen ?
Im Tutorial habe ich es auskommentiert, da es in den aktuellen Version von Seafile bei mir nur noch ohne extra Definition richtig lief.
Super, Danke !
Jetzt funktioniert alles.
Hey Jan,
vielen Dank für das tolle Tutorial.
Wie kann man den seafile-data Ordner im Nachinein verschieben?
Bzw. ich möchte meine Seafile-Data nun auf einer anderen Platte speichern, wie ändere ich den Pfad?
Ich konnte hierzu nichts in der offiziellen Anleitung von Seafile finden.
Hallo Jan,
vielen Dank für deine tollen Tutorials.
Ich habe jetzt auch seafile anhand deiner Installation auf meinem RasPi installiert.
Ich habe über den Client auch schon einige Bibliotheken hinzu gefügt, was auch sehr gut funktioniert hat.
Wenn ich jetzt in eine dieser Bibliotheken Dateien über das Web-Interface hinzu fügen möchte, startet der Upload ganz normal, jedoch am Ende der Übertragung kommt „Bad Request“.
Hast Du eine Idee woran das liegen könnte?
Danke
Tomas
Schau mal in das Seafile Google Forum. Das Topic könnte dir weiterhelfen.
Ich habe es jetzt auch selber lösen können. Die Bersion 3.1.4 hatte diesen Fehler. Mit Version 3.1.6 ist dieser Fehler behoben worden, aber leider auch ein neuer hinzu gekommen 🙂
Ich habe mir jetzt einen BananaPi bestellt und werde damit wohl auf Owncloud umsteigen.
Wenn ich das richtig verstehe und die Raspian 4 BananaPi Distribution installiere, sollten sich doch alle Anleitungen auch auf den BananaPi übertragen lassen?
Vollkommen richtig.
Vielen Dank! Sehr klar beschrieben und einfach zu folgen. Weiter so 🙂
Hi erstmal danke für die tolle Anleitung.
Ich habe aber eienenFehler gemacht, und zwar habe ich bei dem Speicherort nicht /seafile-data hinten dran gehängt. Jetzt speichert er es aber nicht am angegeben Ort, sondern im Installationspfad, der auf der SD Karte liegt.
Wie kann ich das nachträglich ändern?
Danke,
Markus
Ich denke das kannst du unter /home/pi/seafile/ccnet/seafile.ini anpassen und musst mittels mv den Ordner entsprechend verschieben. Neustarten von Seafile und Sehhub nicht vergessen.
Hallo Jan,
mit Deinen tollen Turorials habe ich bislang meinen Pi prima in den Griff gekriegt.
Aber bei der SSH Variante für Seafile scheitere ich schon einige Zeit.
Ich habe alle Einstellungen wie in Deinem Tutorial beschrieben gemacht, aber über Step 9 komme ich nicht hinaus.
Seit ich in der seahub_settings.py HTTP_SERVER_ROOT mit FILE_SERVER_ROOT ersetzt habe (ich benutze Version 3.1.6) bekomme ich wenigstens die Meldung: Error:Seahub failed to start.
Eine Fehlermeldung aus der Dateo var/log/nginx/seahub.error.log aus der Datei habe ich zwar gefunden, verstehe ich aber nicht:
[error] 2167#0: *35 upstream timed out (110: Connection timed out) while connecting to upstream, client: 218.30.118.79, server: my_dyndns.server, request: „GET / HTTP/1.1“, upstream: „fastcgi://127.0.0.1:8000“, host: „84.160.248.136:8001“
DynDNS habe ich eingerichtet -läuft, SSH-Zugriff von extern auf den Pi auch.
Alle angebenen Ports vom Router sind freigegeben, bzw. weitergeleitet.
Hast Du eine Idee?
Woher nimmst du, dass man HTTP_SERVER_ROOT mit FILE_SERVER_ROOT ersetzt soll?
Habe ich hier gefunden:
http://manual.seafile.com/deploy/https_with_nginx.html
Dort steht:
You need to add a line in seahub_settings.py to set the value of FILE_SERVER_ROOT (or HTTP_SERVER_ROOT before version
3.1)
FILE_SERVER_ROOT = ‚http://www.myseafile.com/seafhttp‘
Bevor ich das geändert habe, ist nach dem Start von Seahub mit der start-fastcgi Option nichts (erkennbares) passiert.
Interessant, dass dieser Parameter anscheinend umbenannt wurde. Mit meiner Anleitung habe Seafile 3.1.4 hier am Laufen – einwandfrei. Folglich würde ich dir raten es einfach noch mal zu probieren, da ich annehme, dass du irgendwo während des Tutorials etwas falsch gemacht hast, ich jedoch keine konkrete Idee habe wo.
Hallo Jan,
nach einiger Zeit habe ich nun die Ursache gefunden, warum die start-fastcgi Option bei mir nicht funktionert hat. Grund war das Loopback device. Die Adresse 127.0.0.1 war down, mit Ping nicht erreichbar. In der Datei /etc/network/interfaces war der Eintrag dazu zerschossen.
Der Eintrag sollte so lauten (ist, glaube ich, default):
auto lo
iface lo inet loopback
Danach habe ich die von dir beschriebenen Änderungen für die fast-cgi option (kenne ich inzwischen fast schon auswendig) nochmal gemacht – lief sofort.
Nochmals Dank für Deine Hilfe
Zum wiederholten mal startet Seafile beim booten nicht. Daher habe ich folgendes Script /etc/init.d/seafile erstellt und mit chmod 750 ausführbar gemacht. Anschließend mit ‚update-rc.d seafile defaults‘ aktiviert. Alles ok so?
### BEGIN INIT INFO
# Provides: seafile
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts/ Stops seafile and seahub
# Description:
### END INIT INFO
export USER=’seafile‘
eval cd ~$USER
# Check state
case „$1“ in
start)
su $USER -c ‚/home/seafile/seafile-server-latest/seafile.sh start‘
su $USER -c ‚/home/seafile/seafile-server-latest/seahub.sh start-fastcgi‘
;;
stop)
su $USER -c ‚/home/seafile/seafile-server-latest/seafile.sh stop‘
su $USER -c ‚/home/seafile/seafile-server-latest/seahub.sh stop‘
;;
*)
echo „Usage: /etc/init.d/seafile {start|stop}“
exit 1
;;
esac
exit 0
[…] https://jankarres.de/2013/06/raspberry-pi-owncloud-alternative-seafile-server-installieren/ (German) […]
Hallo Jan,
kannst du mir einen Tip geben, wie man es bewerkstelligen kann, dass
Seafile nicht über http://Domain:8001 sondern über http://sub.Domain.tld
aufgerufen werden kann?
Danke
Hallo Jan,
also soweit hat alles geklappt mit dem Einrichten von Seafile, dann aber häuften sich die Probleme:
1. Die optionalen Schritte (ab 7.) klappen bei mir überhaupt nicht. Beim öffnen des Ordners ccnet kommt die Meldung „permission denied“ und der Ordner ist leer. Will ich selber die ccnet.conf erstellen, wieder permission denied. Dazu muss ich sagen, dass ich ein Linuxanfänger bin.
2.Mir war es schon möglich, per Webbrowser vom PC auf den Server zuzugreifen, aber nach kurzer Zeit bricht die Verbindung zum Server ab, ist also sehr instabil. An der Verbindung kann es nicht liegen, da ich immer ohne Probleme per RDP auf den Pi zugreife (ich mache RDP zu, wenn ich per Webbrowser auf Seafile zugreifen will). Ich kann auf Clientseite (Windows) keine Konten anmelden (Virenscanner, Firewall ist ausgeschaltet). Zunächst kam öfter die Meldung „Netzwerkfehler: Verbindung verweigert“, dann dauert es zu lange, ein Konto anzumelden (wenn das der Fall ist, kann ich auf nicht mehr per Webbrowser auf den Server zugreifen). Reboot des Pi bringt auch nichts. Dann dachte ich, starte ich Seafile und Seahub manuell: „Seafile controller is already running“, beim Start von Seahub kommt aber die Meldung: „/home/seafile/ccnet/seafile.ini not found“.
Also irgendwie bin ich hilflos… Vielleicht kannst du oder irgendjemand mir weiterhelfen…
Danke
Das sieht mir ganz nach einem Rechteproblem aus. Ich würde mal tippen, dass du, entgegen der Anweisung, die Dateien nicht mit dem Benutzer seafile heruntergeladen hast. Versuch es am besten noch mal 😉
Auf der Suche nach einer Lösung für das Problem ‚Seafile WebDAV via SSL‘ bin ich auch hier auf dieselben, unbeantworteten Fragen gestoßen. Nun habe ich selbst die Lösung gefunden, die – wie meist – sehr einfach ist, und wie häufig sehr schwierig zu finden ist. Das gute daran ist, dass man unterwegs immer etwas neues lernt. Also: die Konfiguration ist so, wie im Seafile-Manual beschrieben, korrekt. Die für den nginx/SSL angegebene Location-Sektion kommt übrigens in der Datei /etc/nginx/Sites-available/seahub in den Server-Listen-8001-Block, den wir oben schon editiert haben. Allerdings betreiben wir hier unseren ‚Jan‘-Server über Port 8001. Deshalb muss der Client sich über die Adresse https://:8001/seafdav verbinden. Aber überall, wo in der Konfiguration gem. Manual 8080 steht, nichts ändern! Mit iOS hat’s so geklappt.
Hallo Herr Karres,
es funktioniert alles sehr gut. Aber wie kann ich einen weiteren User anlegen? Ich möchte nicht, dass mein Sohn meine seafile-Zugangsdaten verwendet um sich mit dem Browser oder mit einer App an seafile Server anmeldet.
Irgendwie fehlt unter seafile die Funktion „Benutzer hinzufügen“!
Vielen Dank im Voraus.
Über die Zange oben rechts im Webinterface kommst du zum Adminbereich, wo du neue Benutzer anlegen kannst.
Hallo Zusammen,
Jans Anleitung habe ich auf einen Cubietruck umgesetzt. Erst mal ohne SSL und mit seafile-3.1.6. Beim Starten wirft seahub einen Fehler:
seafile@Cubian:~/seafile-server-3.1.6$ ./seahub.sh start 8000
Starting seahub at port 8000 …
Error happened during creating seafile admin.
Loading ccnet config from /home/seafile/ccnet
Loading seafile config from /home/seafile/seafile-data
Seahub is started
Done.
Mit Sudo unter cubie klappt Alles ohne Probleme:
cubie@Cubian:/home/seafile/seafile-server-3.1.6$ sudo ./seahub.sh start 8000
Starting seahub at port 8000 …
Loading ccnet config from /home/seafile/ccnet
Loading seafile config from /home/seafile/seafile-data
Seahub is started
Done.
Wie muss ich vorgehen um den Fehler einzugrenzen oder kennt jemand bereits eine Lösung?
Danke Gruß Katja
Du scheinst ein Rechteproblem zu haben, da du wahrscheinlich von der Anleitung abgewichen bist. Wenn du nicht, wenn man nicht genau weiß wie man vorgeht, aufwändig suchen möchtest würde ich dir empfehlen es einfach nochmals neu zu versuchen.
Hallo zusammen,
bin auf der Suche nach einer Owncloud-Alternative auf dieses Tutorial gestoßen und …großes Lob für die gute Erklärung 🙂 ! Ich würde mich eher als pi-Anfänger bezeichnen und würde gerne wissen warum wir für seafile extra einen neuen Benutzer anlegen.
LG Florian
Das hat mehrerlei Gründe. Einerseits ist es sinnvoll für Anwendungen verschiedene Benutzer zu haben, sodass sie abgeschotteter sind und im Falle eines erfolgreichen Angriffes weniger Schaden anrichten können. Andererseits, was in diesem Fall eher interessant ist, baut Seafile eine Dateistrukrur ein Ebene unterhalb der Serverdateien auf, welche sowieso in ein Ordner zum Bündeln benötigt werden würde, weshalb sich da gleich ein Benutzerordner anbietet. Sprich: Zwingend notwendig ist dies nicht, es schadet jedoch auch nicht.
Erst mal vielen Dank für die Anleitung, die http-Variante habe ich schnell und problemlos zum laufen bekommen.
Ich hätte aber noch eine prinzipielle Frage:
Ich lasse habe Seafile jetzt unter raspbmc zu laufen, will den Pi also auch zum Videos gucken nutzen. Gibt es irgend eine Möglichkeit, auf die in Seafile gespeicherten Videos von XBMC aus zuzugreifen? Sonst müsste ich mir ja gewissermaßen einen Client installieren, um auf dem Pi die Videos zum einen auf dem Server, desweiteren aber auch für das Abspielen zur Verfügung zu haben.
Ohne Client geht es leider nicht, da der Seafile Server die Dateien in Blöcken speichert.
[…] Der erste Teil der eigenen Cloud ist geschafft. Mit Hilfe von Bittorent Sync können wir nun einzelnen Dateien zwischen verschiedenen Rechnern, Laptops und Smartphones synchronisieren und bei Bilder der Smartphone Kamera automatisch auf unseren Rechner sichern lassen. Um unsere Cloud nun noch funktionaler zu machen installieren wir als nächstes die Dropbox Alternative Seafile. Mit Seafile können wie bei Dropbox auch Ordner bzw. Links über die App und eine Weboberfläche freigegeben werden. Somit können auch Dateien mit Nutzern geshared werden, die eben keine BTSync verwenden. Die Anleitung für die Seafile Installation stammt auch von Jan Karres. […]
Hallo Jan,
hatten letzte Nacht einen Stromausfall, seitdem Neustart habe ich jetzt folgendes Problem, dass mir unter eingabe der Domain im Browser „502 Bad Gateway“ ausgegeben wird.
Wurde etwas zerstört oder bedeutet das in diesem Fall, dass ich etwas falsch konfiguriert habe und wenn ja, was kann ich tun um das System wieder zum laufen zu bringen und gegen solche Fälle in Zukunft gewappnet zu sein?
Liebe Grüße
Sollte nicht der Fall sein nach einem Stromausfall. Sieht so aus als würde Seafile oder Seahub nicht laufen. Versuch doch mal Step 6 wie auch ggf. Step 9 auszuführen und schau ob es dann klappt.
Hallo, wenn ich Seafile auf einem VPN Server laufen lasse, benötige ich doch keine SSL Verschlüsselung? Ich logge mich per VPN auf meinem Raspberry ein, dann verbinde ich mich mit dem Iphone App auf die lokale IP Adresse. Oder entsteht so irgendwie eine Sicherheitslücke?
PS: Die Anleitungen hier sind wirklich sehr gut!
Hi,
du musst mich missverstanden haben, denn ich ließ Seafile über kein VPN Server laufen.
Nichtsdesto trotz war das Problem einfacher als gedacht zu lösen, nämlich mit dem einfach Start von seahub.
Ich glaube, dass er den Crontab den wir ja in deinem Tut angelegt haben, aufgrund des Netzausfalls nicht als reboot registriert hat und infolge nicht ausführte?!
Weißt du entsprechende Befehle um auch dann noch sehub und seafile automatisch starten zu lassen?
Dar ich oftmals auch nicht dahim bin um dies manuell ausführen zu können und somit unterwegs auf meine Daten verzichten müsste:/
Lg
Muss mich korrigieren: ich habe feststellen müssen das der Cronjob prinzipiell nicht funktionieren tut.
Dabei habe ich bereits beachtet das seahub verzögert starten muss.
Habe den selben Job auch als root probiert aber auch so startet er seahub beim restart nicht.
Bei mir schaffte Ablösung indem ich den Pfad von seafile.sh mit /home/seafile/seafile-server/seafile.sh…, ersetzt habe, also ohne ” -latest ” an ” seafile-server “.
Habe die Lösung von einer anderen Seite, vllt solltest du dies ggfs. in deinem Tut anpassen.
Das ist bzgl. der einfachen Updatefähigkeit keine gute Idee und sollte allgemein nichts an dem Problem ändern.
Wenn du die Verbindung immer über VPN laufen lässt passt das ebenso.
Frage um allgemein schlauer zu werden:
Warum erstelle ich den No-IP-Crontab als Benutzer „Pi“ und den Seafile-Crontab als Benutzer „Seafile“? Welcher Sinn steckt dahinter?
Für Seafile haben wir, damit es etwas abgeschotteter von anderen Anwendungen ist, eben einen eigenen Benutzer angelegt. Könnte man theoretisch auch für den No-IP Client machen.
Hallo Jan, vielen Dank, dass ich Deine Zeit in Anspruch nehmen darf und für Deine ausführliche Installationshilfe, somit war ich in der Lage als Linux-Dummy Seafile zu installieren.
Ich betreibe den Seafile 3.7-Server auf einem BananaPi mit einer 128 GB ssd-Platte auf der seafile-data liegt.
Mit dem Windows-Client konnte ich eine 4,4 GB Datei in ca. 10 min. auf den Server synchronsieren.
Beim Upload über den Browser komme ich auf 1,5 MB/s
Was mich aber geschockt hat, war eine Downloadzeit mit Firefox über https von 20 Stunden.
Was muss ich ändern, damit ein akzeptabler Download über einen Browser erreicht wird.
Vielleicht hast Du ja einen Tipp parat.
Viele Grüße Wolfgang
Der Banana Pi ist in seiner Leistung beschränkt und für den 24/7 Betrieb ist eine SSD außerdem nicht zu empfehlen. Außerdem ist die Geschwindigkeit durch dein Netzwerk bedingt. Ich weiß nicht was du als „Browser“ im Verglich zu „Firefox“ nennst, aber letztere Upload Geschwindigkeit ist atypisch.
Hi!
Erstmal ganz herzlichen Dank für Deine Mühe und das tolle Tutorial. Mit dessen Hilfe (und den Erklärungen eines Info-Kommilitonen) hab es ich geschafft Seafile zum Laufen zu bringen.
Ein Problem habe ich allerdings noch: Mein SSL-zertifikat.
Gibt es eine Möglichkeit, dieses so einzurichten, dass nicht mehr dieser Hinweis kommt?
Die Windos-Phone App muckt da nämlich rum und ich kann die Meldung dort nicht ignorieren.
Am PC nervt das auch ein wenig…
Würde mich sehr über eine Antwort freuen.
Beste Grüße
Philipp
Dazu brauchst du ein fremdsigniertes signiertes Zertifikat. Wenn den Windows Phone dieses Akzeptiert ist in dem Artikel Kostenloses SSL Zertifikat bei StartCom StartSSL erstellen beschrieben wie du ein solches bekommst. Ansonsten lassen diese sich ab ca. 10€ im Jahr auch bei anderen Anbietern erwerben.
Hallo Jan,
eine sehr schöne Anleitung. leider bleibe ich immer wieder bei Punkt 15 stecken. kein Browser findet die IP oder domain von no-ip. Habe sämtliche ports frei gegeben und alle schritte zuvor bis auf die verschlüsselung exakt so durchgeführt. Irgend eine Idee? de suche hat mir bisher leider nichts brauchbares geliefert.
Du hast die Ports sicher als TCP auf dem Raspberry Pi weiterleitend freigegeben?
Hallo Jan,
Ich benutze Seafile schon ein Weile im heimischen Netz (dank deiner Spitzen-Anleitung :). Nun versuche ich seit einer Weile vergeblich SSL zu Laufen zu bringen (also ab Step7). Ich bekomme immer die Fehlermeldung bei Step 9 „Error:Seahub failed to start.“. Ich habe die Prozedur, getreu der Anleitung mehrfach wiederholt, um mögliche Fehler auszuschließen (inklusive Raspian-Neuinstallation), bleibe aber immer da hängen.
Hast du eine Idee, was ich anders machen muss?
Ich bekomme bei Software Installationen und upgrades immer eine Fehlermeldung zu locale settings. Kann das damit zu tun haben?
Ich melde mich, weil ich wirklich schon ewig herum probiert habe.
Noch frohe Weihnachten,
metro
Werfe doch einmal einen Blick in /home/seafile/logs/seahub.log. Dort solltest du eine konkretere Fehlermeldung finden.
Vielen Dank für Dein super Tutorial!
Bei mir klappt der cronjob nach reboot nur wenn ich folgendes als user ’seafile‘ in die crontab schreibe (mit SSL):
@reboot /bin/sleep 20 && /home/seafile/seafile-server-latest/seafile.sh start && /home/seafile/seafile-server-latest/seahub.sh start-fastcgi
Es sieht so aus, als würde trotz korrekter PATH Variable der Befehl sleep nicht gefunden und damit stoppt wegen der ‚&&‘ die weitere Abarbeitung.. mit ‚/bin/‘ vor dem sleep klappt es endlich auch automatisch nach reboot 🙂
Hallo Jan,
danke erstmal für die tolle Anleitung. Ich habe bereits ein zwei andere ausprobiert und nicht ans laufen bekommen 🙁
Bei deiner auf anhieb.
Jedoch hab ich ein Problem und eine Frage.
Das Problem:
Ich habe mittels deiner Anleitung einen 64GB USB Stick eingerichtet und dieser wird automatisch gemountet. Nach einem Neustart sind jedoch keine Daten mehr zu finden.
Folgende Fehlermeldung finde ich in der seafile.log
../common/block-backend-fs.c(347): Failed to link /media/usbstick/seafile-data/storage/blocks/0e7f4d7f-dee7-48b6-b1c4-a62cda9a9a34/
Kann mir leider keinen reim drauf machen.
Jetzt zur Frage:
Man munkelt das man Seafile auch per WebDAV erreichen kann? Im Netz finde ich jedoch keine passende antwort wie und was ich dafür machen muss.
Hast du da eventuell eine Idee?
Recht herzlichen Dank im vorraus.
Grüße MArkus
Zum USB-Stick Problem: Klingt mir fast so als sei der Stick nach einem Neustart nicht mehr gemountet. Folglich würde ich das noch einmal überprüfen.
Zu WebDAV: Im Seafile Wiki findest du eine passende Anleitung.
Scheitere an Schritt 14: Versuche allerdings auch die 4.0.1 zu installieren. Nur leider komm ich nicht ins Web-Gui. Das mann HTTP_Server_ROOT zu FILE_SERVER_ROOT ändern muss hab ich schon mitbekommen.
Wäre überglücklich wenn du mir einen Tipp geben könntest, sondern wandert der Pi wohl wieder ein paar Monate in die Schublade.
sudo /etc/init.d/nginx start
Starting nginx: nginx: [emerg] unknown directive “ listen“ in /etc/nginx/sites-enabled/seahub:2
nginx: configuration file /etc/nginx/nginx.conf test failed
Da hast du die nginx Site Konfiguration zerhauen. Sprich du hast in Step 12 etwas entgegen des Artikels kopiert. Versuchs doch einfach noch einmal 😉
Hi! Bei mir kommt eine sehr ähnliche Fehlermeldung:
Starting nginx: nginx: [emerg] unknown directive ”server ” in /etc/nginx/sites-enabled/seahub:1
nginx: configuration file /etc/nginx/nginx.conf test failed
Habe es erneut versucht, jedoch ohne Erfolg…
Wie kann ich den Fehler beheben?
Gruß
Jan
Ich kann dir nur den Ratschlag von oben geben. Du wirst beim Kopieren etwas falsch gemacht haben. Versuch den Code doch bevor du ihn in den Terminal kopierst in einem Texteditor zwischen zu kopieren.
Hallo,
danke für die Anleitung. Habe ein Problem mit ssl. Wenn ich den Raspberrypi intern mit https://192.168.2.180:8001
aufrufe ist alles ok. Wenn ich allerdings extern mit über mein no-ip anbieter gehe bekomme ich bei Firefox die Fehlermeldung „Fehler: Gesicherte Verbindung fehlgeschlagen
Ein Fehler ist während einer Verbindung mit bernddd.ddns.net:8001 aufgetreten. SSL hat einen Eintrag erhalten, der die maximal erlaubte Länge überschritten hat. (Fehlercode: ssl_error_rx_record_too_long)“
und bei den Clienten “ Netzwerkfehler im Ablauf des SSL-Protokolls ist ein Fehler aufgetreten. “
Bin sehr sicher, dass ich das Howto genau befolgt habe. Woran kann das liegen?
Installiert habe ich die Seafile in der Version 3.1.7
Gruß Bernd
Das klingt so als sei da beim Erstellen der SSL-Schlüssel was schief gelaufen. Lösche diese doch noch einmal und erstelle sie neu (Step 11)
Moin,
kurze Frage, konnte nichts dazu finden: Ist es (ohne großen Aufwand) möglich, bestehende Dateien Serverseitig in eine Seafile-Bibliothek zu importieren? Ich habe wenig Lust, viele, viele GB an Daten sinnfreier Weise von meinem Wohnzimmer in mein Wohnzimmer hochzuladen … zumal es (wohl noch?) kein LAN-Sync gibt. Ich habe von WebDav gelesen, wobei mir das aufzusetzen für einmaliges Importieren zuviel des Guten scheint.
Danke im Voraus für jede Hilfe, jeden Tipp, Hinweis, was auch immer!
Nein, da Seafile auf einem Git Block System basiert und die Daten dadurch über die Server Software eingespeist werden müssen. Einen entsprechenden Client für den Raspberry Pi gibt es leider nicht.
Hi, ich habe nach Deiner Anleitung Seafile – völlig problemlos! – auf meinem alten Notebook unter Lubuntu eingerichtet, möchte künftig aber einen Banana Pi (oder Pro) für Seafile nutzen. Ist es mir als Linux-DAU problemlos möglich, Seafile komplett umzuziehen? Falls ja: welche Verzeichnisse können/müssen kopiert werden? Ich gehe davon aus, dass ich auf dem Banana erst einmal alles wieder nach Deiner Anleitung einrichte oder dann die existierenden Daten von meiner jetzigen Installation mitnehmen kann. Geht das? Vielen Dank schon mal
Sollte funktionieren. Du musst nur darauf achten, dass alle benötigte über den Paketmanager installierten Pakete auf dem neuen Gerät installiert sind.
Vielen Dank für das Tutorial. Eine Anmerkung:
„mit SSL http://dyndns:8001/“ müsste wohl in „mit SSL https://dyndns:8001/“ geändert werden.
Ich bitte zudem um die Aufnahme eines Tutorials zu Ejabberd auf die Todo-Liste.
Hauke
Danke, ist verbessert!
He danke für deine Anleitung.
Ich habe Seafile auf meinem Raspberry unter /home/seafile installiert und möchte gerne den kompletten Ordner nach /media/usb0 verschieben – kannst du mir ein Befehl dazu nennen?
Desweiteren würde ich gerne wissen wollen, wo meine gesamten Daten, welche ich über die Bibliotheken hochlade, auf dem Raspberry landen……. teilweise finde ich durch Glück Videos die ich hochgeladen habe, aber nie den vollständigen Ordner bzw. alle Dateien.
Ich würde mich über deine Hilfe sehr freuen.
gruß Tobias
Einen Ordner umziehen kannst du mit dem Befehl mv. Die hochgeladenen Dateien wirst du nicht in deren Ursprungsform finden, da Seafile mit einem auf Git basierenden Repository arbeitet, was zur Folge hat, dass diese Dateien in Blöcken verwaltet werden.
Hallo Jan,
habe die Anleitung oben mehrmals akribisch durchgeführt und verwende Seafile nun mit HTTPS Verbindung über eine ddns.net Domain. Die Ports 8000-8001 sind in meiner FritzBox geöffnet und die IP Adresse wird an no-ip.org regelmäßig automatisch gesendet.
Ich kann mich auch problemlos im Browser, iPad, Android, Smartphone und Desktop App (4.1.0 & 4.0.7) einloggen und Dateien über die interne Funktion runterladen (alle Plattformen). Der Sync einer Bibliothek mit einem lokalen Ordner auf dem PC funktioniert allerdings nicht. Da erscheint nur die Meldung: „Verbinde mit Server…“
Hast du eine Ahnung woran das liegen könnte?
Vielen Dank übrigens für die vielen tollen Tutorials!!
Lg,
Matthias
Hast du die HTTPS Sync-Funktion im Seafile Client aktiviert?
Oder hast du evl. eine Firewall lokal auf deinem Computer, die das blocken könnte?
Hallo Jan, vielen Dank für deine ausführliche Anleitung! DynDNS geht ohne SSL wunderbar, auch der Zugriff über den Browser. Wenn ich SSL vorsehe
/home/seafile/seafile-server-latest/seahub.sh start-fastcgi
, bekomme ich im Browser (Chrome und IE) als Anzeige nur Text, keinerlei Grafik. Ich kann mich zwar einloggen, die Symbole/Buttons sind jeoch nur Platzhalter und funktionieren nicht. Der Windows Client funktioniert hingegen auch mit SSL (hochladen, runterladen, Dateien werden auch im Browser aufgelistet).
Bin ziemlicher Anfänger. Hast du eine Ahnung, woran das liegen könnte?
Grüße Moritz
Selbst gefunden 🙂 Von einem früheren Versuch war in der /etc/nginx/sites-available/seahub noch
location /media {
root /home/seafile/seafile-server/seahub;
}
eingetragem. Daher fand alles rund um CSS nicht, da der Ordner nicht passte. Habe dann deine Vorlage kopiert und eingefügt. Jetzt geht es.
Hallo und erstmal danke für den Beitrag.
Ich hab alles exakt nach deiner anleitung gemacht und im heimischen LAN funktioniert auch alles einwandfrei. Jedoch scheitere ich daran einen Zugriff aus dem Internet per DynDNS zu erhalten. Ich habe auch die DynDNS genau nach Plan gemacht, jedoch ist mein Problem wahrscheinlich folgendes: meine FritzBox ist per LAN1 hinter eine Haupt-FritzBox geschalten (Kaskade). Ich habe die Portweiterleitungen auch in beiden FritzBoxen eingerichtet, jedoch befürchte ich, dass der no-ip-client auf meinem Raspi nicht die öffentliche IP-Adresse der Haupt-FritzBox sendet, sondern die IP-Adresse der dahintergeschalteten FritzBox. Und diese wird ja nur durch den Hauptrouter festgelegt (192.168.178.xxx).
Hast du oder jemand anderes vielleicht eine Idee oder einen Tip für mich wie ich mit dem Problem fertig werde?
MfG Peter
Ich melde mein Problem mal selber als erledigt. Habe in der Haupt-FritzBox eine statische Route zur dahinterliegenden FritzBox geschalten. Jetzt funktioniert alles, obwohl ich anfangs keine Daten up-/downloaden konnte. Habe dann in allen relevanten Konfigurationsdateien https://www.meinedomain.net durch https://meinedomain.net ersetzt. Reboot und auf einmal funktioniert alles wie von Geisterhand.
Vielleicht hilft das ja jemanden mit ähnlichen Problemen.
MfG Peter
Kann mir mal jemand helfen?
Ich habe versucht, Seafile auf meinem BananaPro neu zu installieren und als Datenverzeichnis gleich einen Stick anzugeben. Ich habe es probiert, wie Du vorgeschlagen hast (sda durch sda1 ersetzt):
sudo mount -t ext4 -o defaults /dev/sda1 /media/seafilestick/seafiledaten (Verzeichnis ist vorhanden) und auch die Variante, wie hier beschrieben http://blog.doenselmann.com/seafile-daten-auf-externe-festplatte-verschieben/ :
sudo chown -R seafile:seafile /mnt/daten/seafile
sudo mount /dev/sda1 /media/seafilestick
Ich erhalte am Ende des Konfigurationsskripts aber immer folgende Fehlermeldung:
Error occured during setup.
Please fix possible issues and run the script again.
Da ich keine Ahnung habe, weiß ich natürlich überhaupt nicht, wonach ich suchen soll.
Danke schon mal für Hilfe!
Habe natürlich statt
sudo chown das richtige Verzeichnis angegeben
OK, nochmals genau hingesehen: vor der Fehlermeldung steht noch:
Directory /media/seafilestick/seafiledaten/seafile-data cannot be created. Failed to generate seafile configuration.
Das Verzeichnis seafiledaten habe ich auf dem Stick angelegt, welcher auf /media/seafilestick gemountet ist. Wo ist der Fehler?
Niemand? Weiß wirklich nicht, was ich noch probieren soll. Immer die gleiche Meldung „Failed to save config file: /media/seafile/stick/seafiledaten/seafile.conf Permission denied.
Failed to generate seafile configuration“
Wie sehen denn die Permissions auf dem gemounteten Stick aus. Nach meiner Erfahrung muss man im Mount-Befehl selber die permissions und den user setzten.
Bin mir nicht sicher, ob ich richtig vorgehe um das herauszufinden. Ich gehe in das Verzeichnis, in das der Stick gemountet ist, also /media/seafile/stick und gebe dort umask ein, richtig? Antwort ist 0002
„ls -la“ würde dir eine schöne detailierte liste ausgeben welche Berechtigungen für welchen user gesetzt sind.
Hallo, per Mail-Benachrichtigung habe ich noch folgenden Beitrag von Thomas erhalten, der aber hier auf der Seite aus irgendwelchen Gründen nicht auftaucht. Er lautet: „“ls -la” würde dir eine schöne detailierte liste ausgeben welche Berechtigungen für welchen user gesetzt sind.“
Wenn ich das für root ausführe, steht bei dem Verzeichnis, welches sich auf dem gemounteten Stick befindet: drwxr-xr-x 2 root root 4096
Wenn ich es für den Benutzer seafile ausführe, taucht das Verzeichnis gar nicht auf. Fehlen dem Benutzer seafile also die Rechte?
Danke euch
wie Du sieht gehört das Verzeichniss dem User „root“ in der Gruppe „root“ und nur dieser benutzer hat volle zugriffsrecht auf das Verzeichniss (in deinem Fall den Stick)
http://www.raspberrypi-spy.co.uk/2014/05/how-to-mount-a-usb-flash-disk-on-the-raspberry-pi/
Hier steht, wie Du den Stick für einen bestimmten User mountest.
Hier http://www.it-adviser.net/raspberry-pi-usb-stick-oder-festplatte-einbinden/ ist noch mehr interessanter Stoff zu lesen für den mount-Befehl.
Danke für Deine Rückmeldung. Ich habe es bisher nach der Anleitung von Jan probiert und da heißt es für die fstab halt nur
UUID=3241-40CE /media/usbstick/ ext4 defaults 0
Ich habe dann versucht, in der fstab den Eintrag wie in dem von Dir verlinkten Artikel anzupassen. Leider funktioniert es noch immer nicht, beim Booten kommt folgende Meldung:
„An error occured while mounting /media/seafile/stick“
Ich habe folgendes gemacht:
sudo chown -R seafile:seafile /media/seafile/stick
Und in der fstab steht nun:
UUID=efc34e9d-35b6-456f-ad89-b2c7423d5805 /media/seafile/stick auto,users,rw,uid=seafile,gid=seafile 0 0
Der Stick ist ext4 formatiert.
Was habe ich jetzt noch falsch gemacht?
Vielen Dank schon mal
Wenn ich es manuell versuche mit
sudo mount /dev/sda1 /media/seafile/stick -o uid=seafile,gid=seafile
heißt es:
mount: wrong fs type, bad option, bad superblock on /dev/sda1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog – try
dmesg | tail or so
Hä?
Wenn du den Stick schon als ext4 formatiert hast, dann binde den auch als ext4 ein.
Ich sehe in deinem mount befehl nirgends den fs-type.
Lies einfach mal das hier :
http://znil.net/?title=EXT4_Festplatte_am_Raspberry_Pi_mounten_und_formatieren
Ich habe es jetzt mal damit probiert: UUID=… /media/seafile/stick ext4 rw,suid,dev,exec,auto,users,sync 0 0
So geht es. Wenn ich aber uid=seafile aufnehme, gibt es direkt beim Hochfahren schon wieder die Fehlermeldung. Der Benutzer seafile exisitert aber.
Es kann doch nicht so schwer sein, einen einfachen USB-Stick einzubinden. Ich werd langsam irre.
OK, ich habe es jetzt. Die Rechte für den Ordner waren noch falsch gesetzt. Jan könnte vielleicht hier https://jankarres.de/2013/01/raspberry-pi-usb-stick-und-usb-festplatte-einbinden/ auch darauf hinweisen, dass der user seafile zum Besitzer des Verzeichnisses gemacht werden muss. Vielen Dank noch einmal, Thomas
Hallo Jan,
habe mit Deiner Anleitung den Seafile Server auf einem RaspBerry erfolgreich installiert – bin begeistert! 😉
Allerdings würde ich gerne EMail-Benachrichtigungen erhalten, wenn innerhalb des Seafile Systems eine neue Nachricht eingegangen ist.
Leider finde ich die Datei /data/haiwen/pro-data/seafevents.conf die hier http://manual.seafile.com/deploy_pro/configurable_options.html erwähnt wird nicht um die Options EMAIL auf TRUE zu setzen
Ansonsten funktioniert der EMail-Versand z.B. beim der Zustellung eines neuen Passwortes oder der Einrichtung eines neuen Nutzers.
Vielleicht hast Du eine Idee?!
Gruß,
Peter
Schau dir mal diese Seite im Manual an. Evl. bringt sie dich weiter?
Hallo,
ich habe mit der Anleitung den Seafile Server auf einem Raspi mit Volumio installiert. nginx ist also schon installiert.
Ohne SSL läuft es wunderbar, aber mit SSL nicht (Firefox kann keine Verbindung zu dem Server unter 192.168.178.28:8001 aufbauen.).
Änderungen wie von Jan wunderbar beschrieben habe ich durchgeführt:
* /home/seafile/ccnet/ccnet.conf (SERVICE_URL=…)
* /home/seafile/seahub_settings.py (HTTP_SERVER_ROOT=…)
* SSL Zertifikat für nginx ersteltt
* /etc/nginx/sites-available/seahub (server_name …)
Hat da jemand einen Tipp? Als Serveradress etc habe ich es sowohl mit meiner internen IP (192.168…:8001) probiert als auch via dyndns (https://helloearth.ddns.net:8001).
Wobei Dyndns und portforwarding funktioniert. Ich kann problemlos mein Volumio steuern. 😉
Was könnte noch stören? Ich habe nach Jans Anöeitung ebenfalls radicale installiert – aber das nebutzt demnach ja auch andere ports…
Hallo Stephan,
hast du auch /etc/nginx/sites-available/seahub (server_name …) in /etc/nginx/sites-enabled/ verlinkt?
Hallo Jan!
Vielen Dank für deine tollen Tuts!
Als „frischer“ Besitzer eines Raspberry Pi’s, mit wenig Linuxerfahrung, sind die eine große Hilfe!
Allerdings habe ich ein paar Probleme:
1. Schon bei Punkt 2 habe ich „–disabled-login“ weglassen müssen, da bei mir sonst später immer eine Passwortabfrage kommt, obwohl ich nie eins eingegeben habe und mein anderes auch nicht funktioniert. Weiß nicht ob das ein Problem ist, bzw. wie/ob ich danach noch den Login ausschalten kann?
2. Mein größeres Problem hab ich aber bei Punkt 14.
Ich habe mir bei NO-IP eine Adresse angelegt, wenn ich allerdings nach Abschluss der Vorbereitungen darauf zugreifen möchte, geht das nicht.
Gibt es eine Möglichkeit zu überprüfen, was da nicht funktioniert?
Ich habe einen Restart probiert, hat leider nichts geholfen.
Außerdem habe ich dadurch glaube ich noch ein Problem entdeckt, da meine USB-Festplatte nicht mehr unter „/mnt“ ist – also der Autostart wohl auch nicht zu klappen scheint…
Ich hoffe du/ihr könnt mir helfen!
Danke, Jochen!
Zu 1: Du kannst mittels su von bspw. de, Benutzer pi in den Benutzer seafile wechseln. Deswegen benötigen wir in der Regel kein Login.
Zu 2: Hast du, wie am Ende des Artikels beschreiben, die nötigen Ports freigegeben?
Hallo Jan,
vielen Dank erstmal für diese tollen Tutorials.
Nur frage ich mich, in welcher Reihenfolge man deine Anweisungen befolgen soll. Weil du ja hier mit der Seafile Installation anfängst und mittendrin erfährt man, dass man für den Internet Zugang einen externen Hoster braucht und erklärst in einem weiteren Turorial, wie man diesen im RPi einrichtet aber ich weiß gar nicht, was ich zu erst anfangen bzw. beenden soll.
Gleiches gilt für die Speicherung der Daten auf einer externen Quelle. In diesem Tutorial klingt es nämlich so, als ob man den USB Stick etc vorher schon integriert haben sollte, damit man dann den richtigen Pfad angegeben kann.
Wäre schön wenn das gleich im Einführungstext stehen würde.
LG
Edit: Hab jetzt erst DynDNS und den USB Stick eingerichtet. So funktionierts auch…bis zum Schritt 14. Wenn ich dort den Namen oder die IP eingebe bekomme ich immer eine Netzwerk-Zeitüberschreitung. Hab schon versucht, obs am falschen Protokoll in der Portfreigabe liegt. Immer mit dem gleichem Ergebnis
LG
Du kannst die Tutorials linear von oben nach unten abarbeiten. Und wenn du eine Abzweigung zu einem anderen Tutorial nimmst, stellt das keinerlei Problem dar.
Danke für deine Antwort.
Hast du vielleicht eine Lösung für mein zweites Problem mit der Netzwerkzeitüberschreitung?
Versuch doch mal in CMD (Windows) bzw. im Terminal (Linux/Mac OS X) ob du die DynDNS anpingen kannst. Falls nicht denke ich besteht ein Problem am Router.
ping deine.dyn-dns-domain.de
Danke, werde ich machen, wenn ich wieder an dem Punkt bin. Habe nämlich komplett von vorne angefangen, weil ständig ein Passwort vom Benutzer Seafile abgefragt wurde, was ich nie vergeben hatte.
Ich hatte vergessen, den DUC zu installieren. Aber ich musste Seafile im normalen Benutzer pi installieren, weil ich im dafür erstellten immer eine Passwortabfrage bekommen habe, obwohl ich nie ein Passwort vergeben hatte. Jetzt weiß ich aber nicht genau, wie ich den in Step 17 beschriebenen Autostart ändern muss.
Vielen Dank Jan, für dieses sehr gute Tutorial.
LG
Die Anleitung ist wunderbar, allerdings wäre ich sehr dankbar wenn mir jemand bei folgendem Problem helfen könnte. Man kann normalerweise bei Seafile Thumbnails aller in Bibliotheken hochgeladenene Bilder auf dem Server erzeugen. Das funktioniert auch sehr gut und wird im WebClient angezeigt. Die Android App soll das nun auch unterstützen, allerdings habe ich es dort partout nicht hinbekommen, das die Thumbnails vom Server geladen werden. Im Nginx Logfile finde ich dazu auch diverse Fehlermeldungen. Hier wird beim Zugriff über api2/repos//thumbnail… immer der Fehler 404 ausgegeben. Hat das vielleicht jemand irgendwie zum laufen gebracht und kann mir helfen?
Das klingt nach einem sehr spezifischen Problem. Stelle diese Frage am besten mal im Seafile Forum.
Ich habe die Lösung gefunden. Nachdem ich die Version 4.1.2 des Servers installiert hatte gingen die Thumbnails auch in der Android App. Unter iOs gehts weiterhin nicht, wird vielleicht aber auch nicht unterstützt. Das laden der Thumbnails ist extrem langsam, da kommt der Raspberry an seine Grenzen. Die Version 4.1.2 gibts leider nur inoffiziell im Seafile Forum.
Hey habe nach erneutem Reinstall wieder ein Problem:
Alles funktioniert, aber ich kann in der IOs App und im Browser keine Dateien als Thumbnail sehen oder diese herunterladen. Die Seite lädt einfach nicht – keine Fehlermeldung.
An was könnte das jetzt wieder liegen :/
Geht mir ähnlich. Seit einer Neuinstallation von 4.0.6 funktionieren keine Thumbnails mehr. Im seahub.log finde ich diesen Hinweis:
2015-03-29 22:46:26,178 [ERROR] seahub.thumbnail.views:65 thumbnail_create
Es handelt sich wohl um ein SSL Problem. Aber wie wird es behoben?
Stellt diese Frage am besten mal im Seafile Forum. Dort kann euch bestimmt weitergeholfen werden!
Hallo Jan, ich habe dir schon einmal eine Frage gestellt und möchte mich bedanken, dass du diese beantwortet hast.
Eine frage habe ich leider noch – wie ist es mir möglich,nachträglich das Seahub admin Account passwort zu ändern.?
Vielen dank schon einmal
Im Webinterface. Der konkrete Link dazu lautet (IP durch IP-Adresse des Raspberry Pis ersetzen): https://IP:8001/accounts/password/change/
Moin,
da ich mir hier schon das eine oder andere Tut und Denkanstöße geholt habe, wollte ich Danke sagen und eine Klitzekleinigkeit zurückgeben mit diesem Hinweis.
Die Standard LINUX-Server Installationsdatei ist für den raspi anscheinend nicht mehr geeignet, es gibt eine eigene Version hierfür: https://github.com/haiwen/seafile-rpi/releases
Hatte eben die 32Bit LINUX Variante geholt und bin ein Stündchen ungläubig dran verzweifelt 😉 – So muss der nächste da vielleicht nicht mehr durch.
Danke für das Lob. Im Artikel steht „aktuelle Version vom Seafile Server für den Raspberry Pi„, was eindeutig sein sollte 😉
Servus Jan!
Erstmal danke für die gute Anleitung, trotzdem habe ich zwei grundsätzliche, für Dich vermutlich triviale Fragen:
1. Weshalb ist der user seafile in step 2 erforderlich bzw. warum sollte seafile nicht unter dem pi account installiert und betrieben werden?
2. Stattt dem Port 8001 kann ich doch ohne Probleme auch den Standardport 443 nehmen?
Merci!
Zu 1: Schau bitte die Kommentare durch. Wurde dort schon öfter beantwortet.
Zu 2: Ja, sofern er noch nicht anderweitig verwendet wird geht das ohne Probleme.
Danke für die super Anleitung!!!
ich hatte danach das Problem, dass sich die Bibliotheken nicht mit meinem Windows Laptop synchronisiert haben.
Als Tipp für weitere Nutzer: Man muss innerhalb der Einstellung der Client-Software einstellen, dass das https Zertifikat nicht überprüft werden soll (sofern man eine https Verbindung mit eigenem Zertifikat aufbaut)
vllt hilft das dem einen oder anderen noch weiter
Danke! Habe ich im Artikel ergänzt. Das kam erst bei einem der letzten Updates hinzu und ich hatte selbst vor ein paar Tagen das selbe Problem.
Mahlzeit, ich habe mir gerade deine Anleitung durchgelesen und bisher alles verstanden.
Doch bei Step 10 würde mich interessieren, was mit dem privaten Schlüssel und der Request ist, die ich eigentlich erstellen muss. Und wie genau erfolgt die Signatur.
Vielen Dank und Gruß Frank
Ui, das wäre ein Umfang von einem ganzen Artikel das zu erklären. Ich denke recht kompakt und verständlich ist das bei OVH beschrieben.
Eine kleine Anmerkung von mir: Falls ein externes Speichermedium (USB-Stick oder Festplatte) als Speicherort für die Cloud-Daten festgelegt werden soll, ist es sehr hilfreich den Besuchern darauf hinzuweisen, dass der Mountpunkt /media/usbstick von pi-Benutzer erstellt wird und daher der seafile-Benutzer keine Schreibrechte darauf hat. Der Befehl:
sudo chown -R seafile:seafile /media/usbstick/seafile
sollte helfen.
Jain, je nach dem wie es eingebunden ist nicht. Habe folglich mal im Artikel einen Hinweis darauf gegeben. Danke für die Anmerkung!
Hi Jan,
vielen Dank für dieses Tutorial! Und auch super, daß du es so pflegst und anscheinend auch den SSL Teil kürzlich geupdatet hast (SHA256 ist neu oder hatte ich das SHA1 woanders her?)
Ich hätte noch einen Verbesserungsvorschlag wegen dem aktuellen Logjam-Problem:
In /etc/nginx/ssl/ :
$ openssl dhparam -out dhparams.pem 2048
… dauert ne weile auf dem Pi, lässt sich aber auch auf einer anderen Linux-Kiste berechnen.
Und dann in die sites-available/seahub einfügen:
ssl_dhparam /etc/nginx/ssl/dhparams.pem;
Richtig, ich verbessere immer wieder mal die Artikel. Den Hinweis habe ich vernommen, werde ich wenn aber bei allen Artikeln anpassen, was auf die Schnelle nicht geht. Steht aber auf der Todo-Liste 😉
Hallo,
ich habe schon mehrfach den Seafile server erfolgreich auf meinem pi installiert und greife über SSL darauf zu. Nun eine Frage: wie kann ich denn nach der Installation das Password des servers ändern?
Gruß
Dirk
Ich nehme an du meinst das Passwort des Admin-Accounts von Seafile. Dazu loggst du dich in diesen im Webinterface ein und gehst oben rechts auf Einstellungen, um es dort ändern zu können.
Hallo Jan!
Danke für das super Tutorial.
Vielleicht solltest du noch beschreiben, wie man Seafile mit Mysql aufsetzt. Ich habe es bei mir am Raspi installiert und es läuft super schnell und stabil.
Hier ein nützlicher Link: http://www.tecmint.com/install-seafile-in-linux/
Mach weiter so!
mfg Wolfgang
Auch mit SQLite läuft das, zumindest bei meinen 100 GB, völlig stabil.
mich würde auch interessieren, wie man ausgehend von Deiner wirklich sehr gelungenen Installation (DICKES LOB, Jan !!!) auf eine Mysql umswitchen kann. Danke vielmals 🙂
Habe es gefunden: http://handbuch.seafile-server.org/deploy/migrate_from_sqlite_to_mysql.html
Danke für die tolle Anleitung! Habe mittlerweile den Server auf Version 4.2.2 aktualisiert, jetzt funktioniert leider der sync mit dem Windows client nicht mehr (client version 4.1.6 und 4.2.4). Das hat eventuell mit der Umstellung auf http-sync zu tun, kenne mich jedoch zu wenig aus. Hat jemand einen Rat, wie ich den Sync wieder hinbekommen?
Danke
Artur
Selbes Problem hier. Scheinbar muss man nginx noch anpassen, das habe ich aber gemacht. Was ich noch nicht kapiere ist folgender zusatz:
„Der Pfad /seafhttp muss für HTTP-Synchronisation verwendet werden. Er ist im Client hardgecoded.“
–> ist das bei Jan der Fall?
Ui, eine weitere Anleitung die ich aktualisieren muss. Muss ich mir leider erst selbst in Ruhe ansehen.
Hallo Jan,
inzwischen kann man seafile auch so betreiben, dass nur der Port 443 geöffnet sein muss. Allerdings habe ich das selbst noch nicht hinbekommen.
Kannst Du vielleicht Dein Tutorial entsprechend anpassen?
Danke und viele Grüße
Stephan
Ich antworte mir mal selbst. Inzwischen habe ich es selbst geschafft. Folgende Stellen musste ich anpassen:
– nginx Konfiguration: Port anpassen (listen 443). Wenn ich den „location /media“ Teil aus der Beispielkonfiguration aktiviere, läuft leider gar nichts mehr.
– SERVICE_URL = https://www.example.com:443 in ccnet.conf
– FILE_SERVER_ROOT = ‚https://www.example.com/seafhttp‘ in seahub_settings.py
– seafile und seahub neu starten
– nginx neu starten
– Portfreigabe für 443 erstellen und die bisherigen Freigaben für seafile löschen
Ist in Planung 😉
Hallo zusammen,
seit dem Update auf die Version 4.3.1 können keine Dateien über den Webbrowser hochgeladen werden. Unabhängig von Browser und Platform. Es erschein ein Fehler „Unknown error“!? Über den client geht alles. Hat einer eine Idee?
Danke
Viele Grüße
Friesen
Du solltest mal checken, ob in
ccnet/ccnet.conf:
SERVICE_URL = https://www.example.com
und in
seahub_settings.py
FILE_SERVER_ROOT = ‚https://www.example.com/seafhttp‘
stimmen. Ich hatte grade das selbe Problem…
Das Problem habe ich gelöst. Erst irgend ein Datei von dem seafile herunterladen. Der browser meckert über den nicht signierten Zertifikat. Das Zertifikat zu den Ausnahmen hinzugefügen und siehe da, man kann jetzt auch hochladen.
LG Friesen
[…] auch für seafile nginx und sqlite – wie für diese Website. Danke an Jan Karres für das gute Tutorial an dieser […]
Hallo Jan,
leider bekomme ich immer einen SSL Fehler angezeigt…Das zertifikat lässt sich nicht aktzepieren. was kann ich tun?
danke schonmal für deinen blog und deine Hilfe!
Versuche mal den Browser zu schließen (Chrome, Firefox, IE) und Seafile neu aufzurufen. Wenn Chrome nicht funktioniert, versuch es mit Firefox…Chrome kann nicht so gut mit eigenen SSL-Zertifikaten.
der fehler kommt bei allen Browsern und auch bei der app:/
hat keiner nen Lösungsansatz?
Hallo Jan,
ich versuche gerade den Seafile-Server auf meinem Raspberry Pi B zu installieren. Ich habe aber Probleme libsepol zu installieren, mir wird angezeigt, dass das Paket nicht zu der CPU-Architektur kompatibel sei. Ich hatte auch so eine Anmerkung auf der Arch Seite unter dem Paket gefunden. Was kann ich tun um dennoch Seafile zu nutzen?
Vielen Dank für Deine Mühe.
BG
Kdax
[…] found this extremely helpful guide online, but it needed a couple of changes on my system and is in German, so […]
Hallo lieber Zeafile Nutzer,
ich habe ein Problem, was ich bis her nicht lösen konnte.
Zur Ausstattung:
Raspberry Pi mit Rasbian, Seafile, Baikal(Kalender,Kontakte)
VDSL50, Fritzbox 7390 neuste Firmware. ca. 3 aktive Benutzer
Alles läuft erstaunlich gut! 😉
ABER
Der Upload der files belegt die ganze Leitung (10MBit), sodas die Telefonie nicht mehr möglich ist. In der Fritzbox wurde Internettelefonie als echtzeitanwendung hinterlegt. So hat es die höchste Prio.
Der Raspi wurde zu den Hintergrundanwendungen hinzugefügt.
Beim testen sehe ich auf der Fritzbox, dass die Hintergrundanwendungen die volle Bandbreite belegen. Jetzt ist die Telefonie nicht möglich. Die Gespräche sind abgehakt.
Auf der Fritzbox ist zu sehen, dass bei der Telefonie Pakte verloren gehen. Kann mir vielleicht einer helfen.
Danke
Stan
Hallo Jan,
ich habe deine Anleitung befolgt aber komme nun ab Punkt 13 nicht mehr weiter. Leider bin ich noch nicht so belesen um den Fehler selbst zu beheben. Kannst du mir helfen?
pi@raspberrypi /etc/nginx/ssl $ sudo /etc/init.d/nginx restart
[….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ’systemctl status nginx.service‘ and ‚journalctl -xn‘ for details.
failed!
pi@raspberrypi /etc/nginx/ssl $ systemctl status nginx.service
● nginx.service – A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
Active: failed (Result: exit-code) since Fri 2015-10-16 15:15:05 UTC; 12min ago
Process: 6694 ExecStop=/sbin/start-stop-daemon –quiet –stop –retry QUIT/5 –pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
Process: 6848 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)
Main PID: 6489 (code=exited, status=0/SUCCESS)
● journalctl-xn.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
Was mache ich falsch?
Danke für deine Hilfe.
Auch Jan.
Ist dies das Problem?
„Jetzt müssen wir ein nginx Site config file mit folgendem Inhalt anlegen. Dabei müssen wir my-seahub-domain.tld durch die verwendete IP-Adresse oder DynDNS Domain ersetzen.“
Ist dies der ganze Befehlt?
„sudo nano /etc/nginx/sites-available/seahub“ oder muss da noch … .config dazu?
Also so langsam hab ich es raus. Ich habe folgendes gemacht:
1. eine config angelegt und mit dem vorgebene Inhalt beschrieben über den Befehlt: sudo nano /etc/nginx/sites-available/seahub.conf
2. sudo ln -s /etc/nginx/sites-available/seahub.conf /etc/nginx/sites-enabled/seahub.conf
Nun ist das RbPi weder über http noch über https erreichbar. Rufe ich die Netzwerk-IP auf kommt folgendes:
*****
Welcome to nginx on Debian!
If you see this page, the nginx web server is successfully installed and working on Debian. Further configuration is required.
For online documentation and support please refer to nginx.org
Please use the reportbug tool to report bugs in the nginx package with Debian. However, check existing bug reports before reporting a new bug.
Thank you for using debian and nginx.
*****
Leider weiß ich nun echt nicht weiter. Mein Seafile ist nicht mehr zu sehen und https geht auch nicht.
benenne ich die seahub.config um in seahub und lasse den Befehl „sudo ln -s /etc/nginx/sites-available/seahub.conf /etc/nginx/sites-enabled/seahub.conf“ drüber laufen so startet mein nginx nicht mehr.
Ich hab alles schon 3 Mal neu aufgesetzt und durchprobiert. Leider weiß ich nicht wo ich noch nach einem Fehler suchen soll.
Für Hilfe wäre ich sehr Dankbar
MfG
Jan
So. Nun habe ich das ganze auch selbst gelöst 😉
Ich habe in der /etc/nginx/sites-available/seahub folgende Zeile hinzugefügt.
location /media {
root /home/user/ordner/seafile-server-latest/seahub;
}
nun läuft alles. Trotzdem Danke für die tolle Anleitung 🙂
Mal ne doofe Frage. Ich kann meine seafile.conf einfach nicht mehr finden und bin schon verzweifelt. Ich habe mehrere Screenshots von putty gemacht und in die cloud gepackt:
https://onedrive.live.com/redir?resid=A4124DB28D483920!70034&authkey=!AKuJQR74ENZM5XU&ithint=folder%2cPNG
Ich nutze Version 4.06 und wollte eigentlich nicht updaten. Never Change a running system usw….
ah! Kommando zurück! Sorry, wusste nicht, dass die conf im Datenverzeichnis ist! Also habe ich nur intern auf dem Raspberry gesucht! Danke!
Hallo Jan,
Danke für die super Anleitung. Hat wirklich alles geklappt, keine Probleme! (Raspi2B)
Ich wollte unbedingt von Dropbox weg (NSA…) doch jetzt bemerke ich, dass ich keine webseite auf Seafile hosten kann. Ich kann mir das html-Dokument ansehen (Quellcode) oder runterladen aber nicht die Seite im Browser darstellen :-/
Vielleicht nicht ganz der richtige Ort für diese Frage aber vielleicht kannst du ja doch kurz beantworten ob das was ich vorhabe in seafile nicht geht oder ob ich bloß nicht verstanden habe wie. Falls es nicht geht, hättest du da eine Alternative für den Raspi? Der 2B läuft ja auch schnell genug…
Grüsse…
Interessante Alternative für Owncloud. Bei meiner Owncloud Installation wird der Kalender nicht richtig synchronisiert. Bei einigen Terminen werden die Erinnerungen nicht richtig auf die Geräte übertragen. Eine Lösung habe ich bisher nicht gefunden. Vielleicht probiere ich mal Seafile aus.
Grüße
Doktor Geek
Hallo Jan, ich danke dir für die tolle Anleitung!!!
sie hat mir DAU toll geholfen seafile einzurichten. Ohne die Anleitung wäre das vermutlich nicht möglich gewesen.
Leider klappt Step 17 nicht. Der Autostart von seafile.sh und seafilehub.sh funktioniert nach einem Reboot wohl nicht.
Ich nutze OSMC. Ist das Prozedere dabei wohl anders?
Wäre sehr dankbar für die letzt Hilfe 🙂
Hallo! Habe dieses Tutorial ausprobiert und muss folgendes feststellen:
1. die ccnet.conf liegt nicht mehr standardgemäß im Verzeichnis seafile/ccnet/ sonder in seafile/conf
2. Wenn ich seafile nach dieser Anleitung mit fastcgi einrichte, kann ich über den Browser keine Dateien herunterladen. Ich bekomme den Fehler: „Page unavailable“
Danke!
Hi Jan,
ich bin am verzweifeln, ich komme einfach nicht weiter. Vorerst hatte ich zich mal versucht OwnCloud aufzusetzten. Hier kam es leider immer wieder zu Schwierigkeiten. Also habe ich nach einer Alternative geschaut und bin somit hier bei Anleitung zur Installation von SeaFile gelandet.
Ich bin Step für Step deine Anleitung durchgegagen (auch die optionalen, da ich die Übertragung gerne sicher haben möchte). Bei der „nginx“ Installation bin ich auch nur die ersten drei Steps durchgegangen, da die anderen nicht benötigt werden (hast du als Info vermerkt).
Ich möchte später mit MyFrritz auf die Cloud (SeaFile) vom Raspberry Pi zugreifen und habe daher DynDNS weglassen und jedesmal wo nach eine IP-Adresse gefragt wurde, die vom Raspberry genommen.
Jetzt wollte ich bei Step 14 weitermachen: Ich öffne Firefox -> gebe als URL die IP vom Raspberry ein: https://[IP-RASPBERRY]:8001„. Jetzt meldet mir jedoch der Browser, dass die Verbindung zum Server fehlgeschlagen ist. Hast du einen Tipp für mich, wo ich nach dem Fehler suchen kann?
Ich hoffe du kannst mir weiterhelfen, da ich schon gefüllt 50 mal meinen Raspberry neuaufgesetzt habe und ich jedes mal die Cloud nicht fertigstellt bekomme.
Auf ein Feedback von dir freue ich mich,
Stefan
Hi Jan,
wie immer ein super Tutorial. Allerdings habe ich Probleme mit dem SSL- und NGINX-Part. Ich habe alles wie angegeben umgesetzt (Zertifikatserstellung klappte ebenfalls fehlerfrei), doch kann ich meine Seite nicht mehr erreichen, was an fastcgi und dessen Port liegen dürfte.
Bei mir waren Seafile und Seahub via Browser und Client immer über Port 4000 erreichbar, da ich den Standard-Port 8000 änderte.
Starte ich nun Seahhub via start-fastcgi wird standardmäßig immer Port 8000 verwendet; da ändert auch die Angabe in der Zeile „fastcgi_pass 127.0.0.1:4000;“ nichts daran. Versuche ich Seahub über .\seahub.sh start-fastcgi 4000″ zu starten, bekomme ich nur die Meldung, dass Seahub nicht gestartet werden konnte.
Was muss ich also wo tun/ändern, damit meine Seite weiterhin über Port 4000 bzw. 4001 (SSL) erreichbar ist ? Die ersten Zeilen für NGINX erstellte ich bereits entsprechend:
server {
listen 4000;
server_name meinserver;
# redirect all requests to https
rewrite ^/(.*)$ https://$host/$1;
}
server {
listen 4001;
ssl on;
…
Somit sollte mein Server weiterhin über Adresse:4000 erreichbar sein und direkt auf https://Adresse:4001 weitergeleitet werden, doch die Erreichbarkeit ist durch den Start via start-fastcgi und dem damit verbundenen Port 8000 nicht mehr gegeben.
[…] meinen Seafile-Server auf HTTPS umzustellen. Anleitungen gibt's dazu so einige wie z.B. unter: https://jankarres.de/2013/06/raspberry-pi-owncloud-alternative-seafile-server-installieren/ oder direkt bei Seafile: http://manual.seafile.com/deploy/deploy_with_nginx.html Die Anleitung von […]
Vielen Dank für die Anleitung. Die Installation hat problemlos funktioniert.
Was ich mich noch frage… Wenn ich eine Dyndns-Adresse konfiguriert habe um Seafile auch von außen erreichen zu können. Und ich diese Adresse dann auch im Netzwerk für die Seafile-Clients verwende (die Clients sind im gleichen Netz wie der Pi). Dann werden die zu synchronisierenden Daten doch vermutlich erst durchs Internet geschickt um dann wieder in meinem Netzwerk anzukommen.
Lassen sich in der Konfiguration zwei Service_URLs definieren?
So das man für externe Clients die Dyndns-Adresse und intern die IP vom PI verwenden kann?
Hast du Seafile mal auf einem Raspbery Pi 2 mit Quadcore getestet? Steigert sich hier die Performance etwas? Oder liegt der Flaschenhals eher bei der lahmen USB 2 Schnittstelle oder dem langsamen 100Mbit Netzwerk-Port vom Pi?
Ich weiß nicht wie das funktioniert, aber irgendwie scheint mein Neztwerk selber zu merken, das meine dynDns Domain auch Lokal verfügbarist, sodass ich zuhause im Netzwerk deutlich schneller synchronisieren kann, als wo anders.
Danke für das erstklassige HowTo..
Nun habe ich aber in kleines, aber entscheidendes Problem.
Ich kann meinen Server nicht mit dem Desktop-Client verbinden.
Also.. das Verbindne funktioniert aber beim Sync. steht [Mit Server verbinden…] und geht nicht weiter. Könnten sie mir dabei Helfen?
Moin! Genau das gleiche Problem habe ich leider auch …
So habe jetzt noch einmal sorgfältig alles durchgearbeitet und schlussendlich herausgefunden, dass das Port-Forwarding der Fritz!Box von mir falsch konfiguriert wurde.
Ich hatte sowohl den Port 443 als auch 8001 an 8001 weitergeleitet, da ich dachte es wäre so einfacher, da man so in den Clients einfach https://dyndns statt https://dyndns:port eingeben kann.
Scheinbar funktioniert dass so nicht!
Danke für das tolle Tutorial!!
MFG
themmm
Hallo ich habe gerade alles auf meinem Raspberry pi3 installiert. wenn ich jedoch mit dem Osx seafile client etwas hochladen möchte wie ein Bild,etc kommt das hier:
Fehler beim Hochladen der Datei: Connection refused
Hallo Jan,
deine Tutorials haben mir bis jetzt immer sehr geholfen. Ich wollte dir hier mitteilen, dass mittlerweile (5.5.2016; Seafile Version 5.11) die Datein, die man abändern muss, um HTTPS mit Seafile zu nutzen jetzt im Ordner /home/seafile/conf/ liegen. Bitte ändere das.
LG Flo
Danke Flo für den Hinweis…
Mein Seafile-Server heut neu auf gesetzt.
Server läuft ist auch über Webinterface erreichbar Dateien lassen sich hoch runter laden usw auch die Smartphone app funzt ohne Probleme…
Aber leider habe auch ich das Problem das der Desktop-Client nicht syncronisiert
Es steht die ganze Zeit nur verbinde mit Server da…
Wenn ich Dateien über den Desktop-Client hoch lade funktioniert das ohne Probleme aber wieso syncronisert er nicht???
Habt ihr im Client das Häkchen für die selbst erstellten Zertifikate gesetzt?
Hallo Jan,
wenn ich das den Fingerprint von meinem erstellten SSL Zertifikat ausgeben bzw. anzeigen lass möchte, um die Möglichkeit zu haben, die Website manuell jedes mal zu überprüfen, wie kann ich mir diesen anzeigen lassen?
Liebe Grüße, tolle Arbeit, weiter so!
Moin,
welche Rechte müssen ccnet und seafile.ini haben, damit das script reset-admin.sh funktioniert?
..jetzt hab ich es – wechseln in den Ordner home/seafile/seafile-server-5.0.4 mit sudo su seafile zum User seafile wechseln und dann ./reset-admin.sh eingeben. Läuft.
Hi Jan, habe ein seltsames Phänomen. Habe vor gefühlten Ewigkeiten mit Deinem echt tollen Tutorial Seafile eingerichtet und es lief alles wunderbar. Nun habe ich kürzlich, wie ich es schon oft getan habe mal wieder die Software auf dem Raspi aktualisiert (apt-get update usw., und auch rpi-update), danach rebootet, und nun will seahub.sh (start-fastcgi) nicht mehr starten. seafile.sh startet. Nach einigem Probieren bin ich auf den Trichter gekommen dass ich seahub.sh starten kann, wenn ich mich mit dem Default-User anmelde und „sudo seahub.sh start-fastcgi“ eingebe. Dann funktioniert auch alles, aber so ist es ja nicht im Sinne des Erfinders…
An was könnte das liegen, was könnte man tun damit auch seahub.sh wieder unter dem User „seafile“ läuft?
Habe Seafile in der Version 4.2.2 im Einsatz, falls das eine Rolle spielt.
Vielen Dank schon mal!
Hi KNUT NUKEM!
Ich hatte dieses Problem, nachdem ich Seafile via sudo bzw. root Benutzer gestartet habe und sich somit einige Dateirechte änderten. Bei mir hat es geholfen den Ordner des Nutzers „seafile“ wieder dem user seafile zuzuweisen:
sudo chown -cvR seafile /home/seafile
Wobei er dir durch die Argumente -cv anzeigen sollte ob etwas geändert werden musste.
Sollte dein Seafile Datenordner nicht im selben Verzeichnis liegen so musst du diesen ebenfalls mit chown wieder dem User seafile zuweisen.
sudo chown -cvR seafile /“Pfad zu Datenordner“
MFG
themmm
Hörte sich erst mal total plausibel an, habe es auch versucht, allerdings leider ohne Erfolg. Inzwischen habe ich als Rosskur ein Backup der SD-Karte eingespielt (die Seafile-Daten liegen auf einer externen Platte) und Seafile läuft wieder. Bei Gelegenheit probiere ich noch mal ein Update, vielleicht habe ich Glück und es tut danach alles wieder, ansonsten werde ich danach Seafile noch mal komplett neu installieren (wollte eh schon länger auch Seafile aktualisieren, habe mich nur davor gescheut weil das schon mal nicht ganz so reibungslos geklappt hatte).
Trotzdem danke für den Hinweis!
Hallo,
super Tutorial, hat mir viel Arbeit erspart. Womöglich sollte noch erwähnt werden, dass Seafile auch eigentlich gelöschte Datein nicht von der SD Karte entfernt. Man sollte den GarbageCollect eventuell (automatisch per Cronjob) regelmäßig durchführen, da sich der Raspberry sonst zumüllt.
Viele Grüße
Hallo Jan,
vielen Dank noch einmal für das präzise, verständliche Tutorial. Mein Seafile-Server läuft dank dieser Seite. Eine Anmerkung habe ich zu Punkt 6 & 7. Der Pfad um die ccnet.conf und seahub_settings.py zu ändern hat sich spätestens ab Version 6.0.6 (vermutlich eher; ich sehe gerade, dass Rectek414-Flo das schon angemerkt hatte.) geändert. Die Befehle, die für mich funktioniert haben, um die Dateien zu ändern lauten:
nano /home/seafile/conf/ccnet.conf
nano /home/seafile/conf/seahub_settings.py
Vielen Dank, Besten Gruß & Guten Rutsch
Axel.
[…] Raspberry Pi: Owncloud-Alternative Seafile Server installieren ↩ […]
Hallo zusammen,
ein kleiner aber wichtiger Hinweis zu dieser Installationsanleitung. Die hier beschriebene Methode mit fastcgi wird in einem der nächsten Versionen von Seafile nicht mehr unterstützt werden.
In der offiziellen Roadmap zu Version 6.2 (https://www.seafile.com/en/roadmap/) heißt es: „Use WSGI as the default mode for deploying Seahub. The FastCGI mode will be deprecated.“
Die Umstellung ist denkbar einfach und wird hier beschrieben:https://manual.seafile.com/deploy/deploy_with_nginx.html. Anstelle der fastcgi_… Konfiguration in nginx verwendet man zukünftig proxy_pass…
Gruß
Christoph von datamate.
Hallo, ich habe nun zum zweiten Mal versucht Seafile zum Laufen zu bekommen und jetzt hänge ich wieder fest.
Die normale Installation im Netzwerk funktioniert soweit, es funktioniert bloß mit ssl und über dnydns nicht so recht.
Ich kann obwohl ich alles auf ssl umgestellt habe immer noch über meine interne IP und den Port 8000 auf den Server zugreifen. Wenn ich es über die dnydnsdomain probiere sagt mit der Firefox immerhin schonmal was über eine unsichere Verbindung, aber dann lädt mein Browser ewig und ich bekomme eine Timeoutmeldung von nginx.
Über Hilfe würde ich mich sehr freuen.
Viele Grüße
Jan
Hallo Jan,
also zum Thema „Absichern“ vom Seafile-Server fehlte mir bislang die Verbindung zu fail2ban.
Dazu sind 2 Schritte notwendig:
1.) in der conf/seahub_settings.py folgende Einträge machen
TIME_ZONE = ‚Europe/Berlin‘
LOGIN_ATTEMPT_LIMIT = 3
2.) Nach Anleitung weiter vorgehen:
https://manual.seafile.com/security/fail2ban.html
Schritt 1 ist notwendig, damit Seafile die fehlerhaften Logins auch in einer Log-Datei schreibt, die im 2. Schritt ausgewertet werden kann.
Würde mich freuen, wenn du es in der Anleitung mit aufnimmst.
Viele Grüße,
Chris Bremer
Hallo,
ich habe nun zum zweiten Mal versucht Seafile auf meinem Raspberry zu installieren und hänge wieder fest.
Die normale Installtion hat soweit ganz gut geklappt, aber jetzt hängt es am SSL und Dyndns.
Obwohl ich alles auf SSL umgestellt habe, kann ich immer noch über die interne IP und den Port 8000 auf Seafile zugreifen.
Wenn ich es über die Dyndnsdomain und 8001 probiere, sagt mir der Firefox zwar etwas von einer unsicheren Verbindung, dann lädt er allerdings ewig und ich bekomme irgendwann eine Timeout von Nginx.
Über Hilfe würde ich mich sehr freuen.
Viele Grüße
Jan