Zuletzt geändert von Clemens Dörfler am 2023/03/29 08:44

Von Version 10.1
bearbeitet von FlorianPuie@sbede
am 2022/02/15 14:35
Änderungskommentar: Neuen Anhang 10_nextcloud_next-prun-after-package-upgrade_major-version.png hochladen
Auf Version 20.1
bearbeitet von Clemens Dörfler
am 2023/03/29 08:44
Änderungskommentar: Renamed from xwiki:Main.Nextcloud.Allgemein.Nextcloud Update-Fehler durch Versionssprung.WebHome

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,0 +1,1 @@
1 +Nextcloud Update-Fehler durch Versionssprung
Übergeordnete Seite
... ... @@ -1,0 +1,1 @@
1 +Main.Nextcloud.Allgemein.WebHome
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.FlorianPuie@sbede
1 +xwiki:XWiki.clemensdoerfler@sbede
Inhalt
... ... @@ -1,0 +1,77 @@
1 +Kommt es nach dem ldupdate zu einem Überspringen einer Major-Version von Nextcloud, kann es dazu führen, dass diese trotz ausreichend vieler (% style="color:#2980b9" %)**prun**(%%)s nicht mehr erreichbar ist.
2 +Im Folgenden ein Fallbeispiel dazu. Ein LogoDIDACT Server wurde viele Monate lang nicht aktualisiert und der Aufruf von {{box}}ldupdate{{/box}} führte deshalb dazu, dass Nextcloud sich gleich um zwei Major-Versionen von 20.x auf 22.x aktualisiert hat.
3 +
4 +{{toc start="4" numbered="true"/}}
5 +
6 +
7 +==== Ausgangslage ====
8 +
9 +Zu sehen ist zunächst jeweils der Puppet- und Nextcloud-Versionsstand vor der Aktualisierung des Servers.
10 +
11 +[[image:01_nextcloud-version_pre-ldupdate.png||height="239" width="956"]]
12 +
13 +[[image:02_puppet-version_pre-update.png||height="129" width="595"]]
14 +
15 +
16 +==== Gewöhnliche Aktualisierung per ldupdate ====
17 +
18 +Führt man ein {{box}}ldupdate{{/box}} und anschließend einen {{box}}prun{{/box}} im LXC-Container nextcloud-g1 aus, sieht man, wie die neuen Pakete installiert werden.
19 +
20 +[[image:03_nextcloud-1st-prun_after-ldupdate.png||height="547" width="1336"]]
21 +
22 +
23 +In diesem Beispiel sieht man anhand der Server-Logs, dass Nextcloud einen Sprung von 20.0.7 auf 22.2.0 gemacht hat. Die Major-Version 21.x wurde übersprungen, wodurch das eingangs erwähnte Problem ausgelöst wird.
24 +
25 +[[image:04_nextcloud-new-packages_after-ldupdate.png||height="218" width="827"]]
26 +
27 +
28 +Bei einem zweiten {{box}}prun{{/box}} im Container ist dann dieser Fehler zu sehen:
29 +
30 +[[image:05_nextcloud-2nd-prun_after-ldupdate_error-major-version.png||height="357" width="1358"]]
31 +
32 +
33 +==== Lösung des Problems durch gezieltes Aktualisieren aller Nextcloud Hauptversionen, die dazwischen liegen ====
34 +
35 +Um den Fehler zu beheben, muss man auf die ursprünglich übersprungene Major-Version downgraden. Über das Kommando im nächsten Screenshot kann man sich die verfügbaren Paketversionen anzeigen lassen.
36 +In diesem Fall kommt die Version 21.0.2 in Frage.
37 +
38 +{{code language="bash" width="20%"}}
39 +apt-cache madison ld-nextcloud
40 +{{/code}}
41 +
42 +[[image:1645179101612-273.png]]
43 +
44 +
45 +Nun installiert man die Pakete ld-nextcloud sowie ld-nextcloud-fix in der benötigten Version (durch strikte Angabe der Versionsnummer im APT-Paketmanager).
46 +
47 +(% class="box successmessage" %)
48 +(((
49 +**Hinweis:** Beide Pakete sollten immer dieselbe Versionsnummer erhalten.
50 +)))
51 +
52 +{{code language="bash" width="20%"}}
53 +apt-install ld-nextcloud=23.0.11
54 +{{/code}}
55 +
56 +[[image:07_nextcloud_install-major-versions_step-by-step.png||height="351" width="724"]]
57 +
58 +(% class="box successmessage" %)
59 +(((
60 +Wichtig: Seit Nextcloud-Version 23.0.11 ist das Paket ld-nextcloud-fix nicht mehr vorhanden. Stattdessen ausschließlich das ld-nextcloud Paket  in der benötigten Version installieren!
61 +)))
62 +
63 +Es ist wichtig, nach jedem Versionssprung einen {{box}}prun{{/box}} auszuführen, damit die Aktualisierung der Nextcloud sowie der zugehörigen Apps per OCC durch Puppet ausgeführt wird. Jetzt hat die Nextcloud die Version 21.0.2.
64 +
65 +[[image:08_nextcloud_necessary-prun-after-package-upgrade_for-each-major-version.png||height="558" width="1285"]]
66 +
67 +
68 +Anschließend kann man das nächste Paketbundle (d.h. ld-nextcloud sowie ld-nextcloud-fix in einer nächsthöheren Hauptversion) installieren und führt danach wieder einen {{box}}prun{{/box}} aus.
69 +
70 +[[image:09_nextcloud_install-next-major-version_step-by-step.png||height="283" width="908"]]
71 +
72 +[[image:10_nextcloud_next-prun-after-package-upgrade_major-version.png||height="557" width="1313"]]
73 +
74 +
75 +Die Nextcloud ist in diesem Beispiel auf der aktuellsten Version und es stehen keine weiteren Upgrades zur Verfügung. Dies wurde abschließend durch Aufruf des Kommandos {{box}}apt-get upgrade{{/box}} verifiziert.
76 +
77 +[[image:11_nextcloud_no-more-upgrades_finish.png]]
11_nextcloud_no-more-upgrades_finish.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.FlorianPuie@sbede
Größe
... ... @@ -1,0 +1,1 @@
1 +15.5 KB
Inhalt
1645179101612-273.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.jonasmayer@sbede
Größe
... ... @@ -1,0 +1,1 @@
1 +203.5 KB
Inhalt