Version: Nextcloud AIO 13.x / Nextcloud 33.0.3
Composant: aio.config.php / LDAP user sync
SymptĂŽme
AprĂšs configuration LDAP/Active Directory sur Nextcloud AIO, seulement 100 utilisateurs apparaissent dans Nextcloud malgrĂ© un AD contenant plusieurs centaines de comptes. La connexion LDAP fonctionne, le filtre est correct, le paging est Ă 2000 â mais impossible de dĂ©passer 100 utilisateurs synchronisĂ©s.
Cause
Le fichier /var/www/html/config/aio.config.php contient une limite silencieuse :
âone-click-instance.user-limitâ => 100,
Ce fichier est gĂ©rĂ© par AIO et Ă©crase la valeur dĂ©finie dans config.php (qui peut ĂȘtre Ă 2000). Il nây a aucun avertissement visible dans lâinterface ou les logs.
PiÚge supplémentaire : la commande php occ config:list affiche bien la valeur 100 mais php occ config:system:set ne peut pas la modifier car elle est définie dans aio.config.php et non en base de données.
Solution
Modifier directement aio.config.php :
docker exec nextcloud-aio-nextcloud \
sed -i "s/'one-click-instance.user-limit' => 100/'one-click-instance.user-limit' => 10000/" \
/var/www/html/config/aio.config.php
# Vérifier
docker exec nextcloud-aio-nextcloud \
cat /var/www/html/config/aio.config.php
Puis relancer la synchronisation LDAP :
# Récupérer l'ID du job Sync
docker exec -u www-data nextcloud-aio-nextcloud \
php occ background-job:list | grep -i "Sync"
# Lancer le job (remplacer XXXX par l'ID)
docker exec -u www-data nextcloud-aio-nextcloud \
php occ background-job:execute XXXX
Diagnostic complet si vous avez le mĂȘme problĂšme
- Vérifier la limite active :
docker exec -u www-data nextcloud-aio-nextcloud \
php occ config:list | grep "user-limit"
- Identifier le fichier source :
docker exec nextcloud-aio-nextcloud \
grep -r "user-limit" /var/www/html/config/
- Compter les vrais utilisateurs en base :
docker exec -it nextcloud-aio-database \
psql -U oc_nextcloud -d nextcloud_database -c \
"SELECT COUNT(*) FROM oc_accounts;"
Note complĂ©mentaire â OUs multiples dans AD
Si vos utilisateurs AD sont répartis dans plusieurs sous-OUs, Nextcloud ne les découvre pas automatiquement. Il faut lister toutes les OUs dans ldapBaseUsers séparées par des points-virgules :
docker exec -u www-data nextcloud-aio-nextcloud \
php occ ldap:set-config s01 ldapBaseUsers \
'OU=service1,OU=DOMAINE,DC=entreprise,DC=fr;OU=service2,OU=DOMAINE,DC=entreprise,DC=fr'
Environnement
- Nextcloud AIO 13.x
- Nextcloud 33.0.3
- Docker sur Debian 12
- Active Directory Windows Server 2019/2022