Nach Update auf 22.2.3 keine Freigaben mehr möglich

Hallo an alle

Ich habe ein eigenartiges Problem mit meiner Nextcloud nach dem Update.
Leider wird die Beschreibung etwas umfangreicher, sorry dafür.

Meine Nextcloud läuft unter TrueNAS, das seit Jahren sehr stabil und performant. Es ist eine alte Installation, im Jahr 2016 mit owncloud 9 unter FreeNAS begonnen, 2018 nach nextcloud 10 gewechselt und seither immer aktuell gehalten. Die Updates mache ich grundsätzlich auf der Console.
Bis Ende Dezember 2021 war die Version 20.0.9 im Einsatz.
Das Update teste ich immer in einem TrueNAS unter VirtualBox. Dort gibt es auch ein kleines Test-Nextcloud.
So habe ich hier das Update durchgespielt, von 20.0.9 auf 20.0.14, dann auf 21.0.7 und auf 22.2.3.
Die Test-Updates liefen alle problemlos durch, nach jedem einzelnen habe ich die grundsätzlichen Funktionen getestet.
Da alles funktionierte habe ich genau die gleichen Schritte an meiner echten Nextcloud durchgeführt, auch hier lief alles reibungslos, kein einziger Fehler zu erkennen.
Nach einigen Tagen sollte wieder mal ein Verzeichnis geteilt werden, hier kam dann nur der Fehler “Fehler beim Erstellen der Freigabe”.
Der Fehler ist reproduzierbar und tritt bei allen Benutzern, auch dem Admin, auf.

Im Log findet man dann diesen Fehler (hier nur die Message, die vollständige Fehlermeldung siehe ganz unten)

“message”: “openssl_sign(): supplied key param cannot be coerced into a private key at /usr/local/www/nextcloud/apps/notifications/lib/Push.php#440”,

Ich habe daraufhin in der Test-Nextcloud auch die Freigabe getestet (was ich bei meinem Update-Test bisher nicht getan habe), dort funktioniert es problemlos.
Nun habe ich meinen gesamten Stand der Version 19 in die Testcloud eingespielt und damit die Updates vorgenommen. Bis zum Update auf Version 21.0.7 funktioniert das Teilen problemlos, danach habe ich dort genau den gleichen Fehler. Egal ob ich auf 22.0.0 oder auf 22.2.3 update.
Um erst einmal wieder eine funktionierende Nextcloud zu nutzen habe ich das Backup von vor dem Update wieder aktiviert und alle Updates bis zur Version 21.0.7 vorgenommen. Das funktioniert, aber ich darf jetzt keine weiteren Updates vornehmen.
Meine Schlussfolgerung: es muss an dem alten Datenbestand (File und Datenbank) liegen, da es mit meiner kleinen Text-Nextcloud keine solche Probleme gibt.

Wer hat hier Ideen, wie man der Sache auch den Grund gehen kann?
Ich kann ja nicht mehr lange auf Version 21 stehen bleiben, ich kann aber auch nicht meine Nextcloud leer neu aufsetzen.

Hier noch die taktisch-technischen Daten:

  • Bei welchen Anbieter? Lokaler Server
  • Auf welcher Hardware? lokaler Server
  • Betriebssystem: TrueNAS-12.0-U7
  • Nextcloud Version: 21.0.7, Fehler ab 22.0.0
  • PHP Version: 7.4.26
  • Welche Datenbank? Server version: 10.5.13-MariaDB FreeBSD Ports
  • nginx version: nginx/1.20.1
  • Läuft im jail
  • Netzwerk: direkt an der Fritz!box
  • Wurden vor kurzen Server Updates gemacht? ja, von FreeNAS 11.3-U5 nach FreeNAS-12.0-U7
  • Habt ihr die Logs angesehen von Nextcloud und von System? ja
  • Bei was für einer Aktion ist der Fehler aufgetreten? Freigabe von Dateien bzw. Ordnern

Danke an alle

Steffen

Hier der vollständige Ausschnitt aus dem Log, lesbar aufbereitet:

