KirMol Wiki

Добро пожаловать в KirMol Wiki

Инструменты пользователя

Инструменты сайта


linux:debian:nextcloud

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
linux:debian:nextcloud [2026/04/12 17:24] – создано Кирилл Мlinux:debian:nextcloud [2026/04/20 06:20] (текущий) Кирилл М
Строка 1: Строка 1:
 +====== Установка Nextcloud ======
 +
 +===== Установка Веб-сервер Apache =====
 +
 +Устанавливаем Apache:
 +<code bash>
 +sudo apt install apache2
 +</code>
 +
 +Добавляем Apache в автозагрузку:
 +<code bash>
 +sudo systemctl enable apache2
 +</code>
 +
 +Запускаем Apache:
 +<code bash>
 +sudo systemctl start apache2
 +</code>
 +
 +Смотрим статус:
 +<code bash>
 +sudo systemctl status apache2
 +</code>
 +
 +===== Установка PHP для Nextcloud  =====
 +
 +Добавляем ключ репозитория:
 +<code bash>
 +sudo apt install lsb-release ca-certificates curl apt-transport-https
 +</code>
 +<code bash>
 +sudo curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
 +</code>
 +<code bash>
 +sudo dpkg -i /tmp/debsuryorg-archive-keyring.deb
 +</code>
 +
 +Добавляем репозиторий:
 +<code bash>
 +sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
 +</code>
 +
 +Обновляем список пакетов в репозиториях:
 +<code bash>
 +sudo apt update
 +</code>
 +
 +Установка PHP 8.4 для NextCloud
 +<code bash>
 +sudo apt install php php-common php-bcmath php-curl php-gd php-gmp php-imap php-igbinary php-imagick php-intl php-json php-mbstring php-xml php-zip libapache2-mod-php php-mysql
 +</code>
 +
 +<code bash>
 +sudo apt install php-apcu php-bz2 php-cli php-fpm php-memcached php-pear php-soap memcached
 +</code>
 +
 +<code bash>
 +sudo apt install libmagickcore-dev librsvg2-bin ffmpeg
 +</code>
 +
 +===== Настройка php.ini =====
 +
 +Проверяем текущие значения:
 +<code bash>
 +grep -E "upload_max_filesize|post_max_size|memory_limit|max_execution_time" /etc/php/8.4/apache2/php.ini
 +</code>
 +
 +Увеличиваем лимит:
 +<code bash>
 +sudo sed -i 's/^upload_max_filesize.*/upload_max_filesize = 4G/; s/^post_max_size.*/post_max_size = 4G/; s/^memory_limit.*/memory_limit = 1024M/; s/^max_execution_time.*/max_execution_time = 3600/; s/^;max_input_vars.*/max_input_vars = 3600/; s/^max_input_time.*/max_input_time = 3600/' /etc/php/8.4/apache2/php.ini
 +</code>
 +
 +===== Установка MariaDB для Nextcloud из Официального репозитория Debian =====
 +
 +Устанавливаем MariaDB:
 +<code bash>
 +sudo apt install mariadb-server mariadb-client
 +</code>
 +
 +===== Установка MariaDB 11.4 из Официального репозитория MariaDB =====
 +
 +[[https://mariadb.org/download/?t=repo-config|Download MariaDB Server]]
 +
 +Добавляем ключ репозитория:
 +<code bash>
 +sudo apt-get install apt-transport-https curl
 +</code>
 +<code bash>
 +sudo mkdir -p /etc/apt/keyrings
 +</code>
 +<code bash>
 +sudo curl -o /etc/apt/keyrings/mariadb-keyring.pgp 'https://mariadb.org/mariadb_release_signing_key.pgp'
 +</code>
 +
 +Добавляем репозиторий:
 +<code bash>
 +sudo nano /etc/apt/sources.list.d/mariadb.sources
 +</code>
 +
 +<code>
 +# MariaDB 11.4 repository list - created 2025-11-01 12:08 UTC
 +# https://mariadb.org/download/
 +X-Repolib-Name: MariaDB
 +Types: deb
 +# deb.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
 +# URIs: https://deb.mariadb.org/11.4/debian
 +URIs: https://mirror.docker.ru/mariadb/repo/11.4/debian
 +Suites: bookworm
 +Components: main
 +Signed-By: /etc/apt/keyrings/mariadb-keyring.pgp
 +</code>
 +
 +Обновляем список пакетов в репозиториях:
 +<code bash>
 +sudo apt update
 +</code>
 +
 +Устанавливаем MariaDB
 +<code bash>
 +sudo apt install mariadb-server mariadb-client
 +</code>
 +
 +===== Первоначальная настройка MariaDB =====
 +
 +Делаем первоначальную настройку базы данных MariaBD:
 +<code bash>
 +sudo mariadb-secure-installation
 +</code>
 +
 +Отвечаем yes / y на следующие вопросы безопасности:
 +
 +^  Вопрос                                                  Ответ Да/Нет                                            ^
 +|  Введите текущий пароль для пользователя root?          |  Ничего не вводим, нажимаем Enter                        |
 +|  Переключиться на аутентификацию unix_socket?            Y / n: y                                                |
 +|  Установить пароль root?                                |  Y / n: y                                                |
 +|  Удалить анонимных пользователей?                        (Нажмите y - Y для Yes, любой другой символ для No): y  |
 +|  Запретить вход в систему удаленно?                      (Нажмите y - Y для Yes, любой другой символ для No): y  |
 +|  Удалить тестовую базу данных и получить доступ к ней?  |  (Нажмите y - Y для Yes, любой другой символ для No): y  |
 +|  Обновить таблицы привилегий сейчас?                    |  (Нажмите y - Y для Yes, любой другой символ для No): y  |
 +
 +===== Создаём базу для Nextcloud =====
 +
 +Подключаемся к Mysql:
 +<code bash>
 +sudo mariadb -u root -p
 +</code>
 +
 +Создаём новую базу:
 +<code mysql>
 +CREATE DATABASE nextcloud;
 +</code>
 +
 +Создаём пользователя базы данных, и назначаем все права доступа:
 +<code mysql>
 +GRANT ALL ON nextcloud.* TO 'nextcloud_user'@'localhost' IDENTIFIED BY 'password';
 +</code>
 +
 +Сохраняем изменения:
 +<code mysql>
 +FLUSH PRIVILEGES;
 +</code>
 +
 +Выходим из базы данных:
 +<code mysql>
 +EXIT;
 +</code>
 +
 +===== Настраиваем Apache =====
 +
 +Установите права доступа на директорию **www**:
 +<code bash>
 +sudo chmod -R 775 /var/www
 +</code>
 +
 +<code bash>
 +sudo chown -R $USER:$USER /var/www
 +</code>
 +
 +Добавляем нашего пользователя в группу **www-data**:
 +<code bash>
 +sudo usermod -aG www-data $USER
 +</code>
 +
 +Добавляем пользователя www-data в группу нашего пользователя:
 +<code bash>
 +sudo usermod -aG $USER www-data
 +</code>
 +
 +===== Создаём новый виртуальный хост =====
 +
 +Сначала отключим хост по умолчанию:
 +<code bash>
 +sudo a2dissite 000-default
 +</code>
 +
 +Переходим в директорию **/var/www**:
 +<code bash>
 +cd /var/www
 +</code>
 +
 +Создаём новый каталог:
 +<code bash>
 +mkdir nextcloud
 +</code>
 +
 +Переходи в созданный каталог:
 +<code bash>
 +cd nextcloud
 +</code>
 +
 +Скачиваем Nextcloud:
 +<code bash>
 +wget https://download.nextcloud.com/server/releases/nextcloud-31.0.12.zip
 +</code>
 +
 +Распаковываем архив с Nextcloud:
 +<code bash>
 +unzip nextcloud-31.0.12.zip
 +</code>
 +
 +Удаляем скаченный архив latest.zip, он нам больше не понадобиться:
 +<code bash>
 +rm nextcloud-31.0.12.zip
 +</code>
 +
 +Переименовываем директорию nextcloud в public_html:
 +mv nextcloud public_html
 +
 +Меняем владельца на www-data:
 +sudo chown -R www-data:www-data public_html
 +
 +Создаём конфигурационный файл нового хоста:
 +sudo nano /etc/apache2/sites-available/nextcloud.conf
 +
 +Приводим конфиг к следующему виду:
 +
 +<code apache>
 +<VirtualHost *:80>
 +ServerName cloud.kirmolpc.ru
 +ServerAlias www.cloud.kirmolpc.ru
 +ServerAdmin admin@localhost
 +
 +DocumentRoot /var/www/nextcloud/public_html
 +<Directory /var/www/nextcloud/public_html>
 +AllowOverride All
 +Require all granted
 +Redirect permanent / https://cloud.kirmolpc.ru/
 +</Directory>
 +
 +<IfModule mod_headers.c>
 +Header always set Strict-Transport-Security "max-age=15552000; includeSubDomain>
 +</IfModule>
 +
 +ErrorLog ${APACHE_LOG_DIR}/error.log
 +CustomLog ${APACHE_LOG_DIR}/access.log combined
 +</VirtualHost>
 +</code>
 +
 +Включаем хост следующей командой:
 +<code bash>
 +sudo a2ensite nextcloud
 +</code>
 +
 +Активируем дополнительные модули Apache:
 +<code bash>
 +sudo a2enmod rewrite headers env dir mime
 +</code>
 +
 +Перезапускаем Apache:
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +Проверяем загрузку модулей Apache:
 +<code bash>
 +sudo apache2ctl -M
 +</code>
 +
 +===== Установка Certbot SSL-сертификата =====
 +
 +Устанавливаем Certbot:
 +<code bash>
 +sudo apt install certbot python3-certbot-apache
 +</code>
 +
 +Устанавливаем SSL-на наш домен:
 +<code bash>
 +sudo certbot --apache
 +</code>
 +
 +Отредактируем файл конфигурации ssl:
 +<code bash>
 +sudo nano /etc/apache2/sites-available/nextcloud-le-ssl.conf
 +</code>
 +
 +Закомментируем или удаляем строчку, иначе, будет циклическое перенаправление на странице:
 +
 +<code apache>
 +#Redirect permanent / https://cloud.kirmol.ru/
 +</code>
 +
 +Перезапускаем Apache:
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +Переходим по нашему домену, и завершаем настройку Nextcloud
 +https://cloud.kirmolpc.ru/
 +
 +Редактируем файл **/config/config.php**:
 +<code bash>
 +sudo nano /var/www/nextcloud/public_html/config/config.php
 +</code>
 +
 +Добавляем ваш регион и время обслуживания:
 +
 +<code php>
 +    0 => 'localhost',
 +  'maintenance_window_start' => 1,
 +  'default_phone_region' => 'RU',
 +</code>
 +
 +Пример:
 +<code php>
 +<?php
 +$CONFIG = array (
 +  'instanceid' => 'occptqnm24ic',
 +  'passwordsalt' => 'mwnnKZt7a0y6/Ll+Sh/G8X2Y/J7wtu',
 +  'secret' => 'FO9N2Uk4zUib3CPWPxC/1YcF6bq8R4C590jQ9VJb9ijKcEMm',
 +  'trusted_domains' => 
 +  array (
 + 0 => 'localhost',
 +    1 => 'cloud.kirmol.ru',
 +  ),
 +  'datadirectory' => '/var/www/nextcloud/public_html/data',
 +  'dbtype' => 'mysql',
 +  'version' => '31.0.7.1',
 +  'overwrite.cli.url' => 'https://cloud.kirmol.ru',
 +  'dbname' => 'nextcloud',
 +  'dbhost' => 'localhost',
 +  'dbport' => '',
 +  'dbtableprefix' => 'oc_',
 +  'mysql.utf8mb4' => true,
 +  'dbuser' => 'nextcloud_user',
 +  'dbpassword' => 'g4f1y6fg#f6t',
 +  'installed' => true,
 +  'maintenance_window_start' => 1,
 +  'default_phone_region' => 'RU',
 +);
 +</code>
 +
 +===== Настройка Memcache =====
 +
 +Устанавливаем Memcache и Модуль PHP Memcache:
 +<code bash>
 +sudo apt install memcached php8.4-memcached
 +</code>
 +
 +Добавляем в файл /config/config.php:
 +<code bash>
 +sudo nano /var/www/nextcloud/public_html/config/config.php
 +</code>
 +
 +<code php>
 +  'memcache.local' => '\OC\Memcache\Memcached',
 +  'memcache.distributed' => '\OC\Memcache\Memcached',
 +  'memcached_servers' => [
 +     [ '127.0.0.1', 11211 ],
 + ],
 +</code>
 +
 +===== Настройка PHP-FPM в связке с Apache =====
 +
 +Устанавливаем, если не установлен:
 +<code bash>
 +sudo apt install php8.4-fpm
 +</code>
 +
 +Проверяем, что PHP-FPM запущен:
 +<code bash>
 +sudo service php8.4-fpm status php-fpm8.4 -v ls -la /var/run/php/php8.4-fpm.sock
 +</code>
 +
 +Запускаем PHP-FPM:
 +<code bash>
 +sudo a2enmod mpm_event proxy_fcgi setenvif
 +</code>
 +
 +<code bash>
 +sudo a2enconf php8.4-fpm
 +</code>
 +
 +Перезапускаем Apache, чтобы перезапустить все модули и применить новую конфигурацию:
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +Проверяем нашу конфигурацию:
 +<code bash>
 +grep -E "upload_max_filesize|post_max_size|memory_limit|max_execution_time|max_input_vars|max_input_time" /etc/php/8.4/fpm/php.ini
 +</code>
 +
 +Задаём лимиты:
 +<code bash>
 +sudo sed -i 's/^upload_max_filesize.*/upload_max_filesize = 4G/; s/^post_max_size.*/post_max_size = 4G/; s/^memory_limit.*/memory_limit = 1024M/; s/^max_execution_time.*/max_execution_time = 3600/; s/^;max_input_vars.*/max_input_vars = 3600/; s/^max_input_time.*/max_input_time = 3600/' /etc/php/8.4/fpm/php.ini
 +</code>
 +
 +Обновляем конфигурацию PHP-FPM:
 +<code bash>
 +sudo nano /etc/php/8.4/fpm/pool.d/www.conf
 +</code>
 +
 +С этих:
 +
 +<code>
 +pm.max_children = 5
 +pm.start_servers = 2
 +pm.min_spare_servers = 1
 +pm.max_spare_servers = 3
 +</code>
 +
 +На эти:
 +
 +<code>
 +pm.max_children = 64
 +pm.start_servers = 16
 +pm.min_spare_servers = 16
 +pm.max_spare_servers = 32
 +</code>
 +
 +Проверяем текущие значения:
 +<code bash>
 +grep -E "pm.max_children|pm.start_servers|pm.min_spare_servers|pm.max_spare_servers" /etc/php/8.4/fpm/pool.d/www.conf
 +</code>
 +
 +Поменяем текущие значения на нужные нам:
 +<code bash>
 +sudo sed -i 's/^pm.max_children = .*/pm.max_children = 64/; s/^pm.start_servers = .*/pm.start_servers = 16/; s/^pm.min_spare_servers = .*/pm.min_spare_servers = 16/; s/^pm.max_spare_servers = .*/pm.max_spare_servers = 32/' /etc/php/8.4/fpm/pool.d/www.conf
 +</code>
 +
 +или
 +
 +<code bash>
 +sudo sed -i 's/^pm.max_children = .*/pm.max_children = 70/; s/^pm.start_servers = .*/pm.start_servers = 20/; s/^pm.min_spare_servers = .*/pm.min_spare_servers = 20/; s/^pm.max_spare_servers = .*/pm.max_spare_servers = 60/' /etc/php/8.4/fpm/pool.d/www.conf
 +</code>
 +
 +Перезапускаем PHP-FPM, чтобы применились новые значения:
 +<code bash>
 +sudo service php8.4-fpm restart
 +</code>
 +
 +Указываем Apache использования PHP-FPM:
 +
 +Для HTTP:
 +<code bash>
 +sudo nano /etc/apache2/sites-available/nextcloud.conf
 +</code>
 +
 +Для HTTPS:
 +<code bash>
 +sudo nano /etc/apache2/sites-available/nextcloud-le-ssl.conf
 +</code>
 +
 +<code apache>
 +<FilesMatch ".php$"> 
 +SetHandler "proxy:unix:/var/run/php/php8.4-fpm.sock|fcgi://localhost/"
 +</FilesMatch>
 +</code>
 +
 +Перезапускаем Apache:
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +===== Активируем OPCache в PHP =====
 +
 +Редактируем файл 10-opcache.ini:
 +<code bash>
 +sudo nano /etc/php/8.4/fpm/conf.d/10-opcache.ini
 +</code>
 +
 +Добавляем следующие параметры:
 +<code>
 +zend_extension=opcache.so
 +opcache.enable=1
 +opcache.enable_cli=1
 +opcache.interned_strings_buffer=64
 +opcache.max_accelerated_files=12000
 +opcache.memory_consumption=512
 +opcache.save_comments=1
 +opcache.revalidate_freq=60
 +opcache.jit=on
 +opcache.jit = 1255
 +opcache.jit_buffer_size = 256M
 +</code>
 +
 +Перезапускаем PHP-FPM для применения изменений:
 +<code bash>
 +sudo service php8.4-fpm restart
 +</code>
 +
 +===== Включаем APCu в PHP =====
 +
 +Устанавливаем пакет PHP APCu:
 +<code bash>
 +sudo apt install php8.4-apcu
 +</code>
 +
 +Редактируем ini файл
 +<code bash>
 +sudo nano /etc/php/8.4/fpm/conf.d/20-apcu.ini
 +</code>
 +
 +Вносим соответствующие значения:
 +<code>
 +extension=apcu.so
 +apc.enable_cli=1
 +</code>
 +
 +Перезапускаем PHP-FPM и Apache:
 +<code bash>
 +sudo systemctl restart php8.4-fpm
 +</code>
 +
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +Настраиваем Nextcloud на использование APCu для кэширования:
 +<code bash>
 +sudo nano /var/www/nextcloud/public_html/config/config.php
 +</code>
 +
 +<code php>
 +'memcache.local' => '\OC\Memcache\APCu',
 +</code>
 +
 +===== Установка и настройка Redis Cache =====
 +
 +Установим Redis Server и расширение Redis php:
 +<code bash>
 +sudo apt install redis-server php8.4-redis
 +</code>
 +
 +Запускаем и активируем Redis service:
 +<code bash>
 +sudo systemctl start redis-server
 +</code>
 +<code bash>
 +sudo systemctl enable redis-server
 +</code>
 +<code bash>
 +sudo systemctl status redis-server
 +</code>
 +
 +Сконфигурируем Redis на использование Unix Socket, редактируем файл redis.conf:
 +<code bash>
 +sudo nano /etc/redis/redis.conf
 +</code>
 +
 +<code>
 +port 0
 +unixsocket /var/run/redis/redis.sock
 +unixsocketperm 770
 +</code>
 +
 +Добавляем пользователя **www-data** в группу **redis**:
 +<code bash>
 +sudo usermod -aG redis www-data
 +</code>
 +
 +Настроим Nextcloud для использования Redis для блокировки файлов, редактируем файл **/config/config.php**:
 +<code bash>
 +sudo nano /var/www/nextcloud/public_html/config/config.php
 +</code>
 +
 +<code php>
 +'filelocking.enabled' => 'true',
 +'memcache.distributed' => '\\OC\\Memcache\\Redis',
 +'memcache.locking' => '\\OC\\Memcache\\Redis',
 +'redis' => [
 +     'host'     => '/var/run/redis/redis.sock',
 +     'port'     => 0,
 +     'dbindex'  => 0,
 +     'password' => '',
 +     'timeout'  => 1.5,
 +],
 +'memcache.local' => '\OC\Memcache\Memcached',
 +  'memcache.distributed' => '\OC\Memcache\Memcached',
 +  'memcached_servers' => [
 +     [ '127.0.0.1', 11211 ],
 + ],
 +</code>
 +
 +Пример:
 +<code php>
 +<?php
 +$CONFIG = array (
 +  'instanceid' => 'oc08ytpjlohk',
 +  'passwordsalt' => 'pP/fpXbYgAD1I/DOEDrXoxOJqbN1qS',
 +  'secret' => 'zaTYSHsCTzzXruQr12BzB5LKcy/NuUWMrMkG8cTiE1n9Pl51',
 +  'trusted_domains' => 
 +  array (
 +    0 => 'localhost',
 +    1 => 'cloud.kirmolpc.ru',
 +  ),
 +  'datadirectory' => '/var/www/nextcloud/public_html/data',
 +  'dbtype' => 'mysql',
 +  'version' => '31.0.10.2',
 +  'overwrite.cli.url' => 'https://cloud.kirmolpc.ru',
 +  'dbname' => 'nextcloud',
 +  'dbhost' => 'localhost',
 +  'dbport' => '',
 +  'dbtableprefix' => 'oc_',
 +  'mysql.utf8mb4' => true,
 +  'dbuser' => 'nextcloud_user',
 +  'dbpassword' => 'g4f1y6fg#f6t',
 +  'installed' => true,
 +  'maintenance_window_start' => 1,
 +  'default_phone_region' => 'RU',
 +  'memcache.local' => '\OC\Memcache\APCu',
 +  'filelocking.enabled' => 'true',
 +  'memcache.distributed' => '\\OC\\Memcache\\Redis',
 +  'memcache.locking' => '\\OC\\Memcache\\Redis',
 +  'redis' => [
 +     'host'     => '/var/run/redis/redis.sock',
 +     'port'     => 0,
 +     'dbindex'  => 0,
 +     'password' => '',
 +     'timeout'  => 1.5,
 + ],
 + 
 +  'memcache.local' => '\OC\Memcache\Memcached',
 +  'memcache.distributed' => '\OC\Memcache\Memcached',
 +  'memcached_servers' => [
 +     [ '127.0.0.1', 11211 ],
 + ],
 +
 +);
 +</code>
 +
 +Активируем Redis сессию для блокировки в PHP, в файле **php.ini**:
 +<code bash>
 +sudo nano /etc/php/8.4/fpm/php.ini
 +</code>
 +
 +Находим раздел **[Session]** и добавляем следующие строки:
 +<code>
 +redis.session.locking_enabled=1
 +redis.session.lock_retries=-1
 +redis.session.lock_wait_time=10000
 +</code>
 +
 +Пример:
 +<code>
 +[Session]
 +; Handler used to store/retrieve data.
 +; https://php.net/session.save-handler
 +session.save_handler = files
 +redis.session.locking_enabled=1
 +redis.session.lock_retries=-1
 +redis.session.lock_wait_time=10000
 +</code>
 +
 +Перезапускаем Redis, PHP-FPM и Apache:
 +<code bash>
 +sudo systemctl restart redis-server
 +</code>
 +<code bash>
 +sudo systemctl restart php8.4-fpm
 +</code>
 +<code bash>
 +sudo systemctl restart apache2
 +</code>
 +
 +===== Включение функции красивых ссылок Pretty URL’s =====
 +
 +Редактируем файл **/config/config.php**:
 +<code bash>
 +sudo nano /var/www/nextcloud/public_html/config/config.php
 +</code>
 +
 +Добавляем следующию строчку:
 +<code>
 +'htaccess.RewriteBase' => '/',
 +</code>
 +
 +Обновляем файл .htaccess для правильной переадресации ссылок:
 +<code bash>
 +sudo -u www-data php --define apc.enable_cli=1 /var/www/nextcloud/public_html/occ maintenance:update:htaccess
 +</code>
 +
 +===== Парочка команд =====
 +<code bash>
 +sudo -u www-data php /var/www/nextcloud/public_html/occ maintenance:repair --include-expensive
 +</code>
 +<code bash>
 +sudo -u www-data php /var/www/nextcloud/public_html/occ db:add-missing-indices
 +</code>
 +<code bash>
 +sudo -u www-data php /var/www/nextcloud/public_html/occ config:system:set maintenance_window_start --type=integer --value=1
 +</code>
 +
 +===== Настройка Cron =====
 +
 +Устанавливаем Cron:
 +<code bash>
 +sudo apt install cron
 +</code>
 +
 +<code bash>
 +sudo crontab -u www-data -e
 +</code>
 +
 +<code>
 +*/5 * * * * php -f /var/www/nextcloud/public_html/cron.php
 +</code>
 +<code bash>
 +sudo -u www-data php /var/www/nextcloud/public_html/occ files:scan --all
 +</code>
 +<code bash>
 +sudo -u www-data php /var/www/nextcloud/public_html/occ app:update --all
 +</code>