Seafile Server - Upgrade Version 3 auf 4
Aus znilwiki
Changelog:
- 21.01.2015: Seafile-Version von 4.0.1 auf 4.0.5 geändert
- 15.01.2015: Seafile-Version von 4.0.5 auf 4.0.6 geändert
Ich habe einen Seafile-Server in der Version 3.1.7 und möchte diesen auf die neuen Version 4.0.5 upgraden.
Mein Server 3.1.7 habe ich gemäß meiner eigenen Anleitung installiert: Seafile Server - Installation auf Ubuntu 14.04.x LTS mit ISPConfig
Das Upgrade habe ich so durchgeführt:
Sicherung
Falls euer Seafile-Server wie bei mir eine VM (Virtuelle Maschine) ist - dann wäre jetzt ein guter Zeitpunkt diesen einemal herunterzufahren und einen Snapshot anzulegen.
Falls das nicht geht - sichert eurer komplettes Seafile-Verzeichnis sowie die MySQL-Datenbanken woanders hin (Speicherplatz beachten!)
Falls das auch nicht geht ... nun, wird schon gut gehen, ich drück euch die Daumen (übernehme aber keine Verantwortung).
Benutzer wechseln
Wir wechseln zum Benutzer unter dem der Seafile-Server läuft. Seit Ihr nach den gängigen Anleitungen vorgegangen ist es der Benutzer seafile:
su - seafile
und wechseln in der Verzeichnis "haiwen" - das Verzeichnis in der sich das Verzeichnis "seafile-server-latest" befindet:
cd /home/seafile/haiwen
oder(!!!)
/var/lib/seafile/haiwen
Herunterladen
Dann laden wir die Version 4.0.6 herunter (aktuelle bei der letzten Bearbeitung des Artikels):
wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_4.0.6_x86-64.tar.gz tar xzfv seafile-server_4.0.6_x86-64.tar.gz
Wenn ihr nach den gängigen Anleitungen vorgegangen seit gibt es ein Verzeichnius "installed" - dahin verschieben wir das Original-Paket:
mv seafile-server_* installed
Upgrade
Es müsste nun neben dem Verzeichnis eurer bisherigen Seafile-Version ein Verzeichnis der neuen 4.0.6 Version geben:
seafile@seafile:/home/seafile/haiwen$ ls -l insgesamt 76 drwxrwxr-x 17 seafile seafile 4096 Dez 6 16:57 ./ drwxr-xr-x 3 seafile seafile 4096 Okt 31 18:56 ../ drwx------ 3 seafile seafile 4096 Dez 6 16:50 ccnet/ drwxr-xr-x 2 root root 4096 Okt 18 21:41 certificates/ drwxrwxr-x 2 seafile seafile 4096 Okt 18 21:41 conf/ drwxrwxr-x 2 seafile seafile 4096 Dez 6 16:57 installed/ drwxr-xr-x 2 seafile seafile 4096 Okt 18 21:41 logs/ drwxrwxr-x 2 seafile seafile 4096 Dez 6 16:50 pids/ drwxrwxr-x 8 seafile seafile 4096 Okt 18 22:21 seafile-data/ drwxrwxr-x 6 seafile seafile 4096 Okt 18 21:40 seafile-server-3.1.0/ drwxrwxr-x 6 seafile seafile 4096 Okt 18 21:40 seafile-server-3.1.1/ drwxrwxr-x 6 seafile seafile 4096 Okt 18 22:21 seafile-server-3.1.2/ drwxrwxr-x 6 seafile seafile 4096 Okt 18 21:41 seafile-server-3.1.5/ drwxrwxr-x 6 seafile seafile 4096 Okt 18 22:21 seafile-server-3.1.6/ drwxrwxr-x 6 seafile seafile 4096 Okt 20 09:48 seafile-server-3.1.7/ drwxrwxr-x 6 seafile seafile 4096 Nov 29 10:45 seafile-server-4.0.5/ lrwxrwxrwx 1 seafile seafile 20 Okt 31 20:48 seafile-server-latest -> seafile-server-3.1.7/ drwxrwxr-x 4 seafile seafile 4096 Okt 18 22:21 seahub-data/ -rw-r--r-- 1 seafile seafile 604 Okt 31 19:24 seahub_settings.py -rw-r--r-- 1 seafile seafile 843 Okt 31 20:46 seahub_settings.pyc
Wie Ihr seht zeigt seafile-server-latest
auf das Verzeichnis eurer aktuellen Version. Bei mir sind da ein paar alte Verzeichnisse weil ich jedes Update mitgemacht habe.
Doch zunächst müssen wir die laufenden Seafile-Dienste / Prozesse zuerst beenden:
exit service seafile-server stop su - seafile
Mit exit wechseln wir wieder zu unserem root Benutzer, dann stoppen wir den Dienst und wechseln wieder zum seafile-Benutzer.
Falls Ihr nicht als root arbeitet setzt noch ein "sudo" for den Service-Befehl.
Wir wechseln ins Verzeichnis mit den Upgrade-Skripten:
cd /home/seafile/haiwen/seafile-server-4.0.6/upgrade/
oder(!!!!)
cd /var/lib/seafile/haiwen/seafile-server-4.0.6/upgrade/
In diesem Verzeichnis sind diverse Upgrade-Scripts:
seafile@seafile:/home/seafile/haiwen/seafile-server-4.0.6/upgrade$ ls -l insgesamt 112 -rwxrwxr-x 1 seafile seafile 4735 Feb 24 2014 add_collate.sh -rw-rw-r-- 1 seafile seafile 1369 Feb 24 2014 db_update_1.3_1.4.py -rw-rw-r-- 1 seafile seafile 9652 Feb 24 2014 db_update_helper.py -rwxrwxr-x 1 seafile seafile 3183 Mai 21 2014 minor-upgrade.sh drwxrwxr-x 10 seafile seafile 4096 Aug 1 04:57 sql -rwxrwxr-x 1 seafile seafile 3888 Feb 24 2014 upgrade_1.2_1.3.sh -rwxrwxr-x 1 seafile seafile 3816 Feb 24 2014 upgrade_1.3_1.4.sh -rwxrwxr-x 1 seafile seafile 3527 Feb 24 2014 upgrade_1.4_1.5.sh -rwxrwxr-x 1 seafile seafile 3864 Feb 24 2014 upgrade_1.5_1.6.sh -rwxrwxr-x 1 seafile seafile 4289 Feb 24 2014 upgrade_1.6_1.7.sh -rwxrwxr-x 1 seafile seafile 4076 Feb 24 2014 upgrade_1.7_1.8.sh -rwxrwxr-x 1 seafile seafile 4294 Feb 24 2014 upgrade_1.8_2.0.sh -rwxrwxr-x 1 seafile seafile 6148 Mai 21 2014 upgrade_2.0_2.1.sh -rwxrwxr-x 1 seafile seafile 5412 Mai 21 2014 upgrade_2.1_2.2.sh -rwxrwxr-x 1 seafile seafile 6087 Nov 13 22:19 upgrade_2.2_3.0.sh -rwxrwxr-x 1 seafile seafile 6705 Okt 16 13:41 upgrade_3.0_3.1.sh -rwxrwxr-x 1 seafile seafile 6705 Nov 13 22:19 upgrade_3.1_4.0.sh drwxrwxr-x 3 seafile seafile 4096 Aug 18 10:04 win32
Wir kommen von der Version 3.1 und wollen auf die Version 4.0 - also rufen wir das letzte Skript auf:
./upgrade_3.1_4.0.sh
Ausgabe:
------------------------------------------------------------- This script would upgrade your seafile server from 3.1 to 4.0 Press [ENTER] to contiune -------------------------------------------------------------
Mit Druck auf die Enter Taste geht es weiter:
migrating avatars ... Done Updating seafile/seahub database ... [INFO] You are using MySQL Done updating /home/seafile/haiwen/seafile-server-latest symbolic link to /home/seafile/haiwen/seafile-server-4.0.1 ... ----------------------------------------------------------------- Upgraded your seafile server successfully. -----------------------------------------------------------------
Nun zeigt das seafile-server-latest
Verzeichnis auf die neue 4.0.6 Version:
cd ../.. ls -l | grep latest
Ausgabe:
lrwxrwxrwx 1 seafile seafile 20 Dez 6 17:10 seafile-server-latest -> seafile-server-4.0.6
Nun können wir den Dienst wieder starten:
exit service seafile-server start
Synchronisierung über http/https aktivieren
Nun, wenn Ihr eure Seafile vorher schon per http Port 80 oder https Port 443 erreichbar war müsst Ihr am Server NICHTS machen.
Ihr könnt allerdings auf euerer Firewall die Ports
10001 12001 8082 8000
wieder schliessen falls diese offen sein sollten - es reicht der Port 80 (unverschlüsselt) oder 443 (verschlüsselt).
Der Client wollte nicht sofort ohne diese Ports ... der hat nun einen extra Punkt wo man
Enable File Syncing with http protocol
einschalten kann - musste ich aber nicht.
Ich habe das Seafile-Konto im Client einfach gelöscht und neu wieder angelegt (gleicher Server + Benutzer) und dann hatte er es.
Sieht so aus als ob er dann Abfragt / Testet wie er die Verbindung aufnehmen kann. Trotz Löschen und neu verbindne kennt er noch alle Ordner die er syncen soll.