30/06/2026

Allégez Nextcloud en virant les dossiers node_modules de l'index

Par admin

Allégez Nextcloud en virant les dossiers node_modules de l'index

Si vous avez déjà branché un stockage externe sur votre
Nextcloud
et regardé occ files:scan ramper en mode larve durant des plombes lors d’une indexation, vous connaissez le coupable.

C’est évidemment un dossier node_modules qui contient des dizaines de milliers de tout petits fichiers, qui se fait indexer dans la base de Nextcloud, faisant tout ramer jusqu’à l’infini (ou presque…).

Heureusement, Marc Palaus a repris le vieux plugin
files_excludedirs
(lancé à l’origine par Roeland Jago Douma, puis passé de fork en fork) et l’a remis d’aplomb pour Nextcloud 32 à 34. Le taf de ce plugin c’est tout simplement d’ordonner à Nextcloud d’ignorer purement et simplement les dossiers que vous lui indiquez.

Donc si vous lui donnez ce pattern, il esquivera tout ce qui correspond :

occ config:app:set files_excludedirs exclude 
--value '[".snapshot","node_modules","cache/*/tmp"]'

Un tableau JSON, un pattern par entrée, et vous pouvez glisser des wildcards comme cache/*/tmp pour taper plusieurs sous-dossiers d’un coup.

Ensuite, pour voir ce qui tourne, occ config:app:get files_excludedirs exclude. Ou si vous préférez cliquer, l’app propose aussi un menu Exclude Directories dans les réglages admin, avec un bouton Preview Changes pour voir ce que vous allez virer avant de valider.

Pour les fichiers qui n’ont pas encore été indexés, c’est nickel donc. Mais pour ceux qui sont déjà dans la base, cette exclusion les rendra inaccessibles mais ils seront toujours là à traîner dans les résultats de recherche.

Alors pour les dégager pour de bon, voici quelle ligne de commande vous devez lancer :

occ files_excludedirs:clean-cache --dry-run

J’ai mis un dry-run en paramètre, parce que ça permet de faire tourner ça à blanc sur quelques résultats, sans flinger la mauvaise arborescence. Mais une fois que vous êtes chaud patate et sûr de vous, vous devrez relancer la même commande sans le –dry-run.

Notez que si vous montez par exemple un partage genre "Shared/Holiday" directement à la racine d’un utilisateur, vos fichiers ont un chemin du style photo.jpg, et pas Shared/Holiday/photo.jpg. C’est le chemin complet qu’il faudra viser donc…

En tout cas, j’ai été surprise d’apprendre qu’exclure des dossiers du scan, c’est une demande qui traîne sur le tracker Nextcloud depuis l’
issue #6888
publiée en 2017… Ça existait pourtant côté ownCloud. Dommage quoi.

Pour installer ce plugin, vous récupérez l’archive sur la page Releases, vous décompressez dans nextcloud/apps, vous activez depuis l’admin. Ou alors un petit git clone + un composer install pour la version source et le tour est joué !

Et si la lourdeur de Nextcloud vous gonfle plus globalement, il y a des alternatives plus légères comme
OpenCloud
.

Source : korben.info