Hallo,
dasselbe Problem hatte ich auch schon einmal. Die Ursache lag in einer automatisch installierten neueren PHP- Version. Es wurden in dem Fall nicht auch automatisch alle PHP- Module der Vorversion installiert sondern nur ein gewisser Basissatz.
Das hat bei mir geholfen:
a) Prüfen der installierten PHP- Module
Die installierten Module lassen sich mit folgendem Befehl auflisten:
sudo dpkg -l | grep php8
In der Ergebnisliste vergleicht man ob es zu jedem “alten” Modul auch ein aktuelles gibt und installiert das neue ggf. nach:
sudo apt install php8.3-mysql
Das spielt man für alle fehlenden Module durch.
Die Liste der minimal benötigten Module findest Du hier:
PHP Modules & Configuration — Nextcloud latest Administration Manual latest documentation .
Zum Vergleich, diese Module sind bei meinem System installiert:
php8.3 php8.3-apcu php8.3-bcmath php8.3-cgi php8.3-cli php8.3-common php8.3-curl php8.3-fpm php8.3-gd php8.3-gmp php8.3-igbinary php8.3-imagick php8.3-imap php8.3-intl php8.3-ldap php8.3-mbstring php8.3-mcrypt php8.3-memcache php8.3-memcached php8.3-msgpack php8.3-mysql php8.3-opcache php8.3-pspell php8.3-readline php8.3-redis php8.3-soap php8.3-sqlite3 php8.3-tidy php8.3-xml php8.3-xmlrpc php8.3-xsl php8.3-zip
(Das können durchaus mehr sein, als NC benötigt.)
b) Anpassen der Standard- PHP Version (CLI, Konsole)
mit dem Befehl
sudo update-alternatives --set php /usr/bin/php8.3
stellt man z.B. auf PHP 8.3 um. Die PHP- Version sollte der von NC empfohlenen entsprechen. Siehe System requirements — Nextcloud latest Administration Manual latest documentation .
Danach sollte der Cron- Job wieder durchlaufen.
Optional kann man im Cron- Job auch den Aufruf von “php” durch den kompletten Pfad und die explizite Version ersetzen:
"php" oder "/usr/bin/php" wird zu "/usr/bin/php8.3".
Sollte wieder mal ein unvollständiges Update von PHP erfolgen, so funktioniert erstmal alles wie gehabt. Allerdings darf man bei gewollten Versionswechseln nicht vergessen den Cron- Job anzupassen.