Skip to main content

4. Configuration Nextcloud 29

Important : A partir d’ici, toutes les commandes seront exécutées en tant que root.

1. Supprimez l'index.php : 

sudo -u www-data php /var/www/nextcloud/occ config:system:set htaccess.RewriteBase --value="/"
sudo -u www-data php /var/www/nextcloud/occ maintenance:update:htaccess

Pretty URLs permet de supprimer le « index.php » dans la barre d’adresse.

On peut aussi ajouter cette ligne dans le fichier config.php du dossier config de nextcloud

sudo nano /var/www/nextcloud/config/config.php
'htaccess.IgnoreFrontController' => true,

2. Gestion des fichiers supprimés (Corbeille) :

L’application Deleted files installée par défaut gère les fichiers supprimés en fonction du paramètre trashbin_retention_obligation du fichier config.php.

2.1 Vérification du paramètre trashbin_retention_obligation :

sudo -u www-data php /var/www/nextcloud/occ config:system:get \trashbin_retention_obligation

Si aucune valeur n’est retournée, la configuration par défaut sera utilisée.

2.2 Modification du paramètre trashbin_retention_obligation :

sudo -u www-data php /var/www/nextcloud/occ config:system:set \trashbin_retention_obligation --value="auto, 15"

Les fichiers seront définitivement supprimés au bout de 15 jours.
Si la taille de l’ensemble des fichiers supprimés dépassent la limite autorisée (par défaut 50% de l’espace libre), l’application Deleted files supprimera les fichiers les plus anciens jusqu’à descendre en dessous de la limite autorisée.

2.3 Forcer la suppression définitive des fichiers supprimés ne respectant plus les conditions de rétention :

sudo -u www-data php /var/www/nextcloud/occ trashbin:expire

2.4 Forcer la suppression définitive de tous les fichiers supprimés :

sudo -u www-data php /var/www/nextcloud/occ trashbin:cleanup --all-users

Il est possible de remplacer --all-users par le nom des utilisateurs séparés par des espaces. Pour un utilisateur provenant de l'annuaire LDAP, il faudra utiliser son ID.

Pour aller plus loin : Nextcloud – Deleted Items (trash bin) et Nextcloud – Occ Trashbin

3. Tâches de fond :

Pour son bon fonctionnement, Nextcloud exécute régulièrement des tâches de fond (Jobs).
Exemple de tâche : Scan à la recherche de nouveaux fichiers.
Par défaut, ces tâches sont exécutées à chaque chargement de page.
Cependant, si personne ne visite le site, aucune tâche ne sera exécutée.
Il est donc recommandé d’utiliser Cron afin d’exécuter ces tâches de manière régulière sans intervention humaine.

4.1 Création de la tâche Cron :

sudo crontab -u www-data -e

Ajouter la ligne suivante à la fin du fichier :

*/5 * * * * php -f /var/www/nextcloud/cron.php

Le fichier cron.php contenant les tâches Nextcloud sera exécuté toutes les 5 minutes.
Cet intervalle peut être modifié en remplaçant le 5 par une autre valeur.

4.2 Configuration du type de tâche dans Nextcloud :

sudo -u www-data php /var/www/nextcloud/occ background:cron

Pour aller plus loin, vous pouvez consulter la page Background jobs de la documentation officielle.

4. Réglage de la Taille limite de téléchargement :

Édition du fichier php.ini :

sudo nano /etc/php/8.3/fpm/php.ini
sudo sed -i -e "s/^;* *upload_max_filesize *= *.*$/upload_max_filesize=16G/g" /etc/php/8.3/fpm/php.ini
sudo sed -i -e "s/^;* *post_max_size *= *.*$/post_max_size=16G/g" /etc/php/8.3/fpm/php.ini

Vérification :

cat /etc/php/8.3/fpm/php.ini | egrep "^;* *upload_max_filesize *=|^;* *post_max_size *="

Résultat :

image.png

Redémarrer : 

sudo systemctl reload php8.3-fpm.service

5. Ajout d'index manquants :

La mémoire c’est OK, le cache c’est OK, maintenant il reste encore quelques messages concernant la base de données et quelques index manquants. 

La base de données a quelques index manquants. L'ajout d'index dans de grandes tables peut prendre un certain temps. Elles ne sont donc pas ajoutées automatiquement. En exécutant "occ db:add-missing-indices", ces index manquants pourront être ajoutés manuellement pendant que l'instance continue de tourner. Une fois les index ajoutés, les requêtes sur ces tables sont généralement beaucoup plus rapides.

Alors nous allons devoir ajouter nous-mêmes ces index manquants. Pour ça, aller dans le répertoire de nexcloud :

cd /var/www/nextcloud/

Lancer la commande suivante qui devrait ajouter les index manquants : 

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

image.png

Maintenant si vous rafraîchissez votre page « Vue d’ensemble » il ne devrait plus y avoir d’erreur concernant les index manquants.

Pour la version 30.0 pour corriger certaines erreurs :

sudo -u www-data php occ maintenance:repair --include-expensive

6. Connexion à LDAP ou Active Directory : 

Cette étape est facultative, si vous n’avez pas d’annuaire LDAP, passez à l’étape suivante.

Grâce à l’application LDAP user and group backend, il est possible de connecter Nextcloud à un Annuaire LDAP (Exemple : Active Directory avec Samba 4).

Configuration LDAP

Serveur :

image.png

Si votre annuaire LDAP est sur un Serveur AD Samba 4.
Il faudra rajouter la ligne ldap server require strong auth = no dans la section [global] du fichier de configuration de samba 4 (Généralement /etc/samba/smb.conf).
Un redémarrage du service Samba sera nécessaire : systemctl restart samba.service

Utilisateurs :

image.png

Il s’agit d’un exemple.
Pour des raisons d’organisation, un groupe « Nextcloud Users » a été créé sur le Contrôleur de Domaine.

Attributs de login :

image.png

Groupes :

image.png

Les utilisateurs et les groupes de l’AD sont maintenant disponibles dans Nextcloud.

7. Utilisateurs et Groupes :

7.1 Création Utilisateurs et Groupes :

Se rendre dans le menu Utilisateurs.

image.png

Cliquer sur « Ajouter un groupe » pour créer un groupe.
Cliquer sur « Nouvel utilisateur » pour créer un utilisateur.

7.2 Administrateurs Nextcloud :

Pour définir un utilisateur en tant qu’Administrateur, il faut l’ajouter au groupe « admin ».

image.png

8. Stockages Externes :

8.1 Configuration générale :

Grâce à l’application External storage support, il est possible de se connecter à des stockages externes (Exemple : SMB, FTP etc…).
Nous allons, dans l’exemple qui suit, nous connecter à un partage SMB/WINDOWS de notre serveur TrueNAS (Installé grâce à notre Tutoriel TrueNAS).

Se rendre dans Paramètres, Stockages externes :

image.png

Stockage externe : Type de stockage

Authentification : A choisir en fonction du contexte mais « Identifiants de connexion, sauvegardés dans la base de données » permet une meilleure compatibilité avec les services tels que l’application pour Smartphone et le client Windows.

Pour plus d’information sur les méthodes d’authentification, consulter la page officielle External Storage authentication mechanisms

8.2 Autoriser le Partage

Pour que les utilisateurs puissent partager des fichiers provenant du stockage externe, il faudra activer l’option "Permettre le partage".

Cliquer sur les « … » et cocher l’option « Permettre le partage ».

image.png