Wartungsaufgaben bei Nextcloud

Aus manitu Wiki
Zur Navigation springen Zur Suche springen

In diesem Beitrag erklären wir Ihnen, wie Sie selbst oft anfallende Wartungsarbeiten an Ihrer Nextcloud (und Owncloud) selbstständig vornehmen können.

Vorwort

Diese Anleitung geht davon aus, dass bereits ein SSH-Zugang von Ihnen angelegt und eingerichtet wurde. Die Einrichtung haben wir in diesem Wiki-Artikel beschrieben.

Sie sollten vor jeder manuellen Änderungen unbedingt ein umfassendes Backup von Ihren Daten und der Datenbank erzeugen!

In keinem Fall müssen Sie über ein Tool wie z.B sudo zu einem anderen Benutzer werden oder Programme mit einem anderen Benutzer ausführen. Bitte lassen Sie deshalb sudo beim Aufruf der Befehle, auch wenn der Befehl aus einer anderen Dokumentation stammt, weg.

Anpassen der Berechtigungen

Vor der Benutzung des OCC-Tools

Anpassen der Inhaberschaft auf den SSH-Benutzer

Vor der Benutzung des OCC-Tools muss die Inhaberschaft auf den SSH-Benutzer übertragen werden, welcher im Anschluss für den Login und die händischen Anpassungen verwendet werden soll.

Nach der Benutzung des OCC-Tools

Nach der Benutzung des OCC-Tools muss die Inhaberschaft auf den Allgemeinen Paket- und Webserver-Benutzer übertragen werden. Ansonsten kann es zu Problemen bei der Nutzung der Anwendung kommen.

Arbeiten per SSH

Verbindung zum Paket via SSH

Bitte verbinden Sie sich nun mit Ihrem SSH-Client und Ihrem Benutzer mit dem Webhosting-Paket. Bitte vergewissern Sie sich vorher, dass der eingesetzte SSH-Client aktuell und der private Schlüssel im Key-Agent geladen ist.

Bei Windows mit Putty ist dafür Pageant zuständig. Bei UNIX-Systemen wie MacOS oder Linux können die geladenen Schlüssel über den Befehl ssh-add -l ausgelesen werden.

Wechseln Sie in das Verzeichnis Ihrer Anwendung

In den Ordner der Installation navigieren

Bitte wechseln Sie nun mit dem cd Befehl in den Web-Ordner von Ihrem Webhosting-Paket. Wenn Sie die Installation der Anwendung explizit in ein anderes Verzeichnis vorgenommen haben, so wechseln Sie in dieses.

Um in das Hauptverzeichnis von Ihrem Paket zu gelangen muss als erstes der Befehl

cd ../../

ausgeführt werden.

Danach wechseln wir in das Installationsverzeichnis von Nextcloud. In unserem Fall befindet sich dieses im Unterordner web/nextcloud/

 cd web/nextcloud/

Das Installationsverzeichnis muss natürlich, wie oben schon beschrieben, auf den Pfad den Sie bei der Installation verwendet haben, angepasst werden.

Updates für Ihre Cloud einspielen

Updates via SSH einspielen

Wenn Sie die Anwendung über die SSH-Schnittstelle aktualisieren möchten, ist es nötig folgenden Befehl auszuführen:

php updater/updater.phar

An dieser Stelle kann auch explizit eine andere PHP-Version zum Update verwendet werden. Dies ist bei sehr alten Installationen teilweise notwendig, wenn PHP-Versionen über die Weboberfläche nicht mehr zur Verfügung stehen. Dazu wird die PHP-Version mit der Versionsnummer explizit aufgerufen also zum Beispiel:

php7.3 updater/updater.phar

oder auch

php8.1 updater/updater.phar

Bereinigen der automatischen Backups nach einem Update

Ordner löschen

Bei einem Update legt Nextcloud automatisch ein Backup für Sie an. Dieses Backup ist natürlich gut und sinnvoll, belegt jedoch (gerade, wenn Ihre Installation schon mehr genutzt und "älter" ist und damit mehr Updates durchgeführt wurden) einen großen Teil von Ihrem Speicherplatz-Kontingent und von der maximalen Anzahl der erlaubten Dateien in Ihrem Webhosting-Paket. Bei einem Update von Nextcloud 21.0.1 auf 21.0.2 war das Backup fast 500 Megabyte groß und enthielt fast 22.000 einzelne Dateien.

Wechseln Sie dazu, wie weiter oben beschrieben, in das Basis-Verzeichnis Ihrer Nextcloud-Installation.

Wechseln Sie dann in den data-Ordner.

cd data

Lokalisieren Sie an dieser Stelle den updater-Ordner. Sie können sich alle angelegten Ordner mit dem Befehl

ls -la

anzeigen lassen. Entfernen Sie diesen nun mit dem Befehl:

rm -rf [VERZEICHNISNAME]

Der Updater-Ordner enthält immer eine einzigartige ID, bitte ergänzen Sie den Befehl oben deshalb um den genauen Ordnernamen, der Ihnen per ls -la angezeigt wird. Der Befehl würde dann z. B

rm -rf updater-ocw9sab5iqp7

lauten. Bitte beachten Sie auch, dass zum löschen von diesem Verzeichnis die Berechtigungen, wie oben im Artikel beschrieben, gesetzt sein müssen.

Wartungsmodus / Maintenance mode für Ihre Cloud deaktivieren

Wartungsmodus via SSH deaktivieren

Wenn Sie den Wartungsmodus bei einem Update über die Weboberfläche explizit aktiviert haben, können Sie folgenden Befehl verwenden um den Wartungsmodus zu deaktivieren:

php occ maintenance:mode --off

Warnhinweis: In der Datenbank fehlen einige Indizes

Konvertierung der Indizes

Wenn Sie die Hinweismeldung In der Datenbank fehlen einige Indizes erhalten, können Sie natürlich auch den Befehl aus dem Hinweis ausführen:

php occ db:add-missing-indices

Andere Befehle über das OCC-Tool

Alle verfügbaren Befehle für das Occ-Tool ausgeben

Natürlich können auch alle anderen Kommandos über das OCC-Tool abgesetzt und genutzt werden. Dies kann z.B auch bei einem vergessenen Passwort sehr nützlich sein.

Um alle möglichen Kommandos die das OCC-Tool unterstützt mit einer kurzen Beschreibung zu sehen kann der Befehl

php occ list

verwendet werden.

WICHTIG: Sie können natürlich im SSH-Dialog scrollen. Unter Putty ist dies ganz einfach über das Mausrad möglich. Bei Linux kann in der Regel mit der Tastenkombination Shift + Bild ↑ im Terminal gescrollt werden.