Допустим необходимо копировать данные по FTP в Nextcloud.
Настроим FTP сервер если он не настроен, например как я описывал в статье:
Настройка ProFTPd с виртуальными пользователями в файле
Создадим FTP пользователя который будет работать от имени пользователя и группы www-data (uid 33):
sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=test --uid=33 --gid=33 --home=/var/www/nextcloud/data/USER/files/FTP/ --shell=/bin/false
Теперь если скопировать файлы по FTP, то их не будет видно в Nextcloud, если удалить файлы через FTP, то они останутся в Nextcloud, по этому чтобы обновить кэш, выполним:
cd /var/www/nextcloud
sudo -u www-data php occ files:scan --all
Чтобы кэш автоматически обновлялся, можно сделать скрипт:
#!/bin/bash
cd /var/www/nextcloud
sudo -u www-data php occ files:scan --all --no-interaction --quiet
И добавить его в /etc/crontab (например чтобы выполнялся ежечасно):
1 * * * * root /dir/nextcloud_scan.sh
Смотрите мои статьи:
Установка Nextcloud в Ubuntu
Использование и настройка CRON
Привет
Есть потребность в такой схеме передачи файлов: нужно сгружать с устройства в облако, вариант подключения только ftp. Пробую сделать по вашему методу — не получается. Даю права на папку nextcloud куда должны падать файлы, не получается туда по ftp подключиться. Пишет ошибку авторизации.
Вероятно проблема с правами, системный пользователь от имени которого работает FTP сервер, не имеет доступа к директории, а вообще в логах FTP сервера должна быть указана причина. И назначьте FTP пользователю домашней директорией директорию с файлами пользователя nextcloud.