Nextcloud occ Befehl Segmentation fault

Es kann vorkommen, dass nach Updates seitens des Betriebssystems oder der Nextcloud Version der occ Befehl nicht mehr funktioniert und folgende Fehlermeldung auf der Kommandozeile ausgibt:

Segmentation fault

oder alternativ

Killed

Beispielsweise beim Ausführen des folgenden Befehls nach einem Nextcloud Update:

sudo -u www-data php occ db:add-missing-indices

Dies kann mehrere Gründe haben. In der Regel gibt es hierfür aber auch einfache und schnelle Lösungen.

Problem 1: Geänderte PHP Version

Durch ein Betriebssystem Update kann es vorkommen, dass z.B. eine neue PHP Version auf der Kommandozeile aktiv ist, welche noch nicht für das den occ Befehl kompatibel ist.

Prüfen lässt sich die PHP Version in der Bash mittels:

php -v

Sollte diese noch nicht oder nicht mehr unterstützt sein, dann hilft es temporär den occ Befehl mit der richtigen PHP Version anzugeben, am besten mit dem kompletten Pfad. z.B.

sudo -u www-data /usr/bin/php7.4 occ db:add-missing-indices

Der komplette Pfad lässt sich mit dem Befehl

which php7.4

ermitteln.

Problem 2: PHP APCu Cache aktiviert

Ein aktuelles Problem besteht bei einigen Kunden gerade bei der Nextcloud 21.02.1 Version, wenn in der config.php der ACPu Cache aktiviert ist. Prüfbar ist dies, wenn man die config.php im Ordner config des Nextcloud Wurzelverzeichnisses öffnet und dort nach einem Eintrag a lá

‚memcache.local‘ => ‚\OC\Memcache\APCu‘,

sucht. Sofern man PHP-FPM im Einsatz hat, kann es in diesem Fall es notwendig sein, dass man noch zusätzlich die APCu Option in der PHP-CLI bekannt macht.

Es reicht hier, die entsprechende Konfigurationsdatei zu bearbeiten ( Hier exemplarisch für Ubuntu ):

vi /etc/php/7.4/cli/conf.d/20-apcu.ini

und folgende Zeile zu ergänzen:

apc.enable_cli=1

Danach sollten die occ Befehle wieder wie gewohnt funktionieren.

Gerne unterstützen wir Sie bei der Problembehebung, Wartung und Migration Ihrer Nextcloud Umgebung. Weitere Informationen finden Sie auf unserer Nextcloud Seite.

Tobias Völker