Wiki-Quellcode von Nextcloud Update-Fehler durch Versionssprung
Zuletzt geändert von Clemens Dörfler am 2023/03/29 08:44
Verstecke letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
![]() |
17.1 | 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. | ||
![]() |
11.2 | 3 | |
![]() |
17.1 | 4 | {{toc start="4" numbered="true"/}} |
![]() |
11.2 | 5 | |
6 | |||
![]() |
17.1 | 7 | ==== Ausgangslage ==== |
8 | |||
9 | Zu sehen ist zunächst jeweils der Puppet- und Nextcloud-Versionsstand vor der Aktualisierung des Servers. | ||
10 | |||
![]() |
11.2 | 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 | |||
![]() |
17.1 | 16 | ==== Gewöhnliche Aktualisierung per ldupdate ==== |
![]() |
11.2 | 17 | |
![]() |
17.1 | 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 | |||
![]() |
11.2 | 20 | [[image:03_nextcloud-1st-prun_after-ldupdate.png||height="547" width="1336"]] |
21 | |||
22 | |||
![]() |
17.1 | 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. |
![]() |
11.2 | 24 | |
25 | [[image:04_nextcloud-new-packages_after-ldupdate.png||height="218" width="827"]] | ||
26 | |||
27 | |||
![]() |
17.1 | 28 | Bei einem zweiten {{box}}prun{{/box}} im Container ist dann dieser Fehler zu sehen: |
![]() |
11.2 | 29 | |
30 | [[image:05_nextcloud-2nd-prun_after-ldupdate_error-major-version.png||height="357" width="1358"]] | ||
31 | |||
32 | |||
![]() |
18.1 | 33 | ==== Lösung des Problems durch gezieltes Aktualisieren aller Nextcloud Hauptversionen, die dazwischen liegen ==== |
![]() |
11.2 | 34 | |
![]() |
17.1 | 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 | |||
![]() |
20.1 | 38 | {{code language="bash" width="20%"}} |
39 | apt-cache madison ld-nextcloud | ||
40 | {{/code}} | ||
41 | |||
![]() |
14.1 | 42 | [[image:1645179101612-273.png]] |
![]() |
11.2 | 43 | |
44 | |||
![]() |
17.1 | 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). |
![]() |
11.2 | 46 | |
![]() |
17.1 | 47 | (% class="box successmessage" %) |
48 | ((( | ||
49 | **Hinweis:** Beide Pakete sollten immer dieselbe Versionsnummer erhalten. | ||
50 | ))) | ||
51 | |||
![]() |
20.1 | 52 | {{code language="bash" width="20%"}} |
53 | apt-install ld-nextcloud=23.0.11 | ||
54 | {{/code}} | ||
55 | |||
![]() |
11.2 | 56 | [[image:07_nextcloud_install-major-versions_step-by-step.png||height="351" width="724"]] |
57 | |||
![]() |
18.4 | 58 | (% class="box successmessage" %) |
![]() |
18.2 | 59 | ((( |
![]() |
18.3 | 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! |
![]() |
18.2 | 61 | ))) |
![]() |
11.2 | 62 | |
![]() |
17.1 | 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. |
![]() |
11.2 | 64 | |
65 | [[image:08_nextcloud_necessary-prun-after-package-upgrade_for-each-major-version.png||height="558" width="1285"]] | ||
66 | |||
67 | |||
![]() |
17.1 | 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. |
![]() |
11.2 | 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 | |||
![]() |
17.1 | 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. |
![]() |
11.2 | 76 | |
77 | [[image:11_nextcloud_no-more-upgrades_finish.png]] |