Problème répertoire locale répertoire serveur

Bonjour ,

J’auto-héberge Nextcloud sur mon NAS.

Aujourd’hui, j’ai voulu transférer un grand nombre de fichiers et j’ai préféré le faire en SMB depuis Windows (puisque je suis en local) directement dans le répertoire \Docker\Nextcloud\data\admin\files (il y a 400Go)

2 problèmes sont apparus au fil des manipulations :

Certains répertoires que j’ai effacés apparaissent toujours et tous les répertoires que j’ai mis avec les fichiers n’apparaissent pas.

Bien évidemment, ceux qui apparaissent encore ne sont que des coquilles vides puisque au moment de cliquer dessus pour les ouvrir il y a une erreur.

Je n’ai pas trouvé où est-ce que l’on synchronise les répertoires du serveur avec L’affichage Nextcloud.

Je n’ai pas encore le client de synchronisation d’activer.

Salut

Effectivement si tu modifies les fichiers directement dans l’espace de stockage de Nextcloud (ce qui est pas conseillé mais parfois la seule méthode), tu peux lancer un scan des fichiers pour que Nextcloud soit synchronisé avec l’état réel des fichiers:

https://docs.nextcloud.com/server/stable/admin_manual/occ_command.html#file-operations-label

Cela se fait avec la commande occ à lancer dans le répertoire Nextcloud en console sur ton serveur (attention à faire cela en étant avec le même compte utilisateur que celui qui est utilisé pour les fichiers du serveur nextcloud, exemple:

sudo -E -u www-data php occ files:scan

Vincèn

J’obtiens cela : le compte c’est admin


marc@Asustor:/volume1/Docker/Nextcloud $ sudo -E -u admin php occ files:scan
An unhandled exception has been thrown:
Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [1045] Access denied for user 'oc_admin'@'Asustor' (using password: YES) in /volume1/Docker/Nextcloud/lib/private/DB/Connection.php:237
Stack trace:
#0 /volume1/Docker/Nextcloud/3rdparty/doctrine/dbal/src/Connection.php(458): OC\DB\Connection->connect()
#1 /volume1/Docker/Nextcloud/3rdparty/doctrine/dbal/src/Connection.php(416): Doctrine\DBAL\Connection->getDatabasePlatformVersion()
#2 /volume1/Docker/Nextcloud/3rdparty/doctrine/dbal/src/Connection.php(323): Doctrine\DBAL\Connection->detectDatabasePlatform()
#3 /volume1/Docker/Nextcloud/lib/private/DB/Connection.php(903): Doctrine\DBAL\Connection->getDatabasePlatform()
#4 /volume1/Docker/Nextcloud/lib/private/DB/ConnectionAdapter.php(235): OC\DB\Connection->getDatabaseProvider()
#5 /volume1/Docker/Nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php(96): OC\DB\ConnectionAdapter->getDatabaseProvider()
#6 /volume1/Docker/Nextcloud/lib/private/AppConfig.php(1257): OC\DB\QueryBuilder\QueryBuilder->expr()
#7 /volume1/Docker/Nextcloud/lib/private/AppConfig.php(270): OC\AppConfig->loadConfig(NULL, false)
#8 /volume1/Docker/Nextcloud/lib/private/AppConfig.php(1397): OC\AppConfig->searchValues('enabled', false, 2)
#9 /volume1/Docker/Nextcloud/lib/private/App/AppManager.php(136): OC\AppConfig->getValues(false, 'enabled')
#10 /volume1/Docker/Nextcloud/lib/private/App/AppManager.php(157): OC\App\AppManager->getInstalledAppsValues()
#11 /volume1/Docker/Nextcloud/lib/private/legacy/OC_App.php(188): OC\App\AppManager->getInstalledApps()
#12 /volume1/Docker/Nextcloud/lib/private/AppFramework/Bootstrap/Coordinator.php(48): OC_App::getEnabledApps()
#13 /volume1/Docker/Nextcloud/lib/base.php(678): OC\AppFramework\Bootstrap\Coordinator->runInitialRegistration()
#14 /volume1/Docker/Nextcloud/lib/base.php(1194): OC::init()
#15 /volume1/Docker/Nextcloud/console.php(28): require_once('/volume1/Docker...')
#16 /volume1/Docker/Nextcloud/occ(33): require_once('/volume1/Docker...')
#17 {main}marc@Asustor:/volume1/Docker/Nextcloud $

Euh je doute que ce soit admin le compte linux qui fait tourner ton Nextcloud :wink: mais je vois que tu es en Docker et non en installation traditionnelle. Je pourrais pas t’aider dans cette config car aucune idée comment tu accèdes à la commande occ dans cette configuration :frowning:

tu peux faire un “ls -al” dans ton répertoire principal du NC ?

Un spécialiste Docker qui peut répondre ?

Je pense que c’est l’installation qui est dans le docker, moi, j’ai accès dans les répertoires partagés au répertoire Nextcloud avec tous les éléments ci-dessous


marc@Asustor:/volume1/Docker/Nextcloud $ ls -al
total 1164
drwxr-xr-x    1 33       33             590 Sep 26 19:36 ./
drwxrwxrwx    1 admin    administ       214 Oct  5 09:13 ../
-rw-r--r--    1 33       33            5744 Sep 27 11:15 .htaccess
-rw-r--r--    1 33       33             271 Sep 26 19:35 .user.ini
drwxr-xr-x    1 33       33             772 Sep 26 19:35 3rdparty/
-rw-r--r--    1 33       33           26350 Sep 26 19:35 AUTHORS
-rw-r--r--    1 33       33           34520 Sep 26 19:35 COPYING
drwxr-xr-x    1 33       33            1152 Sep 26 19:35 LICENSES/
-rw-r--r--    1 33       33           44247 Sep 26 19:35 REUSE.toml
drwxr-xr-x    1 33       33            1344 Sep 26 19:36 apps/
-rw-r--r--    1 33       33            2395 Sep 26 19:35 composer.json
-rw-r--r--    1 33       33            3400 Sep 26 19:35 composer.lock
drwxr-xr-x    1 33       33             454 Sep 29 17:57 config/
-rw-r--r--    1 33       33            3810 Sep 26 19:35 console.php
drwxr-xr-x    1 33       33             906 Sep 26 19:36 core/
-rw-r--r--    1 33       33            8188 Sep 26 19:35 cron.php
drwxr-xr-x    1 33       33             190 Oct  5 09:21 custom_apps/
drwxrwx---    1 33       33             128 Sep 27 11:15 data/
drwxr-xr-x    1 33       33           24780 Sep 26 19:36 dist/
-rw-r--r--    1 33       33             331 Sep 26 19:35 index.html
-rw-r--r--    1 33       33            3485 Sep 26 19:35 index.php
drwxr-xr-x    1 33       33             142 Sep 26 19:36 lib/
-rw-r--r--    1 root     root             0 Oct  7 18:39 nextcloud-init-sync.lock
-rwxr-xr-x    1 33       33             596 Sep 26 19:35 occ*
drwxr-xr-x    1 33       33              50 Sep 26 19:36 ocs/
drwxr-xr-x    1 33       33              18 Sep 26 19:36 ocs-provider/
-rw-r--r--    1 33       33         1002223 Sep 26 19:35 package-lock.json
-rw-r--r--    1 33       33            7336 Sep 26 19:35 package.json
-rw-r--r--    1 33       33            2825 Sep 26 19:35 public.php
-rw-r--r--    1 33       33            4521 Sep 26 19:35 remote.php
drwxr-xr-x    1 33       33             198 Sep 26 19:36 resources/
-rw-r--r--    1 33       33              26 Sep 26 19:35 robots.txt
-rw-r--r--    1 33       33            1361 Sep 26 19:35 status.php
drwxr-xr-x    1 33       33              26 Sep 26 19:36 themes/
-rw-r--r--    1 33       33             383 Sep 26 19:36 version.php

Ah ben parfait alors, tu peux exécuter la commande que je t’ai donné dans ce répertoire avec 33 comme utilisateur mais c’est bizarre d’avoir juste un numéro pour le compte utilisateur des fichiers :confused:

j’ai déjà testé :frowning:

marc@Asustor:/volume1/Docker/Nextcloud $ sudo -E -u 33 php occ files:scan
sudo: unknown user 33

J’ai l’impression que je me dirige, je vais une réinstallation…

Dans le gestionnaire de fichiers, j’ai été changé des attributs, j’ai mis à la place de 33 marc.

Du coup, quand j’essaie de lancer Nextcloud, maintenant j’ai

La configuration n'a pas été lue ou initialisée correctement, elle n'a pas écrasé /var/www/html/config/config.php

En faisant un peu de recherche j’ai trouvé çà a priori pour exécuter la commande occ pour les installations Docker:

sudo docker exec -ti --user www-data nextcloud-app /var/www/html/occ files:scan --all

nextcloud-app à remplacer par le nom de ton container Nextcloud.

Ça doit être cela .

J’ai modifié le propriétaire des fichiers de 33 vers marc puis admin. Je ne peux plus mettre 33 car il ne le connaît pas…

Du coup, encore une erreur… Ça ne sent pas bon….

marc@Asustor:/volume1/Docker/Nextcloud $ sudo docker exec -ti --user www-data Nextcloud /var/www/html/occ files:scan --all
Cannot write into "config" directory!
This can usually be fixed by giving the web server write access to the config directory.

But, if you prefer to keep config.php file read only, set the option "config_is_read_only" to true in it.
See https://docs.nextcloud.com/server/31/go.php?to=admin-config
{"reqId":"UVoN6pt8abxJ1zIw777K","level":3,"time":"2025-10-08T14:37:18+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"fopen(/var/www/html/config/config.php): Failed to open stream: Permission denied at /var/www/html/lib/private/Config.php#190","userAgent":"--","version":"","data":{"app":"PHP"}}

Je relance une installation complète…

non effectivement et comme c’est un docker il y a probablement un truc chelou pour la gestion des droits utilisateur sur les fichiers !

refaire éventuellement juste l’install de l’image Docker de Nextcloud ? mais en faisant bien sûr toutes les sauvegardes d’usage avant histoire de rien perdre si ça se passe pas comme prévu !

1 Like

Nextcloud n’était pas encore en exploitation. Je venais juste de l’installer et de le reparamétrer. Donc ce n’est pas trop grave…

Merci pour ton aide

C’est réinstallé…

La commande de scan fonctionne bien.

marc@Asustor:/volume1/Docker/Nextcloud $ sudo docker exec -ti --user www-data Nextcloud /var/www/html/occ files:scan --all
Password:
Starting scan for user 1 out of 1 (marc)
+---------+-------+-----+---------+---------+--------+--------------+
| Folders | Files | New | Updated | Removed | Errors | Elapsed time |
+---------+-------+-----+---------+---------+--------+--------------+
| 6       | 53    | 0   | 0       | 0       | 0      | 00:00:00     |
+---------+-------+-----+---------+---------+--------+--------------+

Il me reste plus qu’à résoudre cette histoire de réverse proxy pour accéder à Nextcloud Office en HTTPS. Discussion qui est déjà ouverte quelque part sur ce forum…

Nickel pour le scan :wink: au pire si tu fais des imports massifs comme ça régulièrement tu peux mettre un cron automatique que tu fais tourner tous les jours dans la nuit pour lancer le scan :smiling_face_with_sunglasses:

Pour NC Office bon courage :wink: Si tu es parti sur la version CODE (Collabora) ils ont un forum où les gars sont réactifs !

Je viens de lancer le client de synchronisation, c’est anormalement long…

Capture d'écran 2025-10-08 180549

En smb. Je peux transférer jusqu’à presque 300 Mo/s, là, je suis entre 1 et 3 Mo/s. Le CPU du NAS est à 10 %.

Tu as configuré le client de synchro avec l’ip du serveur puisque tu es en local ? si tu utilises son url externe ça peut être un problème de loopback dans ton routeur !

Oui, j’utilise URL externe

le routeur, c’est une live boxe 5 fibre

oui aucune idée si elle fait le local loop ou pas mais visiblement non. Si tu utilises comme DNS la livebox tu peux regarder dans la livebox si tu ne sais pas configurer des url locales c’est à dire que pour l’url de ton nextcloud il résoudra avec l’ip interne locale au lieu de l’ip publique !

Je n’ai pas trouvé comment modifier l’adresse du serveur sur l’application Windows et j’hésite à la désinstaller, réinstaller de peur de tout déglinguer si les paramètres sont un poil différent…

La lenteur est un peu décevante, néanmoins, c’est à faire qu’une seule fois, après ce seront simplement les quelques fichiers qui seront modifiés, qui seront synchronisés.