Einführung
Kürzlich hat ein großer Teil des Kernentwicklungsteams beiownCloud ein neues Projekt namensNextcloud gestartet. OwnCloud wird zwar noch weiterentwickelt, aber Sie möchten vielleicht sehen, was das neue Projekt zu bieten hat. Nextcloud und ownCloud teilen sich eine gemeinsame Codebasis, was bedeutet, dass die Migration Ihrer vorhandenen ownCloud-Installation auf Nextcloud eine mühelose Aufgabe sein sollte.
In diesem Lernprogramm migrieren Sie eine vorhandene ownCloud-Installation nach Nextcloud. Dabei werden die Kernanwendungsdateien durch die von Nextcloud ausgetauscht, und der integrierte Updater von Nextcloud erledigt das große Heben. Während der Prozess einfach ist, gibt es eine Reihe von Dingen, die in der richtigen Reihenfolge durchgeführt werden müssen, um sicherzustellen, dass alles reibungslos verläuft.
[.note] #Note: Sie können ownCloud- und Nextcloud-Installationen jeweils nur mit einer Hauptversionsnummer aktualisieren. Wenn Sie derzeit ownCloud 9 verwenden, müssen Sie zuerst auf Nextcloud 10 migrieren und dann auf Nextcloud 11 aktualisieren. Dieses Tutorial behandelt diesen Prozess.
#
Voraussetzungen
Um Ihre ownCloud-Installation auf Nextcloud zu migrieren, benötigen Sie:
-
Eine funktionierende ownCloud 9 Installation unter Ubuntu 14.04.
-
Ein nicht privilegiertes Benutzerkonto auf dem ownCloud-Server, das Befehle mit
sudo
ausführen kann. Sie können dies konfigurieren, indem Sie dem Tutorial vonHow to Create a Sudo User on Ubuntufolgen.
[[Schritt 1 - Stoppen des Webservers und Sichern von Daten]] == Schritt 1 - Stoppen des Webservers und Sichern von Daten
Selbst wenn Sie mit einer frisch konfigurierten Installation arbeiten, ist es eine gute Idee, ein schnelles Backup durchzuführen. Sie sind dabei, Dinge zu verschieben und zu löschen. Sicherheit geht vor!
Melden Sie sich bei Ihrem Server an, auf dem ownCloud ausgeführt wird, wenn Sie noch keine Verbindung hergestellt haben:
ssh sammy@your_server_ip
Es ist wichtig sicherzustellen, dass sich während der Sicherung und Migration nichts ändert. Der einfachste Weg, dies sicherzustellen, ist das Herunterfahren des Webservers, damit Benutzer nicht auf ownCloud zugreifen können. Führen Sie diesen Befehl aus:
sudo service apache2 stop
Navigieren Sie nach dem Stoppen des Webservers zu dem Verzeichnis, in dem der Server ownCloud speichert. Wenn Sie die One-Click-Installation für ownCloud unter Ubuntu 14.04 verwenden, befindet sich Ihre Installation im Verzeichnis/var/www/
. Führen Sie die folgenden Befehle aus, um in dieses Verzeichnis zu wechseln und sicherzustellen, dass esowncloud/
enthält:
cd /var/www
ls
Sie sehen den Ordnerowncloud
:
Outputhtml owncloud
Erstellen Sie als Nächstes das Sicherungsarchiv mit dem Befehltar
, umceine gzipf-Sile zu drücken und diev-Serbose-Ausgabe auf dem Bildschirm anzuzeigen. Das neue Archiv heißtowncloud.tar.gz
und enthält das gesamte Verzeichnisowncloud/
. Führen Sie den folgenden Befehl aus:
sudo tar czfv owncloud.tar.gz owncloud/
Verschieben Sie das Archiv nun zur sicheren Aufbewahrung in Ihr Home-Verzeichnis:
sudo mv owncloud.tar.gz ~/
[.Hinweis]##
Note: Ihre ownCloud-Dateien werden gesichert. Wenn Sie jedoch MySQL oder eine andere Datenbank anstelle der internen Datenspeicheroption verwenden, sollten Sie auch eine Sicherungskopie der Datenbank erstellen. Erstellen Sie für MySQL ein Backup, indem Sie den folgenden Befehl ausführen:
mysqldump -u username -p dbname > ~/owncloud_backup.sql
Die Werte fürusername
,password
unddbname
finden Sie in der Konfigurationsdatei unter/var/www/owncloud/config/config.php
.
Weitere Informationen zum Sichern und Wiederherstellen von MySQL-Datenbankenhere finden Sie hier.
Vor der Installation von Nextcloud gibt es noch einen speziellen Schritt für Ubuntu 14.04-Server.
Schritt 2 - Upgrade von PHP
Wenn Sie von der One-Click-Installation auf Ubuntu 14.04 migrieren, müssen Sie ein PHP-Upgrade durchführen, um alle Versionen von Nextcloud verwenden zu können, die neuer als 10.0.2 sind. Die Standard-Ubuntu 14.04-Repositorys enthalten nur PHP 5.5, PHP 5.6 ist jedoch ab NextCloud 11 erforderlich. Glücklicherweise unterstützt Ubuntu Repositories von Drittanbietern, sogenannte PPAs. Wenn Sie zuvor noch keine PPAs installiert haben, führen Sie diesen Befehl aus, um ein Paket mit dem Namenpython-software-properties
zu installieren:
sudo apt-get install python-software-properties
Fügen Sie als Nächstes die PPA hinzu, die aktualisierte Versionen von PHP enthält:
sudo add-apt-repository ppa:ondrej/php
Weisen Sie dann den Paketmanager an, die Liste der bekannten Pakete zu aktualisieren, einschließlich der in der PPA enthaltenen:
sudo apt-get update
Jetzt können Sie PHP7 und alle Module installieren, die von Nextcloud benötigt werden:
sudo apt-get install php7.0 php7.0-sqlite php7.0-mysql php7.0-pgsql php7.0-zip php7.0-gd php7.0-mb php7.0-curl php7.0-xml php7.0-apc
Schließlich wechseln Sie das PHP-Modul, das Ihr Webserver verwendet. Für Apache lauten die Befehle dazu wie folgt:
a2dismod php5
a2enmod php7.0
[.note] #Note: Wenn Sie Ihren Server für etwas anderes als ownCloud verwenden, sollten Sie sicherstellen, dass Ihr Webserver PHP5.5 nicht benötigt, bevor Sie dieses Modul deaktivieren.
#
Lassen Sie uns nun Nextcloud installieren.
[[Schritt 3 - Herunterladen der nächsten Cloud]] == Schritt 3 - Herunterladen der nächsten Cloud
UnterNextcloud release site finden Sie eine Liste aller Nextcloud-Versionen in verschiedenen Formaten. Suchen Sie die neueste.tar.gz
-Datei für die Version, die mit Ihrer aktuellen ownCloud-Version identisch ist oder eine Hauptversion danach enthält. Wenn Sie beispielsweise von der OneClick-Installation von ownCloud 9 migrieren, suchen Sie nach der Dateinextcloud-10.0.2.tar.bz2
.
Wenn Sie die Datei gefunden haben, laden Sie sie nicht auf Ihren PC herunter. Klicken Sie stattdessen mit der rechten Maustaste auf den Dateinamen und kopieren Sie die Linkadresse, damit Sie die Datei auf Ihren Server herunterladen können.
Sie werden zwei Dateien herunterladen. Das erste ist das Nextcloud-Paket, das Sie auf der Website gefunden haben. Die andere Datei ist eine Überprüfungsdatei, die als "md5-Prüfsumme" bezeichnet wird. Die md5-Datei hat genau den gleichen Pfad wie das Paket, jedoch mit der zusätzlichen Erweiterung.md5
am Ende. Führen Sie die folgenden Befehle aus, um in Ihr Ausgangsverzeichnis zu gelangen, und laden Sie dann die beiden Dateien herunter.
cd ~
wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2
wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2.md5
Führen Sie den Befehlmd5sum
aus, um die Prüfsumme zu generieren und die Integrität der Paketdatei zu überprüfen:
md5sum nextcloud-10.0.2.tar.bz2
Sie sehen etwas Ähnliches wie diese Ausgabe:
Outputdc30ee58858d4f6f2373472264f7d147 nextcloud-10.0.2.tar.bz2
Zeigen Sie dann den Inhalt der heruntergeladenen.md5
-Datei an:
cat nextcloud-10.0.2.tar.bz2.md5
Die Ausgabe dieses Befehls sollte mit der Ausgabe des vorherigen Befehls identisch sein:
Outputdc30ee58858d4f6f2373472264f7d147 nextcloud-10.0.2.tar.bz2
Wenn die Ausgaben unterschiedlich sind, laden Sie Nextcloud erneut herunter.
Verwenden Sie zum Entpacken der Datei erneut den Befehltar
. Diesmal streift exdief-Sile mitverbose-Ausgabe. Führen Sie diesen Befehl aus, um das Archiv zu extrahieren:
tar xfv nextcloud-10.0.2.tar.bz2
Kopieren Sie abschließend den neu extrahierten Ordnernextcloud
in den Ordner/var/www
:
sudo mv nextcloud /var/www/nextcloud
Jetzt können Sie Ihre Dateien von ownCloud nach Nextcloud migrieren.
[[Schritt 4 - Migrieren von Daten und Festlegen des Dateieigentums]] == Schritt 4 - Migrieren von Daten und Festlegen des Dateieigentums
Ihre vorhandene ownCloud-Installation verfügt über zwei Verzeichnisse, die Sie beibehalten möchten:data/
undconfig/
. Sie verschieben diese von ihren ursprünglichen Speicherorten in dasnextcoud
-Verzeichnis. Zunächst möchten Sie jedoch die Standardversionen entfernen, die mit Nextclout geliefert wurden.
Führen Sie zunächst den Befehl aus, um die Standardverzeichnisse aus dem Verzeichnisnextcloud
zu löschen, sofern vorhanden:
sudo rm -rf /var/www/nextcloud/data /var/www/nextcloud/config
Verschieben Sie dann die alten Verzeichnisse aus dem Verzeichnisowncloud
:
sudo mv /var/www/owncloud/data /var/www/nextcloud/data
sudo mv /var/www/owncloud/config /var/www/nextcloud/config
Eine Folge des Verschiebens von Dateien mit dem Befehlsudo
ist, dass alle Dateien dem Benutzerrootgehören. Nextcloud wird jedoch immer vom Benutzerwww-dataausgeführt. Dies bedeutet, dass Sie den Besitz des Ordners/var/www/nextcloud
und seines Inhalts ändern müssen, bevor Sie fortfahren können. Führen Sie dazu den Befehlchown
mit dem Argument-R
aus, um alle Dateieigentümer rekursiv in den Benutzerwww-datazu ändern:
sudo chown -R www-data:www-data /var/www/nextcloud/
Nachdem die Dateien vorhanden sind, müssen wir dem Webserver mitteilen, wie er darauf zugreifen soll.
[[Schritt 5 - Aktualisieren der nächsten Cloud-Interna]] == Schritt 5 - Aktualisieren der Nextcloud-Interna
Wenn alle Dateien vorhanden sind, können Sie den internen Aktualisierungsprozess einleiten. Nextcloud und ownCloud bieten ein Tool zum Verwalten und Aktualisieren von Installationen mit dem Namenocc
. Navigieren Sie zum Verzeichnis/var/www/nextcloud/
:
cd /var/www/nextcloud
Bevor Sieocc
verwenden können, müssen Sie die/var/www/nextcloud/config/config.php
-Datei aktualisieren, um den neuen Speicherort des Datenverzeichnisses wiederzugeben. Insbesondere muss die Zeile'datadirectory' => '/var/www/owncloud/data',
in'datadirectory' => '/var/www/nextcloud/data',
geändert werden. Verwenden Siesed
, um diese Änderung einfach vorzunehmen:
sudo sed -i "s/owncloud\/data/nextcloud\/data/g" config/config.php
[.note] #NOTE: Normalerweise werdensed
Streams auf dem Bildschirm ausgegeben, aber das Flag-i
weist ihn an, die vorhandene Datei zu ändern. Informationen zur Verwendung regulärer Ausdrücke finden Sie unterAn Introduction To Regular Expressions. Weitere Informationen zused
finden Sie unterThe Basics of Using the Sed Stream Editor to Manipulate Text in Linux.
#
Verwenden Sie jetztocc
, um Nextcloud in den Wartungsmodus zu versetzen. Dadurch werden die Dateien gesperrt, sodass während des Upgrades der Anwendung keine externen Änderungen vorgenommen werden können. Führen Sie den folgenden Befehl aus, um den Wartungsmodus zu aktivieren:
sudo -u www-data php occ maintenance:mode --on
Beachten Sie, dass diessudo
verwendet, um Befehle als Benutzer vonwww-dataauszuführen.
Diese Ausgabe wird angezeigt, damit Sie bestätigen können, dass der Wartungsmodus aktiviert ist:
[secondary_output]
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Maintenance mode enabled
Verwenden Sie als Nächstesocc
, um den internen Upgrade-Prozess zu starten:
sudo -u www-data php occ upgrade
Dieser Befehl zeigt viele Ausgaben an, da alle ownCloud-Daten nach Nextcloud migriert werden. Am Ende werden jedoch die folgenden Meldungen angezeigt:
Output...
Starting code integrity check...
Finished code integrity check
Update successful
Maintenance mode is kept active
Reset log level
Wenn beim Upgrade Probleme aufgetreten sind, erhalten Sie am Ausgang eine Rückmeldung darüber, was schief gelaufen ist und wie das Problem behoben werden kann. Vorausgesetzt, das Upgrade verlief reibungslos, ist es an der Zeit, den Wartungsmodus zu deaktivieren.
sudo -u www-data php occ maintenance:mode --off
Ihre ownCloud-Installation wurde jetzt auf Nextcloud migriert, ist jedoch möglicherweise immer noch veraltet. Wenn Sie ownCloud 9 migriert haben, haben Sie nur auf Nextcloud 10 migriert, aber es gibt immer noch eine neuere Version. Lassen Sie uns also ein Upgrade durchführen.
[[Schritt 6 - Upgrade der nächsten Cloud]] == Schritt 6 - Aktualisierung der nächsten Cloud
Um Nextcloud auf eine neue Hauptversion zu aktualisieren, verwenden Sie dasselbe Verfahren wie in den Schritten 3 bis 5 dieses Tutorials. Verschieben Sie zunächst Ihren aktuell installierten Nextcloud-Ordner mit dem folgenden Befehl aus dem Weg:
sudo mv /var/www/nextcloud /var/www/nextcloud.old
Suchen Sie dann die.tar.gz
-Datei aus denNextcloud release site, laden Sie sie herunter und überprüfen Sie die MD5-Prüfsumme wie in Schritt 3.
wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2
wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2.md5
md5sum nextcloud-11.0.0.tar.bz2
cat nextcloud-11.0.0.tar.bz2.md5
Sobald Sie das Archiv heruntergeladen und überprüft haben. entpacke es und verschiebe es an den Nextcloud-Ort auf dem Webserver:
tar xfv nextcloud-11.0.0.tar.bz2
mv nextcloud /var/www/nextcloud
Verschieben Sie als Nächstes die Konfigurations- und Datendateien von der alten auf die neue Installation, wie Sie es in Schritt 4 getan haben:
rm -rf /var/www/nextcloud/config /var/www/nextcloud/data
mv /var/www/nextcloud.old/config /var/www/nextcloud
mv /var/www/nextcloud.old/data /var/www/nextcloud
sudo chown -R www-data:www-data /var/www/nextcloud/
Verwenden Sie abschließendocc
, um das Upgrade durchzuführen:
sudo -u www-data php occ maintenance:mode --on
sudo -u www-data php occ upgrade
sudo -u www-data php occ maintenance:mode --off
Wiederholen Sie diese Schritte für jede Hauptversion von Nextcloud, die Sie aktualisieren müssen.
Jetzt, da alles auf dem neuesten Stand ist, können wir den Webserver so konfigurieren, dass Datenverkehr an Nextcloud gesendet wird.
Schritt 7 - Ändern des Verkehrsflusses des Webservers
Der Apache-Webserver leitet über virtuelle Hosts oder vhosts zu verschiedenen Verzeichnissen. Der Ordner/etc/apache2/sites-available/
enthält eine Beschreibung jedes für den Server konfigurierten vhost. Diese vhosts werden aktiviert, indem die zugehörigen Dateien mit dem Ordner/etc/apache2/sites-enabled/
verknüpft werden. Die Datei/etc/apache2/sites-available/000-owncloud.conf
konfiguriert den Server so, dass er/var/www/owcloud
liest, und diese Konfiguration wird durch den Link unter/etc/apache2/sites-enabled/000-owncloud.conf
aktiviert.
Um den Server für die Verwendung der Nextcloud-Installation zu konvertieren, erstellen Sie eine Kopie der ownCloud vhost-Konfiguration, bearbeiten Sie sie so, dass sie auf Nextcloud verweist, deaktivieren Sie ownCloud vhost und aktivieren Sie Nextcloud vhost.
Kopieren Sie zuerst die ownCloud-Konfigurationsdatei:
sudo cp /etc/apache2/sites-available/000-owncloud.conf /etc/apache2/sites-available/000-nextcloud.conf
Ersetzen Sie als Nächstes alle Instanzen vonowncloud
in der Konfigurationsdatei durchnextcloud
. Sie können dies tun, indem Sie/etc/apache2/sites-available/000-nextcloud.conf
mit einem Texteditor öffnen und die Änderungen selbst vornehmen, oder indem Sie reguläre Ausdrücke und den Befehlsed
verwenden.
Führen Sie den folgenden Befehl aus, um den Inhalt der vhost-Konfigurationsdatei mitsed
zu konvertieren:
sudo sed -i "s/owncloud/nextcloud/g" /etc/apache2/sites-available/000-nextcloud.conf
Deaktivieren Sie als Nächstes den ownCloud vhost, indem Sie den Link/etc/apache2/sites-enabled/000-owncloud.conf
löschen. Ubuntu bietet den Befehla2dissite
zum Deaktivieren von Sites. Führen Sie diesen Befehl aus:
sudo a2dissite 000-owncloud.conf
Aktivieren Sie schließlich den Nextcloud-vhost, indem Sie eine symbolische Verknüpfung zur Nextcloud-Konfigurationsdatei erstellen. Verwenden Sie den Befehla2ensite
, um den Link zu erstellen:
sudo a2ensite 000-nextcloud.conf
[.note] #Note: Wenn Sie über HTTPS auf ownCloud zugreifen, müssen Sie diese Schritte auch mit/etc/apache2/sites-available/owncloud-ssl.conf
vhost.
# wiederholen.
Nachdem der Webserver weiß, wo Nextcloud zu finden ist, können wir es mit dem folgenden Befehl wieder starten:
sudo service apache2 start
Zu diesem Zeitpunkt sollte mit Ihrer neuen Nextcloud-Installation alles betriebsbereit sein. Öffnen Sie einen Webbrowser und navigieren Sie zum Speicherort Ihres alten ownCloud-Servers. Der Nextcloud-Anmeldebildschirm wird angezeigt. Alle Ihre alten Benutzernamen und Kennwörter funktionieren genauso wie vor der Migration. Melden Sie sich alsadmin-Benutzer an, da Sie möglicherweise einige Ihrer Apps erneut aktivieren müssen, einschließlich der Kalender- und Kontakt-Apps.
Fazit
In diesem Tutorial haben Sie Ihre vorherige ownCloud-Installation gesichert, auf Nextcloud migriert und ownCloud deaktiviert. Sie können sich jetzt über das Webinterface bei Nextcloud anmelden, genau wie Sie es mit ownCloud getan haben.
Nachdem Ihr Server auf Nextcloud migriert wurde, ist es an der Zeit, alle von Ihnen verwendeten Synchronisierungsclients zu aktualisieren. Genau wie ownCloud bietet Nextcloud eine Reihe von Synchronisierungsclients für Ihren Desktop und Ihre mobilen Geräte.
Wenn Sie zu ownCloud zurückkehren möchten, können Sie die Ordnerdata/
undconfig/
aus der in Schritt 1 erstellten Sicherung sowie aus jeder von Ihnen gesicherten externen Datenbank wiederherstellen. Versuchen Sie nicht, die Ordnerdata/
undconfig/
von/var/www/nextcloud
zurück in ownCloud zu kopieren. Nachdem die Sicherungen wiederhergestellt wurden, müssen Sie lediglich den Nextcloud-Host deaktivieren und den ownCloud-Host aktivieren. Gehen Sie dazu wie in Schritt 4 beschrieben vor.