Headset gesucht←▼→Flackernde Titel in Delphi-Pro…

tipps&tricks,opensource,werkzeuge

Nextcloud-Update ohne SSH

Erstellt: 07.12.2021 Lesedauer 2 - 3 Min.

Wer eine Nextcloud-Instanz bei einem Hosted Service betreibt, hat häufig keinen oder nur eingeschränkten SSH-Zugriff. Das lässt sich in vielen Fällen mit einem Kniff lösen.

Viele Hoster setzen auf Plesk als Verwaltungsoberfläche. Da diese Verwaltung vom Service-Anbieter konfiguriert werden kann, variieren die Möglichkeiten. In den meisten Fällen wird – aus nachvollziehbaren Gründen – kein oder nur ein stark eingeschränkter SSH-Zugriff angeboten.

Die Beschränkungen verhindern bis auf seltene Ausnahmen auch den Aufruf des PHP-Interpreters, der für die Ausführung der Datenbank-Pflege mit dem Nextcloud-Tool „occ“ erforderlich ist.

Ab hier setze ich ein Datenbank-Backup voraus.

Dafür lassen sich in vielen Fällen „Aufgaben planen“. Im Tech-Sprech sind das „Cron-Jobs“. Damit lässt sich diese Einschränkung vollständig umgehen. Voraussetzung ist lediglich, dass selbst eingerichtete Cron-Jobs PHP-Scripte starten können. Was sich schnell mit Aufruf der „Aufgaben planen“-Seite klären lässt.

Mit Auswahl des Schalters Aufgabentyp: PHP-Skript ausführen wird die zugeordnete PHP-Version (oder wie hier auswählbar) für den Aufruf des Skirpts verwendet. occ liegt im Installationsverzeichnis von Nextcloud. Das kann httpdocs oder – wie bei einigen Hostern mitterlweile üblich – ein Verzeichnis mit dem Namen der (Sub-)Domain sein.

Die Verwendung der „Aufgabe“ ist einfach: Nextcloud erzählt alles Nötige. Aus EinstellungenVerwaltungÜbersicht können die erforderlichen Befehle herauskopiert werden. Relevant sind die db:…-Einträge. occ ist das Script am Ende des Nextcloud-Pfades (s. Bild), db:… ist das Argument für die jeweilige Reparatur.

Der Parameter Aktiv sollte deaktiviert werden – wobei das im Grunde egal ist, wenn die Aufgabe mit Jetzt ausführen erledigt wird, aber kein Klick auf OK erfolgt. Das ist unnötig, denn jeder „Job“ muss typischerweise nur einmal ausgeführt werden. Das ist immer occ mit wechselnden Argumenten. Was genau steht – s.o. – in der Übersicht im Fließtext. Möglich sind z.B.

Speziell die Letzte Aktion kann an einer Sicherheitsabfrage scheitern, weil das bei größeren Installation richtig lange dauern kann. Das System beantwortet die Frage automatisch mit n (=nein). Doch das lässt sich beheben, indem die Abfrage mit einem vorangestellten -n unterdrückt wird:

-n db:convert-filecache-bigint lässt die Änderung durchlaufen.

Während der Änderungen sollten keine Zugriffe auf die betroffene Nextcloud-Instanz erfolgen. Das könnte ein unerwartetes Verhalten hervorrufen, im ungünstigsten Fall die Datenbank beschädigen.

Mit Jetzt ausführen wird der jeweilige Job gestartet, Plesk gibt informationen aus, ob das geklappt oder wo es eventuell geklemmt hat.

Die Seite kann offen bleiben, die Argumente können geändert und ein neuer Aufruf gestartet werden. Shell-Fetischisten werden das umständlich finden, für „GUI-Nutzer“ ist das durchaus komfortabler, als sich mit Shell-Befehlen herum zu schlagen.

Ist alles erledigt, wird die Seite sinnvoller Weise mit Abbrechen verlassen, damit es keinen Jobeintrag gibt.