{
“reqId”: “hvnQqrJqCcIKqXg54dWe”,
“level”: 3,
“time”: “2022-01-09T21:13:26+01:00”,
“remoteAddr”: “192.168.xxx.xxx”,
“user”: “ocadminxxxxx”,
“app”: “PHP”,
“method”: “POST”,
“url”: “/ocs/v2.php/apps/files_sharing/api/v1/shares”,
“message”: “openssl_sign(): supplied key param cannot be coerced into a private key at /usr/local/www/nextcloud/apps/notifications/lib/Push.php#440”,
“userAgent”: “Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0”,
“version”: “22.2.3.0”,
“exception”: {
“Exception”: “Error”,
“Message”: “openssl_sign(): supplied key param cannot be coerced into a private key at /usr/local/www/nextcloud/apps/notifications/lib/Push.php#440”,
“Code”: 0,
“Trace”: [
{
“function”: “onError”,
“class”: “OC\Log\ErrorHandler”,
“type”: “::”
},
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/Push.php”,
“line”: 440,
“function”: “openssl_sign”
},
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/Push.php”,
“line”: 224,
“function”: “encryptAndSign”,
“class”: “OCA\Notifications\Push”,
“type”: “->”,
“args”: [
“*** sensitive parameters replaced "
]
},
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/App.php”,
“line”: 58,
“function”: “pushToDevice”,
“class”: “OCA\Notifications\Push”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Notification/Manager.php”,
“line”: 294,
“function”: “notify”,
“class”: “OCA\Notifications\App”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/Notification/Listener.php”,
“line”: 68,
“function”: “notify”,
“class”: “OC\Notification\Manager”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/AppInfo/Application.php”,
“line”: 162,
“function”: “shareNotification”,
“class”: “OCA\Files_Sharing\Notification\Listener”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 264,
“function”: “OCA\Files_Sharing\AppInfo\{closure}”,
“class”: “OCA\Files_Sharing\AppInfo\Application”,
“type”: “->”,
“args”: [
"
sensitive parameters replaced "
]
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 239,
“function”: “doDispatch”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 73,
“function”: “callListeners”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/EventDispatcher/SymfonyAdapter.php”,
“line”: 123,
“function”: “dispatch”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Share20/Manager.php”,
“line”: 820,
“function”: “dispatch”,
“class”: “OC\EventDispatcher\SymfonyAdapter”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/Controller/ShareAPIController.php”,
“line”: 657,
“function”: “createShare”,
“class”: “OC\Share20\Manager”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,
“line”: 217,
“function”: “createShare”,
“class”: “OCA\Files_Sharing\Controller\ShareAPIController”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,
“line”: 126,
“function”: “executeController”,
“class”: “OC\AppFramework\Http\Dispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/App.php”,
“line”: 156,
“function”: “dispatch”,
“class”: “OC\AppFramework\Http\Dispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Route/Router.php”,
“line”: 302,
“function”: “main”,
“class”: “OC\AppFramework\App”,
“type”: “::”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v1.php”,
“line”: 62,
“function”: “match”,
“class”: “OC\Route\Router”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v2.php”,
“line”: 23,
“args”: [
“/usr/local/www/nextcloud/ocs/v1.php”
],
“function”: “require_once”
}
],
“File”: “/usr/local/www/nextcloud/lib/private/Log/ErrorHandler.php”,
“Line”: 92,
“CustomMessage”: “–”
}
}
{
“reqId”: “hvnQqrJqCcIKqXg54dWe”,
“level”: 3,
“time”: “2022-01-09T21:13:26+01:00”,
“remoteAddr”: “192.168.xxx.xxx”,
“user”: “ocadminxxxxx”,
“app”: “no app in context”,
“method”: “POST”,
“url”: “/ocs/v2.php/apps/files_sharing/api/v1/shares”,
“message”: “base64_encode() expects parameter 1 to be string, null given”,
“userAgent”: “Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0”,
“version”: “22.2.3.0”,
“exception”: {
“Exception”: “Exception”,
“Message”: “base64_encode() expects parameter 1 to be string, null given”,
“Code”: 0,
“Trace”: [
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/App.php”,
“line”: 156,
“function”: “dispatch”,
“class”: “OC\AppFramework\Http\Dispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Route/Router.php”,
“line”: 302,
“function”: “main”,
“class”: “OC\AppFramework\App”,
“type”: “::”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v1.php”,
“line”: 62,
“function”: “match”,
“class”: “OC\Route\Router”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v2.php”,
“line”: 23,
“args”: [
“/usr/local/www/nextcloud/ocs/v1.php”
],
“function”: “require_once”
}
],
“File”: “/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,
“Line”: 158,
“Previous”: {
“Exception”: “TypeError”,
“Message”: “base64_encode() expects parameter 1 to be string, null given”,
“Code”: 0,
“Trace”: [
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/Push.php”,
“line”: 446,
“function”: “base64_encode”
},
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/Push.php”,
“line”: 224,
“function”: “encryptAndSign”,
“class”: “OCA\Notifications\Push”,
“type”: “->”,
“args”: [
"
sensitive parameters replaced "
]
},
{
“file”: “/usr/local/www/nextcloud/apps/notifications/lib/App.php”,
“line”: 58,
“function”: “pushToDevice”,
“class”: “OCA\Notifications\Push”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Notification/Manager.php”,
“line”: 294,
“function”: “notify”,
“class”: “OCA\Notifications\App”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/Notification/Listener.php”,
“line”: 68,
“function”: “notify”,
“class”: “OC\Notification\Manager”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/AppInfo/Application.php”,
“line”: 162,
“function”: “shareNotification”,
“class”: “OCA\Files_Sharing\Notification\Listener”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 264,
“function”: “OCA\Files_Sharing\AppInfo\{closure}”,
“class”: “OCA\Files_Sharing\AppInfo\Application”,
“type”: “->”,
“args”: [
"
sensitive parameters replaced ***”
]
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 239,
“function”: “doDispatch”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php”,
“line”: 73,
“function”: “callListeners”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/EventDispatcher/SymfonyAdapter.php”,
“line”: 123,
“function”: “dispatch”,
“class”: “Symfony\Component\EventDispatcher\EventDispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Share20/Manager.php”,
“line”: 820,
“function”: “dispatch”,
“class”: “OC\EventDispatcher\SymfonyAdapter”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/apps/files_sharing/lib/Controller/ShareAPIController.php”,
“line”: 657,
“function”: “createShare”,
“class”: “OC\Share20\Manager”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,
“line”: 217,
“function”: “createShare”,
“class”: “OCA\Files_Sharing\Controller\ShareAPIController”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,
“line”: 126,
“function”: “executeController”,
“class”: “OC\AppFramework\Http\Dispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/AppFramework/App.php”,
“line”: 156,
“function”: “dispatch”,
“class”: “OC\AppFramework\Http\Dispatcher”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/lib/private/Route/Router.php”,
“line”: 302,
“function”: “main”,
“class”: “OC\AppFramework\App”,
“type”: “::”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v1.php”,
“line”: 62,
“function”: “match”,
“class”: “OC\Route\Router”,
“type”: “->”
},
{
“file”: “/usr/local/www/nextcloud/ocs/v2.php”,
“line”: 23,
“args”: [
“/usr/local/www/nextcloud/ocs/v1.php”
],
“function”: “require_once”
}
],
“File”: “/usr/local/www/nextcloud/apps/notifications/lib/Push.php”,
“Line”: 446
},
“CustomMessage”: “–”
}
}

