DecaTec

Programmieren, Fotografie, Home-Server und einiges mehr

Nextcloud auf anderen Rechner umziehen

Nextcloud Logo

In diesem Tutorial soll es um den Umzug einer Nextcloud-Instanz auf einen anderen Rechner gehen. Dies kann beispielsweise notwendig sein, wenn man die eigene Cloud zunächst einmal auf einem Raspberry Pi (Affiliate Link) betrieben hat und nach einiger Zeit eine etwas performantere Lösung – z.B. einen Intel NUC (Affiliate Link) – bevorzugen würde.

Das wichtigste bei diesem Vorhaben sollte sein, dass es beim Umzug zu keinem Datenverlust kommt, d.h. dass alle Daten aus der alten Cloud verlustfrei in die neue Installation übernommen werden. Für die Nutzer der Cloud ist nichts ärgerlicher, als ein Datenverlust auf Grund von administrativen Tätigkeiten!
Daher sollte ein Umzug vom Admin sorgfältig geplant und ausgeführt werden.

Vorbereitung

Um einen Umzug vornehmen zu können, sind natürlich erst einmal zwei Rechner (oder auch virtuelle Maschinen) notwendig. Um eine mögliche Fehlerquelle ausschließen zu können, sollten beide Maschinen auch möglichst identisch konfiguriert werden.

Neben der eigentlichen Cloud-Anwendung müssen hier meistens auch weitere Programme bzw. Konfigurationen umgezogen werden. Beispiele hierfür sind:

  • Webserver (bzw. die virtuellen Hosts)
  • Evtl. vorhandene SSL-Zertifikate (z.B. Let’s Encrypt)
  • Redis-Server (für das Transactional File Locking)
  • fail2ban
  • Evtl. weitere Webanwendungen, die neben Nextcloud ausgeführt werden

Über diese „Seiteneffekte“ des Umzugs sollte man sich am besten bereits vorher Gedanken machen. An dieser Stelle soll es aber nur um den Umzug von Nextcloud gehen. Eine vollständige Beschreibung für alle Programme/Konfigurationen würde den Rahmen des Artikels sprengen.

Zum einfachen Datenaustausch zwischen den verschiedenen Rechnern bietet sich ein Netzlaufwerk (z.B. auf einem NAS) an. Diese wird dann einfach auf beiden PCs gemountet und wird zum „Zwischenlagern“ der Dateien verwendet. In dieser Anleitung ist dieses Netzlaufwerk beispielhaft unter /mnt/Share gemountet (sowohl am Ausgangs-, als auch am Ziel-Rechner).

Der Umzug

Der eigentliche Umzug unterteilt sich in verschiedene Schritte. Bevor man beginnt, sollte man auf jeden Fall ein Backup der laufenden Nextcloud-Instanz anfertigen. Damit ist man immer auf der sicheren Seite, falls etwas schiefgehen sollte.

Ausgangs-Rechner

Folgende Schritte sind auf dem Rechner auszuführen, auf dem die Cloud bisher betrieben wurde.

Maintenance-Modus/Webserver stoppen

Zunächst wird Nextcloud in den sog. Maintenance-Mode versetzt:

Dies sorgt dafür, dass keine Verbindungen mehr zu Nextcloud möglich sind. Falls die Cloud von vielen Usern genutzt wird, sollte man erst ein paar Minuten warten, damit sichergestellt ist, das kein aktiver Benutzer mehr an der Cloud angemeldet ist.

Anschließend wird der Webserver gestoppt:

Sichern der Nextcloud-Dateien

Nun müssen alle Daten gesichert werden, die für den Betrieb von Nextcloud benötigt werden. Dazu gehören immer:

  • Die Konfiguration von Nextcloud (config.php), bzw. das komplette Cloud-Webverzeichnis (/var/www/nextcloud)
  • Das Datenverzeichnis der Cloud (/var/nextcloud_data)
  • Die Nextcloud-Datenbank

Am einfachsten wird das komplette Nextcloud-Verzeichnis umgezogen, dann spart man sich auf dem Ziel-Rechner die manuelle Installation von Nextcloud. Dazu wird das ganze Verzeichnis auf das Netzlaufwerk kopiert:

