Wie ich hier schon erwähnt habe, hab ich in der Vergangenheit immer ein NextCloud Update mittels FTP eingespielt. Das war „damals“ für mich der „Königsweg“, weil die Update-Prozedur über das NC-Backend immer abgebrochen hat.
Doch habe so die Befürchtung, dass ich mir mal mit dem „FTP Update“ mal was an meiner NextCloud-Instanz zerschossen habe, weil seit einiger Zeit ich die „Benutzerverwaltung“ bzw. „Apps“ von NC nicht mehr aufrufen konnte. Wenn ich dies tat, dann bekam ich nur eine leer Browserseite angezeigt.
Nun hab ich heute gesehen, dass es wieder mal ein NC Update gibt (auf die Version 20.0.5) und diese brach mir auch wieder im NextCloud-Backend mit einer Fehlermeldung bei dem Punkt „Verifing integrity“ ab.
Ich hab mich darauf hin mal beim allinkl-Support gemeldet und von dort den Tipp bekommen, dass ich doch mal das NextCloud Upgrade mittels PHP Script probieren sollte.
Dazu müsste ich zwei Dateien anlegen und diese in den Ordner „Updater“ in meiner NextCloud-Installation legen.
Die erste Datei enthält das Script für das eigentliche Upgrade und hab ich mal „upgrade.php“ benannt.
<?php
exec("php73 updater.phar --no-interaction 2>&1", $out, $result);
echo "Returncode: " .$result ."<br>";
echo "Ausgabe des Scripts: " ."<br>";
echo "<pre>"; print_r($out);
?>
Die zweite Datei ist ein Update von Nextcloud mit allen Apps, was hin und wieder auch noch nötig sein kann – und die hab ich „update.php“ genannt.
<?php
exec("php73 ../occ upgrade 2>&1", $out, $result);
echo "Returncode: " .$result ."<br>";
echo "Ausgabe des Scripts: " ."<br>";
echo "<pre>"; print_r($out);
?>
Im Anschluss muss man dann nur noch die URL der beiden Scripts aufrufen und somit laufen lassen.
https://nextcloud.deinedomain.de/updater/upgrade.php bzw.
https://nextcloud.deinedomain.de/updater/update.php
Das erste PHP-Script (upgrade.php) hat ca. eine gute Minute gebraucht, bis es eine Rückmeldung im Browser gegeben hat und es wurde mir dort mitgeteilt, dass das Upgrade durch geführt wurde. Was ja schon mal ein Erfolg gegenüber der NC-Backend-Variante war.
Als ich dann das zweite Script laufen ließ (update.php) bekam ich nur die Meldung, dass ich schon auf der aktuellsten Version von NextCloud sei und nichts gemacht wurde.
Aber: Netter Nebeneffekt war, dass nach dem Upgrade meine User- und App-Verwaltung wieder ging! 🙂
Danke an dieser Stelle auch an den klasse Support von allinkl.de!
Super, dass es funktionierte. Ich bin auch mit ALL-INKL SEHR zufrieden!
Hallo,
das könnte die Lösung für mein Problem sein.
Frage: nutzt du php 7.3 (einstellbar in KAS), so dass dein Eintrag lautet:
exec(„php73
wenn ich php 7.4 nutze, sollte mein Eintrag also lauten
exec(„php74
sehe ich das richtig?
Danke!
Ja, genau. Ich nutzte damals die PHP73.
Servus Markus
Danke für die super schnelle Antwort, Markus!
Hab doch noch zwei Fragen:
– den Wartungsmodus muss ich vorher manuell aktivieren?
– wird der Prozess dann das Update installieren, was mir unter Settings/Administration/Overview/Version angezeigt wird? Ich nutze aktuell 20.0.8 und als Update wird mir 20.0.14 angezeigt, obwohl 23.0 die aktuelle Version ist. Vermutlich muss ich dann schrittweise updaten?
Danke und viele Grüße, du hast mir echt geholfen, genau dein Problem hatte ich auch.
VG
Wartungsmodus weiß ich jetzt garnicht mehr genau… ist schon a bissal her bei mir. 😉
Und normalerweise kannst du bei einem Update auch Versionen überspringen. Zumindest war es bei mir so.