Hi,
schon die Standard sachen durchlaufen lassen?

sudo -u www-data php occ db:add-missing-indices
sudo -u www-data php occ db:add-missing-columns
sudo -u www-data php occ db:convert-filecache-bigint

Hallo,

nein, ich habe immer nur die Anweisungen zusätzlich ausgeführt, die bei dem Update angezeigt wurden. Ich werde es mal durchführen und berichten.

Hallo Nanu,

die drei Befehle sind problemlos durchgelaufen:
$ php occ db:add-missing-indices
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see https://www.php.net/manual/en/book.pcntl.php
Check indices of the share table.
Check indices of the filecache table.
Check indices of the twofactor_providers table.
Check indices of the login_flow_v2 table.
Check indices of the whats_new table.
Check indices of the cards table.
Check indices of the cards_properties table.
Check indices of the calendarobjects_props table.
Check indices of the schedulingobjects table.
Check indices of the oc_properties table.
Done.
$ php occ db:add-missing-columns
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see https://www.php.net/manual/en/book.pcntl.php
Check columns of the comments table.
Done.
$ php occ db:convert-filecache-bigint
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see https://www.php.net/manual/en/book.pcntl.php
All tables already up to date!

An dem Problem hat sich leider nichts geändert.
Trotzdem Danke für deinen Gedanken.

Schalte mal alle apps aus die nicht in der Default Liste sind.

Hallo,

leider hilft es auch nicht, alle zusätzlichen Apps zu deaktivieren.