Копирование данных в Nextcloud по FTP

Допустим необходимо копировать данные по 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

Вливайтесь в общение

2 комментария

Добавить комментарий

  1. Привет
    Есть потребность в такой схеме передачи файлов: нужно сгружать с устройства в облако, вариант подключения только ftp. Пробую сделать по вашему методу — не получается. Даю права на папку nextcloud куда должны падать файлы, не получается туда по ftp подключиться. Пишет ошибку авторизации.

    1. Вероятно проблема с правами, системный пользователь от имени которого работает FTP сервер, не имеет доступа к директории, а вообще в логах FTP сервера должна быть указана причина. И назначьте FTP пользователю домашней директорией директорию с файлами пользователя nextcloud.