Das gleiche wird mit dem Datenverzeichnis gemacht:

Anschließend wird ein kompletter Dump der Datenbank gezogen:

Nun haben wir alle benötigten Daten der alten Cloud-Instanz gesichert und können auf den anderen Rechner wechseln.

Die Maschine, auf der Nextcloud bisher lief, kann nun heruntergefahren werden.

Ziel-Rechner

Nun geht es auf dem Ziel-Rechner weiter, d.h. dem PC, auf dem die Cloud in Zukunft betrieben werden soll.

Achtung: Bevor nicht alle Schritte durchgeführt wurden, sollte nicht versucht werden, auf die Cloud zuzugreifen, da es ansonsten zu Fehlern kommen kann.

Webserver stoppen

Auch auf dem Ziel-Rechner sollte zunächst einmal der Webserver getoppt werden, um einen unbeabsichtigten Zugriff auf die Cloud auszuschließen:

Wiederherstellen der Nextcloud-Dateien

Dann wird die gesicherte Nextcloud-Installation auf dem Ziel-Rechner wiederhergestellt. Da wir zuvor das komplette Nextcloud-Verzeichnis gesichert haben, kann einfach der komplette Dateibestand auf den Ziel-Rechner kopiert werden:

Um einen komplett sauberen Stand zu erhalten, kann man auch eine „frische“ Nextcloud-Installation vornehmen – analog zum Vorgehen im entsprechenden Tutorial (Abschnitt Einrichtung ownCloud). In diesem Fall muss anschließend nur die Konfigurations-Datei (config.php) aus der alten Cloud-Installation übernommen werden (wichtig!).

Das Datenverzeichnis wird mit folgendem Befehl kopiert:

Die Datenbank muss auf dem Ziel-Rechner zunächst neu erstellt werden. Dies geschieht über die MariaDB-Kommandozeile:

Anschließend wird eine leere Datenbank wie gewohnt angelegt. Wichtig an dieser Stelle ist, dass der DB-User und das Passwort die gleichen wie auch dem Ausgangs-Rechner sind.

Der letzte Schritt an dieser Stelle ist das Zurückspielen des Datenbank-Dumps in die neu angelegte Datenbank:

Vor dem „Scharfschalten“ der neuen Cloud sollten die Rechte der entsprechenden Verzeichnisse wieder wie gewohnt gesetzt werden:

Aktivieren der neuen Nextcloud-Instanz

Nun ist es an der Zeit, die neue Cloud in Betrieb zu nehmen.

Erst einmal wird der Webserver gestartet:

Anschließend kann der Wartungsmodus deaktiviert werden:

Ein Einloggen mit dem Admin-Account sollte nun problemlos möglich sein. Hier sollte man nochmals kontrollieren, ob alle Daten, Plugins und Einstellungen wie gewünscht übernommen wurden und keine Warnungen in der Administrator-Oberfläche erscheinen. Falls doch, fehlt vermutlich ein Programm, welches auf dem alten Rechner installiert war und auf der neuen Maschine noch fehlt (z.B. bestimmte PHP-Pakete oder auch Redis). Hier sollte es helfen, die fehlenden Programme bzw. Konfigurationen auf dem neuen Rechner nach zu installieren.

Abschlussarbeiten

In einigen Fällen könnten noch Abschlussarbeiten notwendig sein, damit die neue Cloud-Instanz genau so läuft wie die alte Nextcloud-Installation. Dazu gehören beispielsweise:

Die neue Cloud ist fertig

Nach diesen Schritten kann die neue Cloud-Instanz wieder wie gewohnt genutzt werden. Durch den Komplett-Umzug sollten alle Dateien und Daten (Kontakte, Kalender, etc.) übernommen worden sein. Für die Nutzer der Cloud sollte der Umzug (bis auf eine kleine Downtime) vollkommen unbemerkt vonstattengegangen sein.

 Weiterführende Artikel

Links

, , , , , , , ,

Kommentare: 1

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.