So sieht die Meldung aus
Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)Häufige Ursachen
apc.enable_cliist in der CLI-Konfiguration nicht auf 1 gesetzt (Standard ist 0).- Modul
php-apcunur für FPM, nicht für die CLI-Version installiert. - occ läuft mit einer anderen PHP-Version als der Webserver, z. B.
phpzeigt auf 8.1, FPM nutzt 8.3. - In der config.php steht APCu, das Modul wurde aber nie installiert.
Prüfen
- Prüfen, ob die CLI das Modul lädt
php -m | grep -i apcu - apc.enable_cli und die geladene php.ini der CLI anzeigen
php -i | grep -E 'apc.enable_cli|Loaded Configuration File' - Konfigurierten lokalen Cache anzeigen
sudo -u www-data php /var/www/nextcloud/occ config:system:get memcache.local - Bestehende Einträge in der CLI-Konfiguration suchen
grep -r 'apc.enable_cli' /etc/php/*/cli/
Lösung
- In
/etc/php/8.3/mods-available/apcu.inidie Zeileapc.enable_cli=1ergänzen. - Fehlendes Modul installieren:
apt install php8.3-apcu– passend zur genutzten PHP-Version. - occ und Cron mit der richtigen Version aufrufen, z. B.
php8.3 occundphp8.3 -f cron.php. - Kein APCu möglich? Dann
'memcache.local' => '\OC\Memcache\Redis'verwenden. - Danach mit
occ statusprüfen, ob die Meldung verschwunden ist.
Häufige Fragen
Muss ich PHP-FPM neu starten?
Für die CLI nicht – die liest ihre Konfiguration bei jedem Aufruf neu. Nur wenn Sie das Modul für FPM neu installieren, ist ein Neustart von PHP-FPM nötig.
Wird dadurch der Cron-Job repariert?
Ja, häufig. cron.php bricht mit derselben Meldung ab, und Nextcloud meldet dann veraltete Hintergrundjobs.