Nextcloud

Grundinstallation

  • Wenn das System komplett neu aufgesetzt wird, muss die Datenbank über phpMyAdmin vollständig geleert werden.
  • Die Übertragungsart der Nextcloud-Installationsdateien auf den Host sollte (z. B. über Filezilla) im Binary-Mode erfolgen, sonst kann es sein, dass es zu "Invalid Hashes" kommt.
  • Die htaccess-Datei muss im root-Verzeichnis bei Belwü abgeändert werden. Folgende Zeilen müssen auskommentiert werden:
# <IfModule mod_dir.c>
#   DirectoryIndex index.php index.html
# </IfModule>
# AddDefaulCharset utf-8
# Options -Indexes
  • Wenn man ein https-Zertifikat hat, aber der Space auch über http aufrufbar ist, sollte man die Installation über den Webbrowser auch über https machen. Ich hatte das beim ersten Versuch nicht beachtet und in der config.php stand dann bei "trusted domains": http://meine_domain statt https://meine_domain
  • Bei der Installation den Data-Pfad belassen (wird korrekt voreingestellt).
  • Bei der Datenbankauswahl als Benutzer den Admin-Benutzer eintragen und den Port weglassen.

Updaten

Eine Schritt-für-Schritt-Anleitung zum Updaten der Nextcloud, falls das automatische Update fehlschlägt.

Fehlermeldungen und Lösungen

Steps
Jede Zeile symbolisiert einen Step. Bei folgenden Steps führen die nachfolgenden Schritte zur Lösung:

Step 2 Check for expected files

Hier kann es sein, dass folgende Verzeichnisse Probleme machen:

  • secure/
  • htaccess/

Das Secure-Verzeichnis kann einfach gelöscht werden. Hier handelt sich lediglich um einen SymLink, welcher am nächsten Tag automatisch in dem Verzeichnis wiederhergestellt wird. Die phpMyAdmin-Installation bleibt davon unberührt. Die htaccess-Warnung kommt, wenn man diese Datei umbenannt hat. Besser ist es, die Änderungen (wie unten beschrieben) durchzuführen.

Step 4: Create backup

Die Meldung, dass der Update-Prozess bei Step 4 abgebrochen ist, ist vermutlich falsch. Vielmehr handelt es sich um ein Fehler beim anschließenden Download. Damit der Web-Updater wieder funktioniert, muss die Datei nextcloud-data/updater-randomstring/.step gelöscht werden. ("randomstring" ist eine zufällige, auf jedem Server unterschiedliche Zeichenkette.) Dann läuft der Updater auch wieder.

Nähere Infos: help.nextcloud.com 

Step 5: Downloading

Das Update-File kann nicht zuverlässig heruntergeladen werden - warum auch immer. Vermutlich ist der Download-Prozess zu langsam, ein Skript-Laufzeitende wird erreicht und der Download bricht ab. Daher am besten die Datei per Hand herunteladen und dann in folgendes Verzeichnis hochladen: nextcloud-data/updater-randomstring/downloads/

Weitere Dinge, die man ausprobieren kann:

  • occ files:scan --all (muss von Belwü ausgeführt werden)
  • Sich im Web-Interface als Administrator ab- und wieder anmelden, Strg+F5 etc.

Step 6: Extracting

Hier kam die Fehlermeldung "Invalid Update-File". Dies erscheint dann, wenn der Download des Nextcloud-Updates nicht vollständig erfolgt ist. Hier den Workaround aus Step 5 ausführen.

Step 10: Keep maintenance mode active?

Dieser Schritt schlägt fehl. Danach ist die Webseite nicht mehr erreichbar. Workaround:

  • occ upgrade (auf der Konsole, also von Belwü)
  • .htaccess-Datei wieder korrekt anpassen
  • Maintenance-Modus verlassen: config/config.php –> Maintenance auf false setzen.

Nachinstallation

Folgende Schritte sind nicht unbedingt nötig, können aber helfen, bei großen und langsamen Systemen die Performance zu ehöhen. Diese Schritte müssen leider von einem Belwü-Mitarbeiter ausgeführt werden.

occ encryption:scan:legacy-format

Bei diesem Scan bekommt man die Information, ob man die veraltete serverseitige Entschlüsselung abstellen kann.

occ db:add-missing-indices

Dies erhöht die Anzahl möglicher Anfragen auf die Tabellen und kann direkt auf der laufenden Instanz ausgeführt werden.

occ db:add-missing-primary-keys

Hier werden einige Primärschlüssel hinzugefügt. Auch dies erfolgt in der laufenden Instanz.

occ db:add-missing-columns

Hier werden auch noch die notwendigen Spalten hinzugefügt, ebenfalls bei laufender Instanz.

Bei den nun folgenden Anweisungen muss die Instanz in den Wartungsmodus gesetzt werden, da es etwas dauern kann und sonst die Datenintegrität gefährdet ist:

occ maintenance:mode --on
occ db:convert-filecache-bigint
occ maintenance:mode --off

Dies ist für die Konvertierung ins bessere Datentypenformat.

Zum Schluss prüfen, welche Module ein Update benötigen und die entsprechenden Updates dann durchführen.

Probleme und Lösungen

Ordner können aufgrund langer Verzeichnis- bzw. Dateinamen nicht gelöscht werden

In diesem Fall haben alle Ordner einen Schreibschutz, den man über Windows nicht aufheben kann. Auch auf der Konsole funktioniert rd bzw. del nicht.

Lösung:

  1. Über Filezilla ins Nextcloud-Data-Verzeichnis gehen und problematischen Ordner löschen.
  2. Im Windows-Filesystem lässt sich daraufhin der Ordner löschen.
Datei wird als gesperrt (lock) beim Synchronisieren angezeigt und lässt sich nicht per Hand entsperren

Über phpMyAdmin in der Table oc_file_locs folgende Anweisung ausführen:

DELETE FROM "oc_file_locs" WHERE 1.