Server configuration detail
Operating system: Linux 3.10.0-962.3.2.lve1.5.26.1.el7.x86_64 #1 SMP Fri Jun 28 06:30:57 EDT 2019 x86_64
Webserver: LiteSpeed (litespeed)
Database: mysql 10.3.17
PHP version: 7.1.30
Modules loaded: Core, date, libxml, openssl, pcre, sqlite3, zlib, bz2, calendar, ctype, curl, hash, filter, ftp, gettext, gmp, SPL, iconv, pcntl, readline, Reflection, session, standard, shmop, SimpleXML, mbstring, tokenizer, xml, litespeed, bcmath, dom, fileinfo, gd, imagick, imap, intl, json, exif, mcrypt, mysqlnd, mysqli, PDFlib, PDO, pdo_mysql, pdo_sqlite, Phar, posix, rar, soap, sockets, tidy, wddx, xmlreader, xmlrpc, xmlwriter, xsl, zip, ionCube Loader, Zend OPcache
Nextcloud version: 16.0.3 — 16.0.3.0
Updated from an older Nextcloud/ownCloud or fresh install:
Where did you install Nextcloud from: unknown
Signing status
Array ( )
List of activated apps
Enabled:
- accessibility: 1.2.0
- activity: 2.9.1
- audioplayer: 2.7.2
- bruteforcesettings: 1.3.0
- cloud_federation_api: 0.2.0
- comments: 1.6.0
- dav: 1.9.2
- federatedfilesharing: 1.6.0
- federation: 1.6.0
- files: 1.11.0
- files_pdfviewer: 1.5.0
- files_rightclick: 0.13.0
- files_sharing: 1.8.0
- files_texteditor: 2.8.0
- files_trashbin: 1.6.0
- files_versions: 1.9.0
- files_videoplayer: 1.5.0
- firstrunwizard: 2.5.0
- gallery: 18.3.0
- logreader: 2.1.0
- lookup_server_connector: 1.4.0
- music: 0.10.0
- nextcloud_announcements: 1.5.0
- notifications: 2.4.1
- oauth2: 1.4.2
- password_policy: 1.6.0
- privacy: 1.0.0
- provisioning_api: 1.6.0
- recommendations: 0.4.0
- serverinfo: 1.6.0
- sharebymail: 1.6.0
- support: 1.0.0
- survey_client: 1.4.0
- systemtags: 1.6.0
- theming: 1.7.0
- twofactor_backupcodes: 1.5.0
- updatenotification: 1.6.0
- viewer: 1.0.0
- workflowengine: 1.6.0
Disabled: - admin_audit
- encryption
- files_external
- user_ldap
Configuration (config/config.php)
{
«instanceid»: «REMOVED SENSITIVE VALUE«,
«passwordsalt»: «REMOVED SENSITIVE VALUE«,
«secret»: «REMOVED SENSITIVE VALUE«,
«trusted_domains»: [
«REMOVED SENSITIVE VALUE«,»
],
«datadirectory»: «REMOVED SENSITIVE VALUE«,
«dbtype»: «mysql»,
«version»: «16.0.3.0»,
«overwrite.cli.url»: REMOVED SENSITIVE VALUE«,
«dbname»: «REMOVED SENSITIVE VALUE«,
«dbhost»: «REMOVED SENSITIVE VALUE«,
«dbport»: «»,
«dbtableprefix»: «oc_»,
«dbuser»: «REMOVED SENSITIVE VALUE«,
«dbpassword»: «REMOVED SENSITIVE VALUE«,
«installed»: true
}
External storages: files_external is disabled
Encryption: no
User-backends:
OCUserDatabase
Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36
Loading
При работе в Nextcloud возникают ошибки.
Для их устранения необходимо перевести облачное хранилище в режим обслуживания. Сделаем это с помощью утилиты occ находящаяся в корне web-проекта.
Переводим в режим обслуживания выполнив команду:
# sudo -u www-data php occ maintenance:mode --on
Для отключения режима обслуживания выполним команду:
# sudo -u www-data php occ maintenance:mode --off
В режиме обслуживания на Desktop-клиентах будет запрошен пароль пользователя.
Ошибка «File is locked»
Ошибка при использовании серверов с медленной дисковой подсистемой.
Для исправления потребует перевести хранилища в режим обслуживания и выполненить SQL-запрос по очистке таблицы блокировок.
> delete from oc_file_locks;
Ошибка «Файл был удален с сервера» («File was deleted from server»)
Это довольно распространенная не блокирующая ошибка и синхронизация будет продолжаться, но в логах клиента будут присутствовать соответствующие ошибки.
Для устранения этой ошибки необходимо воспользоваться встроенной функцией сканирования файлового хранилища. Эта функция может быть запущена для всех пользователей:
# sudo -u www-data php occ files:scan --all
Это доволно длительная операция и зависящая от того сколько пользователей и файлов и для устранения проблем у одного пользователя можно указать вместо параметра его имя или идентификатор из Active Directory:
# sudo -u www-data php occ files:scan 2718B513-40C2-497A-8461-5CA930CEC4E9
Если вам известно расположение сбойного файла, то можно указать какой каталог требуется пересканировать:
# sudo -u www-data php occ files:scan 2718B513-40C2-497A-8461-5CA930CEC4E9 --path="2718B513-40C2-497A-8461-5CA930CEC4E9/files_versions/"
Когда штатные средства не помогают, придется удалить записи о файлах напрямую из базы данных, подключаемся базе данных mysql и выполняем запрос файлового идентификатора искомого файла.
> select fileid,path from oc_filecache where path like '%data/4.%';
Где, ‘%data/4.%’ — это запрос части имени файла вызывающего ошибку.
Следующим этапом удаляем идентификаторы сбойных файлов:
> delete from oc_filecache where fileid=589434;
589434 — соответственно идентификатор сбойного файла.
Ошибка «Precondition failed (An If-Match header was specified and the resource did not exist)»
Ошибка возникает на стороне клиента и оптимальным решением является переместить файл на временное хранение в другой каталог и после окончания синхронизации переместить файл обратно.
CityCat4
@CityCat4
Жил-был у бабушки серенький троллик…
Message»:»touch(): Unable to create file /usr/local/nginx/html/nextcloud/config/config.php because Permission denied at /usr/local/nginx/html/nextcloud/lib/private/Config.php
Глеб, ну ешкин кот! Не видишь, что ли, что прав не хватает на запись конфига? Семен Семеныч…
-
CityCat4,
Не видишь, что ли, что прав не хватает на запись конфига?
Вы на время вообще смотрели? Я знаю, что была ошибка по правам. Я её исправил. Файл config.php успешно создался. Теперь другая ошибка: Failed to start session
В чём может быть дело и как её решить? -
CityCat4,
{«reqId»:»T8g6e9yEVmJ2YsTeDLTP»,»level»:3,»time»:»2022-08-18T23:31:11+00:00″,»remoteAddr»:»1.1.1.1″,»user»:»—«,»app»:»base»,»method»:»GET»,»url»:»/nextcloud/»,»message»:»Failed to start session»,»userAgent»:»Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36″,»version»:»»,»exception»:{«Exception»:»Exception»,»Message»:»Failed to start session»,»Code»:0,»Trace»:[{«file»:»/usr/local/nginx/html/nextcloud/lib/base.php»,»line»:431,»function»:»__construct»,»class»:»OCSessionInternal»,»type»:»->»},{«file»:»/usr/local/nginx/html/nextcloud/lib/base.php»,»line»:659,»function»:»initSession»,»class»:»OC»,»type»:»::»},{«file»:»/usr/local/nginx/html/nextcloud/lib/base.php»,»line»:1104,»function»:»init»,»class»:»OC»,»type»:»::»},{«file»:»/usr/local/nginx/html/nextcloud/index.php»,»line»:34,»args»:[«/usr/local/nginx/html/nextcloud/lib/base.php»],»function»:»require_once»}],»File»:»/usr/local/nginx/html/nextcloud/lib/private/Sess» while reading response header from upstream, client: 1.1.1.1, server: domain.com, request: «GET /nextcloud/ HTTP/1.1», upstream: «fastcgi://unix:/var/run/php-fpm.sock:», host: «domain.com»
2022/08/19 02:32:53 [error] 41545#106517: *10 FastCGI sent in stderr: «PHP message: -
WSGlebKavash, Проблемы с php-fpm, однако. Ошибка чтения заголовка ответа. Тут однозначного ответа дать нельзя, нужно доки грызть. А, пардон, на куа тебе nextcloud именно на FreeBSD? Шоб було?
-
CityCat4,
Ошибка чтения заголовка ответа.
Таков он на фряхе. На Ubuntu всё с первого раза заработало.
А, пардон, на куа тебе nextcloud именно на FreeBSD?
Обязательно будет вопрос на эту тему. Пожалуйста, подождите. Будьте готовы дать ответ.
нужно доки грызть.
Доки чего? Nextcloud? PHP 8.0?
-
WSGlebKavash, И того и другого, а еще fastCGI, php-fpm и всего, что там задействовано. У меня кстати на генте nextcloud взлетел вообще без проблем
-
CityCat4,
У меня кстати на генте nextcloud взлетел вообще без проблем
То ж Linux. Более того, самый True GNU/Linux. А не BSD, где программы работают только с патчами, а некоторые линуксовые системные вызовы вообще невозможно реализовать.
-
CityCat4, это же глебушка.
для него Per Aspera Ad Astra — походу смысл существования. -
DevMan, Ниче, вырастет, начнет работать (а не балду околачивать) — будет у него дохрена бесполезных знаний
-
CityCat4, чел, который на фрю пытается натянуть туксовые привычки, в нормального не вырастет.
-
DevMan, Ну, как человек, который перешел с FreeBSD на линух, могу сказать, что если есть моск — разница нащупывается очень быстро и приходит понимание, что почем. Обратно на FreeBSD я кстати точно не вернусь
-
WSGlebKavash, Глеб, твое обслуждение (ты кого-то обслуживать собрался?) уже пристрелил модератор
-
WSGlebKavash, ты до сих пор (после кучи снесенных акков) не понял, что
тут не социалочка и обсуждений не ведут?
ну не клоун ли ты после этого? -
DevMan, Да ладно. Все-таки растет. Раньше любой его вопрос приводил к дикому ржачу. Сейчас уже более-менее серьезные вопросы пошли (этот конечно не в счет)
-
CityCat4, так я о чем? он же хочет развлекалочки, как в дотку погонять.
Содержание
По ходу инсталляции, будут настроены «pretty URLs» (ссылки без index.php в составе), кэш и настройка аутентификации через LDAP. Fail2ban (утилита против брутфорса) рассматривается в отдельной статье.
Установка и настройка системы и необходимых компонентов
Во время установки Ubuntu Server, отметить для установки SSH Server и LAMP. Выбрать автоустановку обновлений безопасности.
# Войти в режим рута sudo -i # Задать статический IP: nano /etc/network/interfaces
auto eth0 iface eth0 inet static address 192.168.1.7 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1 dns-search workgroup
Перезагрузиться.
Зайти в систему по SSH и обновить систему целиком:
sudo -i apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y && apt-get autoremove
Установить все необходимые компоненты и, в данном случае, механизм кэширования APCu + Redis и компоненты для автогенерации favicon:
apt-get install php-zip php-xml php-gd php-json php-curl php-mbstring php-bz2 php-intl php-mcrypt php-apcu redis-server php-redis php-imagick libmagickcore-6.q16-2-extra -y
Если нужен SMB client (для подключения внешних накопителей в Nextcloud), LDAP и Midnight Commander:
apt-get install smbclient php-ldap mc -y
Клиент
# Скачать последнюю версию wget https://download.nextcloud.com/server/releases/latest.tar.bz2 # Распаковать архив в корневую папку веб-сервера tar xjf latest.tar.bz2 --strip=1 -C /var/www/html # Удалить исходный архив (если нужно) rm latest.tar.bz2 # Создать папку для пользовательских данных mkdir /var/nextcloud-data # Дать права владельца веб-серверу: chown -R www-data:www-data /var/www/html /var/nextcloud-data # Перезапустить Apache: systemctl restart apache2 # Создать базу MySQL с именем "nextcloud": mysql -u root -p -e "create database nextcloud";
Открыть браузер, зайти на веб-интерфейс (здесь: 192.168.1.7), задать логин и пароль админа, путь к папке с данными пользователей (здесь: /var/nextcloud-data) и имя БД (здесь: nextcloud). Либо настроить из командной строки:
— уточнить, можно ли тут обойтись без паролей
sudo -u www-data php /var/www/html/occ maintenance:install --database "mysql" --data-dir "/var/nextcloud-data" --database-name "nextcloud" --database-user "root" --database-pass "password" --admin-user "admin" --admin-pass "password"
Настройка
# Убрать закрывающую строку из конфига и заменить строку overwrite.cli.url на нужную. # В sed экранирование апострофа безумное - '"'"' sed -i ' /);/d /overwrite.cli.url/c '"'"'overwrite.cli.url'"'"' => '"'"'https://192.168.1.7'"'"',' /var/www/html/config/config.php # Настроить конфиг - "pretty URLs", кэширование, часовой пояс для логов и их ротацию (100 МБ) echo "'htaccess.RewriteBase' => '/', 'memcache.local' => 'OCMemcacheAPCu', 'memcache.locking' => 'OCMemcacheRedis', 'redis' => array( 'host' => 'localhost', 'port' => 6379, ), 'logtimezone' => 'Europe/Moscow', 'log_rotate_size' => 104857600, );" >> /var/www/html/config/config.php # Настроить максимальный размер файла на закачку в PHP и лимит памяти # Проверить версию PHP и путь к используемым php.ini (php --ini), например, он может быть # /etc/php/7.3/fpm/php.ini. Есть ещё # /etc/php/7.3/cli/php.ini. sed -i ' /upload_max_filesize =/c upload_max_filesize = 4G /post_max_size =/c post_max_size = 4G /memory_limit =/c memory_limit = 512M' /etc/php/7.3/apache2/php.ini # Настроить параметры opcache sed -i ' /opcache.enable=/c opcache.enable=1 /opcache.enable_cli=/c opcache.enable_cli=1 /opcache.memory_consumption=/c opcache.memory_consumption=128 /opcache.interned_strings_buffer=/c opcache.interned_strings_buffer=8 /opcache.max_accelerated_files=/c opcache.max_accelerated_files=10000 /opcache.revalidate_freq=/c opcache.revalidate_freq=1 /opcache.save_comments=/c opcache.save_comments=1' /etc/php/7.3/apache2/php.ini
Список часовых поясов для PHP
SSL, mod_env и mod_rewrite для pretty URLs
a2enmod ssl headers env rewrite && a2ensite default-ssl
Включить Strict transport security, Referrer Policy и Forward secrecy:
echo "<IfModule mod_headers.c> Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains" Header always set Referrer-Policy "no-referrer-when-downgrade" </IfModule> # Set Forward Secrecy SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder on SSLCipherSuite HIGH:!aNULL:!MD5:!3DES " >> /etc/apache2/sites-available/default-ssl.conf
Перенаправить HTTP на HTTPS
nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80> ServerName www.yourdomain.com Redirect / https://www.yourdomain.com/ </VirtualHost>
systemctl restart apache2
Настроить Pretty URLs
nano /etc/apache2/apache2.conf # В разделе <Directory /var/www> изменить параметр AllowOverride None на AllowOverride All # Выйти из редактора. # Обновить файл .htaccess: sudo -u www-data php /var/www/html/occ maintenance:update:htaccess # Перезапустить Apache: systemctl restart apache2
Переключить фоновые задачи на выполнение кроном
Выключить ненужные ссылки
config/config.php:
# Выключить ссылку на сброс пароля 'lost_password_link' => 'disabled', # Remove link “Get your own free account” 'simpleSignUpLink.shown' => false,
Настроить аутентификацию через LDAP
Для работы этого типа аутентификации необходимо установить компонент php-ldap, если он не был установлен ранее:
apt-get install php-ldap -y
Далее настройка производится в веб-интерфейсе админа.
Онлайн-офис
# Collabora (довольно тормозной вариант) sudo -u www-data php /var/www/html/occ app:install richdocumentscode richdocuments # OnlyOffice (ограничение в 20 соединений в бесплатной версии) sudo -u www-data php /var/www/html/occ app:install documentserver_community onlyoffice
Для OnlyOffice, добавить в /var/www/html/config/config.php
:
'onlyoffice' => array ( 'verify_peer_off' => true, ), 'allow_local_remote_servers' => true,
OnlyOffice — работа через прокси: https://helpcenter.onlyoffice.com/ru/installation/docs-community-proxy.aspx
«Неизвестная ошибка» при открытии документа — нужно в конфиге Nextcloud
'overwriteprotocol' => 'https', (add) 'overwrite.cli.url' => 'https' (change)
https://github.com/nextcloud/docker/issues/975
Внешние хранилища
S3
Способ доступа — Access key
Bucket — каталог в облаке, например, Media
Hostname — s3.cloud.mts.ru
Port — 443
Region — пусто
✔ Enable SSL
✔ Enable path style
SMB (CIFS)
Host — [IP address]
Share — Files (имя общего ресурса)
Remote subfolder — Отдел продажГруппа впариванияОбмен
Domain — example.com
Обновление
# Автоматически: sudo -u www-data php /var/www/html/updater/updater.phar # Вручную: # Скачать последний релиз wget https://download.nextcloud.com/server/releases/latest.tar.bz2 # Распаковать скачанный архив в папку установки tar xjf latest.tar.bz2 --strip=1 -C /var/www/html # Дать права владельца веб-серверу: chown -R www-data:www-data /var/www/html # Включить режим обслуживания sudo -u www-data php /var/www/html/occ maintenance:mode --on # Запустить процесс обновления sudo -u www-data php /var/www/html/occ upgrade # Выключить режим обслуживания sudo -u www-data php /var/www/html/occ maintenance:mode --off
https://docs.nextcloud.com/server/latest/admin_manual/maintenance/update.html
Экспресс-обновление со сменой шлюза
ip route change default via 192.168.1.254 dev eth0 apt update && apt upgrade -y && apt autoremove -y sudo -u www-data php /var/www/html/updater/updater.phar --no-interaction ip route change default via 192.168.1.1 dev eth0
Обновление на след. мажорный релиз
# Нужно переключиться на бета-канал обновлений, обновляться, а затем переключиться обратно. sudo -u www-data php /var/www/html/cloud/occ config:system:set updater.release.channel --value=beta sudo -u www-data php /var/www/html/cloud/updater/updater.phar --no-interaction sudo -u www-data php /var/www/html/cloud/occ config:system:set updater.release.channel --value=stable
В Докере
docker exec nc-php sudo -u www-data php /var/www/html/cloud/occ config:system:set updater.release.channel --value=beta docker exec nc-php sudo -u www-data php /var/www/html/cloud/updater/updater.phar --no-interaction docker exec nc-php sudo -u www-data php /var/www/html/cloud/occ config:system:set updater.release.channel --value=stable
Обновление всех приложений
sudo -u www-data php /var/www/html/cloud/occ app:update --all # docker docker exec -uwww-data nc-php php /var/www/html/cloud/occ app:update --all
Настройка кэширования через сервер Redis
Как-то раз произошла ситуация — невозможно было стереть файл с сервера или обновить его, файл был заблокирован:
file is locked
Error transferring bva.dyndns.info/cloud/remote.php/dav/files/user/123.txt — server replied: Locked («123.txt» is locked)
В соответствующем howto советуют обнулить таблицу блокировок в базе mysql, а чтобы ситуация не повторялась, рекомендуют поставить кэширующий сервис Redis. Так как у меня уже был APCu, было решено поставить Redis для блокировок, а APCu оставить для локального кэша.
В Ubuntu это ставится просто, а в Armbian в репозитории отсутствуют соответствующие пакеты, так что пришлось их собирать из исходников.
Установить Redis
Информация устарела, в репозиториях для процессоров ARM появились собранные пакеты.
Теперь достаточно выполнить команду
apt-get install redis-server php-redis
Сборка из исходников
Настройка Nextcloud и разблокировка файлов
Конфиг Nextcloud в части кэширования нужно привести к следующему виду:
'memcache.local' => 'OCMemcacheAPCu', 'memcache.locking' => 'OCMemcacheRedis', 'redis' => array( 'host' => 'localhost', 'port' => 6379, ),
# Перевести Nextcloud в режим обслуживания: sudo -u www-data php /var/www/html/occ maintenance:mode --on # Зайти в базу "cloud" и очистить блокировки: mysql -u root -p cloud
DELETE FROM oc_file_locks WHERE 1; quit
# Вывести Nextcloud из режима обслуживания: sudo -u www-data php /var/www/html/occ maintenance:mode --off # Перезапустить Apache: systemctl restart apache2
Дополнительные материалы
Сертификаты
#Сделать папочку для сертификатов mkdir /etc/ssl/certs/nextcloud # самоподписанный сертификат на 10 лет без запроса пароля openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/certs/nextcloud/nextcloud.key -out /etc/ssl/certs/nextcloud/nextcloud.crt
nano /etc/apache2/sites-available/default-ssl.conf
SSLCertificateKeyFile /etc/ssl/certs/nextcloud/nextcloud.key SSLCertificateFile /etc/ssl/certs/nextcloud/nextcloud.crt #SSLCACertificateFile /etc/ssl/certs/nextcloud/nextcloud-int.crt
sed -i ' /SSLCertificateKeyFile/c SSLCertificateKeyFile /etc/ssl/certs/nextcloud/nextcloud.key /SSLCertificateFile/c SSLCertificateFile /etc/ssl/certs/nextcloud/nextcloud.crt' /etc/apache2/sites-available/default-ssl.conf
Импорт контактов из файла vcf
Проблема: выгруженный файл vcf с мобильника на Android 4.4 не загружается в приложение «Контакты» в Nextcloud.
Решение:
-
Открыть файл в программе tcode (в Windows), чтобы строки с кодировкой Quoted Printable перекодировались в нормальный русский текст. Это можно сделать и из командной строки:
tcode input.vcf /auto output.vcf
-
Убрать из всего файла строки ;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE
-
Строки VERSION:2.1 заменить на VERSION:3.0
-
Сохранить файл в кодировке UTF-8.
Ссылка на выгруженные контакты мобильным приложением
https://path-to-nextcloud-site.com/apps/files/?dir=/.Contacts-Backup
Полезные плагины
Плагин для Outlook
Автоудаление файлов
Снежок
Полезные команды
Включить превью офисных форматов:
nano /var/www/html/config/config.php
'preview_libreoffice_path' => '/usr/bin/libreoffice',
Удалить пользователя username вместе с его каталогом:
u=username sudo -u www-data php /var/www/html/occ user:delete $u && rm -rf /var/nextcloud-data/$u
Почистить корзину у всех пользователей
sudo -u www-data php /var/www/html/cloud/occ trashbin:cleanup --all-users
Решение проблем
Failed to connect to www.nextcloud.com
В логах куча сообщений:
GuzzleHttpExceptionConnectException: cURL error 7: Failed to connect to www.nextcloud.com port 80: Connection timed out
Сайт nexcloud.com реально бывает недоступен. Workaround — отключить проверку на наличие интернета:
echo "'has_internet_connection' => false," >> /var/www/html/config/config.php
Или не обращать внимания.
Some files have not passed the integrity check
После обновления — ошибка подписи файлов:
Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the documentation. (List of invalid files… / Rescan…)
Помимо выполнения рекомендаций, убедиться, что core/signature.json актуальный.
Поломались «красивые» ссылки (без index.php)
Specified key was too long; max key length is 767 bytes
При обновлении Nexcloud ошибка:
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin ENGINE = InnoDB ROW_FORMAT = compressed’: SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
Решение:
mysql -u root -p cloud MariaDB [cloud]> set global innodb_large_prefix=on; MariaDB [cloud]> set global innodb_file_format=Barracuda; quit sudo -u www-data php /var/www/html/occ maintenance:repair sudo -u www-data php /var/www/html/occ upgrade
The database is missing some indexes
Проверка в админке пишет: The database is missing some indexes
Решение:
sudo -u www-data php /var/www/html/occ db:add-missing-indices # В докере: docker exec -u www-data nc php occ db:add-missing-indices
Обновление прошло неуспешно, PHP грузит систему на 100%, сайт в неотключаемом maintenance mode
Отключить регулярную задачу в crontab.
# Проверить, включен ли apc cli: php -i | grep apc.enable apc.enable_cli => Off => Off apc.enabled => On => On # Если нет, то включить echo "apc.enable_cli=1" >> /etc/php/7.4/cli/php.ini # Перейти в каталог NC (обязательно!) и запустить апгрейд заново cd /var/www/html/cloud sudo -u www-data php occ upgrade
Включить регулярную задачу в crontab.
https://help.nextcloud.com/t/nextcloud-21-update-needed/108714/25
«Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it
Your installation has no default phone region set
sudo -u www-data php /var/www/html/occ config:system:set default_phone_region --value="RU" # Докер docker exec -u www-data nc php occ config:system:set default_phone_region --value="RU"
Last background job execution ran 15 hours ago. Something seems wrong
Запустить принудительно
sudo -u www-data php -f /var/www/html/cloud/cron.php
PHP Fatal error: Out of memory (allocated 3533701120) (tried to allocate 36864 bytes) in /var/www/html/lib/private/AppFramework/Utility/SimpleContainer.php on line 133
Warning: The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the documentation.
docker exec -uwww-data nc-php php /var/www/html/cloud/occ config:system:set forwarded_for_headers 0 --value="X-Forwarded-For" # docker exec -uwww-data nc-php php /var/www/html/cloud/occ config:system:set forwarded_for_headers 1 --value="HTTP_X_FORWARDED_FOR" docker exec -uwww-data nc-php php /var/www/html/cloud/occ config:system:set trusted_proxies 0 --value=reverse-proxy # docker exec -uwww-data nc-php php /var/www/html/cloud/occ config:system:set trusted_proxies 1 --value="172.16.0.0/12"
https://github.com/nextcloud/docker/issues/800
https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/reverse_proxy_configuration.html
Docker — exec: «php»: executable file not found in $PATH
После обновления контейнера PHP с версии 7.4 на 8.0 при попытке выполнить команду php occ внутри контейнера выдаётся ошибка:
OCI runtime exec failed: exec failed: unable to start container process: exec: «php»: executable file not found in $PATH: unknown
Проблема в том, что в дистрибутиве Alpine автоматически не создаётся символическая ссылка php8 → php, т. к. для php8 не готовы все пакеты. Решение: добавить в Dockerfile
ln -sf /usr/bin/php8 /usr/bin/php # -f - перезаписывать, если она уже есть (после предыдущего создания)
The __Host prefix mitigates cookie injection
Клиент виснет после начала синхронизации
Ситуация — виснет клиент практически сразу после запуска, нагружает процессор, настройки открыть невозможно, в логах ничего внятного, переустановка на разные версии, удаление служебных файлов в каталоге синхронизации ничего не даёт.
Решение:
# убить процесс Get-Process nextcloud |kill # запустить синхронизацию с помощью nextcloudcmd "$env:programfilesNextcloudnextcloudcmd.exe" --silent ` "$env:userprofileNextcloud" https://bva.dyndns.info/cloud
Затем запустить клиента, зайти в Настройки → Сеть и убрать ограничения на скорость загрузки/передачи.
https://docs.nextcloud.com/desktop/latest/advancedusage.html#nextcloud-command-line-client
Ссылки
Server configuration detail
Operating system: Linux 3.10.0-962.3.2.lve1.5.26.1.el7.x86_64 #1 SMP Fri Jun 28 06:30:57 EDT 2019 x86_64
Webserver: LiteSpeed (litespeed)
Database: mysql 10.3.17
PHP version: 7.1.30
Modules loaded: Core, date, libxml, openssl, pcre, sqlite3, zlib, bz2, calendar, ctype, curl, hash, filter, ftp, gettext, gmp, SPL, iconv, pcntl, readline, Reflection, session, standard, shmop, SimpleXML, mbstring, tokenizer, xml, litespeed, bcmath, dom, fileinfo, gd, imagick, imap, intl, json, exif, mcrypt, mysqlnd, mysqli, PDFlib, PDO, pdo_mysql, pdo_sqlite, Phar, posix, rar, soap, sockets, tidy, wddx, xmlreader, xmlrpc, xmlwriter, xsl, zip, ionCube Loader, Zend OPcache
Nextcloud version: 16.0.3 — 16.0.3.0
Updated from an older Nextcloud/ownCloud or fresh install:
Where did you install Nextcloud from: unknown
Signing status
Array ( )
List of activated apps
Enabled:
- accessibility: 1.2.0
- activity: 2.9.1
- audioplayer: 2.7.2
- bruteforcesettings: 1.3.0
- cloud_federation_api: 0.2.0
- comments: 1.6.0
- dav: 1.9.2
- federatedfilesharing: 1.6.0
- federation: 1.6.0
- files: 1.11.0
- files_pdfviewer: 1.5.0
- files_rightclick: 0.13.0
- files_sharing: 1.8.0
- files_texteditor: 2.8.0
- files_trashbin: 1.6.0
- files_versions: 1.9.0
- files_videoplayer: 1.5.0
- firstrunwizard: 2.5.0
- gallery: 18.3.0
- logreader: 2.1.0
- lookup_server_connector: 1.4.0
- music: 0.10.0
- nextcloud_announcements: 1.5.0
- notifications: 2.4.1
- oauth2: 1.4.2
- password_policy: 1.6.0
- privacy: 1.0.0
- provisioning_api: 1.6.0
- recommendations: 0.4.0
- serverinfo: 1.6.0
- sharebymail: 1.6.0
- support: 1.0.0
- survey_client: 1.4.0
- systemtags: 1.6.0
- theming: 1.7.0
- twofactor_backupcodes: 1.5.0
- updatenotification: 1.6.0
- viewer: 1.0.0
- workflowengine: 1.6.0
Disabled: - admin_audit
- encryption
- files_external
- user_ldap
Configuration (config/config.php)
{
«instanceid»: «REMOVED SENSITIVE VALUE«,
«passwordsalt»: «REMOVED SENSITIVE VALUE«,
«secret»: «REMOVED SENSITIVE VALUE«,
«trusted_domains»: [
«REMOVED SENSITIVE VALUE«,»
],
«datadirectory»: «REMOVED SENSITIVE VALUE«,
«dbtype»: «mysql»,
«version»: «16.0.3.0»,
«overwrite.cli.url»: REMOVED SENSITIVE VALUE«,
«dbname»: «REMOVED SENSITIVE VALUE«,
«dbhost»: «REMOVED SENSITIVE VALUE«,
«dbport»: «»,
«dbtableprefix»: «oc_»,
«dbuser»: «REMOVED SENSITIVE VALUE«,
«dbpassword»: «REMOVED SENSITIVE VALUE«,
«installed»: true
}
External storages: files_external is disabled
Encryption: no
User-backends:
OCUserDatabase
Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36
Server configuration detail
Operating system: Linux 3.10.0-962.3.2.lve1.5.26.1.el7.x86_64 #1 SMP Fri Jun 28 06:30:57 EDT 2019 x86_64
Webserver: LiteSpeed (litespeed)
Database: mysql 10.3.17
PHP version: 7.1.30
Modules loaded: Core, date, libxml, openssl, pcre, sqlite3, zlib, bz2, calendar, ctype, curl, hash, filter, ftp, gettext, gmp, SPL, iconv, pcntl, readline, Reflection, session, standard, shmop, SimpleXML, mbstring, tokenizer, xml, litespeed, bcmath, dom, fileinfo, gd, imagick, imap, intl, json, exif, mcrypt, mysqlnd, mysqli, PDFlib, PDO, pdo_mysql, pdo_sqlite, Phar, posix, rar, soap, sockets, tidy, wddx, xmlreader, xmlrpc, xmlwriter, xsl, zip, ionCube Loader, Zend OPcache
Nextcloud version: 16.0.3 — 16.0.3.0
Updated from an older Nextcloud/ownCloud or fresh install:
Where did you install Nextcloud from: unknown
Signing status
Array ( )
List of activated apps
Enabled:
- accessibility: 1.2.0
- activity: 2.9.1
- audioplayer: 2.7.2
- bruteforcesettings: 1.3.0
- cloud_federation_api: 0.2.0
- comments: 1.6.0
- dav: 1.9.2
- federatedfilesharing: 1.6.0
- federation: 1.6.0
- files: 1.11.0
- files_pdfviewer: 1.5.0
- files_rightclick: 0.13.0
- files_sharing: 1.8.0
- files_texteditor: 2.8.0
- files_trashbin: 1.6.0
- files_versions: 1.9.0
- files_videoplayer: 1.5.0
- firstrunwizard: 2.5.0
- gallery: 18.3.0
- logreader: 2.1.0
- lookup_server_connector: 1.4.0
- music: 0.10.0
- nextcloud_announcements: 1.5.0
- notifications: 2.4.1
- oauth2: 1.4.2
- password_policy: 1.6.0
- privacy: 1.0.0
- provisioning_api: 1.6.0
- recommendations: 0.4.0
- serverinfo: 1.6.0
- sharebymail: 1.6.0
- support: 1.0.0
- survey_client: 1.4.0
- systemtags: 1.6.0
- theming: 1.7.0
- twofactor_backupcodes: 1.5.0
- updatenotification: 1.6.0
- viewer: 1.0.0
- workflowengine: 1.6.0
Disabled: - admin_audit
- encryption
- files_external
- user_ldap
Configuration (config/config.php)
{
«instanceid»: «REMOVED SENSITIVE VALUE«,
«passwordsalt»: «REMOVED SENSITIVE VALUE«,
«secret»: «REMOVED SENSITIVE VALUE«,
«trusted_domains»: [
«REMOVED SENSITIVE VALUE«,»
],
«datadirectory»: «REMOVED SENSITIVE VALUE«,
«dbtype»: «mysql»,
«version»: «16.0.3.0»,
«overwrite.cli.url»: REMOVED SENSITIVE VALUE«,
«dbname»: «REMOVED SENSITIVE VALUE«,
«dbhost»: «REMOVED SENSITIVE VALUE«,
«dbport»: «»,
«dbtableprefix»: «oc_»,
«dbuser»: «REMOVED SENSITIVE VALUE«,
«dbpassword»: «REMOVED SENSITIVE VALUE«,
«installed»: true
}
External storages: files_external is disabled
Encryption: no
User-backends:
OCUserDatabase
Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36
Задача:
Исправить ошибку nextcloud при открытии видео или аудио файлов в браузере
—————————————————————
Пробуем открыть файл и сразу смотрим, что записалось в логах: “Настройки > Журналирование”
По дате и времени находим, какая запись в логах соответствует попытке открыть файл.
[index] Error: OCPFilesNotPermittedException: Could not create folder at <<closure>> 0. /usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php line 158 OCFilesNodeFolder->newFolder("920872") 1. /usr/local/www/nextcloud/lib/private/Preview/Generator.php line 433 OCFilesAppDataAppData->newFolder("920872") 2. /usr/local/www/nextcloud/lib/private/Preview/Generator.php line 119 OCPreviewGenerator->getPreviewFolder(OCFilesNodeFile {}) 3. /usr/local/www/nextcloud/lib/private/PreviewManager.php line 185 OCPreviewGenerator->getPreview(OCFilesNodeFile {}, 1920, 1080, false, "fill", "image/jpeg") 4. /usr/local/www/nextcloud/core/Controller/PreviewController.php line 172 OCPreviewManager->getPreview(OCFilesNodeFile {}, 1920, 1080, false, "fill") 5. /usr/local/www/nextcloud/core/Controller/PreviewController.php line 144 OCCoreControllerPreviewController->fetchPreview(OCFilesNodeFile {}, 1920, 1080, true, true, "fill") 6. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 170 OCCoreControllerPreviewController->getPreviewByFileId(920872, 1920, 1080, true, true, "fill") 7. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 99 OCAppFrameworkHttpDispatcher->executeController(OCCoreControllerPreviewController {}, "getPreviewByFileId") 8. /usr/local/www/nextcloud/lib/private/AppFramework/App.php line 125 OCAppFrameworkHttpDispatcher->dispatch(OCCoreControllerPreviewController {}, "getPreviewByFileId") 9. /usr/local/www/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php line 47 OCAppFrameworkApp::main("OCCoreControllerPreviewController", "getPreviewByFileId", OCAppFramework ... {}, {_route: "core.P ... "}) 10. <<closure>> OCAppFrameworkRoutingRouteActionHandler->__invoke({_route: "core.P ... "}) 11. /usr/local/www/nextcloud/lib/private/Route/Router.php line 299 call_user_func(OCAppFramework ... {}, {_route: "core.P ... "}) 12. /usr/local/www/nextcloud/lib/base.php line 1008 OCRouteRouter->match("/core/preview") 13. /usr/local/www/nextcloud/index.php line 38 OC::handleRequest() GET /core/preview?fileId=920872&x=1920&y=1080&a=true from 192.168.17.231 by admin at 2020-05-23T11:57:51+00:00
Из логов видно, что ошибка прав доступа. Nextcloud не может создать папку.
OCPFilesNotPermittedException: Could not create folder
Авторизуемся в консоли сервера и проверяем какой веб сервер у нас используется
сurl --insecure --silent --show-error --connect-timeout 1 -I http://localhost | grep Server
Или можно узнать более короткой командой
root@cloud:/ # curl -I http://localhost HTTP/1.1 404 Not Found Server: nginx/1.16.1 Date: Sat, 23 May 2020 11:24:15 GMT Content-Type: text/html Content-Length: 153 Connection: keep-alive root@cloud:/ #
Теперь необходимо узнать пользователя от кого работает nginx
root@cloud:/ # ps aux | grep nginx root 781 0.0 0.1 32268 9500 - Is 28Apr20 0:00.31 nginx: master process /usr/local/sbin/nginx www 4314 0.0 0.1 29476 11756 - S 8May20 18:37.97 nginx: worker process (nginx) root 8480 0.0 0.0 11260 2716 0 S+ 13:33 0:00.00 grep nginx root@cloud:/ #
в какой группе состоит пользователь www
root@cloud:/ # groups www www root@cloud:/ #
После того как мы получили нужную информацию, переходим в веб-директорию nextcloud
root@cloud:/ # cd /usr/local/www/ root@cloud:/usr/local/www #
назвачаем необходимые права на файлы и директории
chown -R www:www nextcloud find nextcloud/ -type d -exec chmod 750 {} ; find nextcloud/ -type f -exec chmod 640 {} ;
может быть, что файлы пользователей лежат в другой директории. Проверяем
root@cloud:/usr/local/www # cat nextcloud/config/config.php | grep datadir 'datadirectory' => '/mnt/da1p1/data', root@cloud:/usr/local/www #
назначаем нужные права на папку
root@cloud:/ # cd /mnt/da1p1 root@cloud:/mnt/da1p1 # chown -R www:www data root@cloud:/mnt/da1p1 # find data/ -type d -exec chmod 750 {} ; root@cloud:/mnt/da1p1 # find data/ -type f -exec chmod 640 {} ;
Пробуем генерировать файлы предварительного просмотра самостоятельно
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ preview:pre-generate The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 In Folder.php line 164: 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 Could not create folder 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 preview:pre-generate 2020-06-03T22:17:59+00:00 root@cloud:/usr/local/www/nextcloud #sudo -u www php occ preview:pre-generate -vvvv The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:37:43+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200506-WA0019.jpg 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 In Folder.php line 164: 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 [OCPFilesNotPermittedException] 2020-06-03T22:37:43+00:00 Could not create folder 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 Exception trace: 2020-06-03T22:37:43+00:00 at /usr/local/www/nextcloud/lib/private/Files/Node/Folder.php:164 2020-06-03T22:37:43+00:00 OCFilesNodeFolder->newFolder() at /usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php:158 2020-06-03T22:37:43+00:00 OCFilesAppDataAppData->newFolder() at /usr/local/www/nextcloud/lib/private/Preview/Generator.php:433 2020-06-03T22:37:43+00:00 OCPreviewGenerator->getPreviewFolder() at /usr/local/www/nextcloud/lib/private/Preview/Generator.php:119 2020-06-03T22:37:43+00:00 OCPreviewGenerator->getPreview() at /usr/local/www/nextcloud/lib/private/PreviewManager.php:185 2020-06-03T22:37:43+00:00 OCPreviewManager->getPreview() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:205 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->processFile() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:193 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->processRow() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:164 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->startProcessing() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:132 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->execute() at /usr/local/www/nextcloud/3rdparty/symfony/console/Command/Command.php:255 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleCommandCommand->run() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:915 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->doRunCommand() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:272 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->doRun() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:148 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->run() at /usr/local/www/nextcloud/lib/private/Console/Application.php:214 2020-06-03T22:37:43+00:00 OCConsoleApplication->run() at /usr/local/www/nextcloud/console.php:99 2020-06-03T22:37:43+00:00 require_once() at /usr/local/www/nextcloud/occ:11 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 preview:pre-generate 2020-06-03T22:37:43+00:00 root@cloud:/usr/local/www/nextcloud #
Удаляем папку data/appdata_*
rm -r /mnt/da1p1/data/appdata_*
Пробуем пересканировать файлы приложений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ files:scan-app-data The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php Scanning AppData for files Path not found: /appdata_ocf5begso4j5 +---------+-------+--------------+ | Folders | Files | Elapsed time | +---------+-------+--------------+ | 0 | 0 | 00:00:00 | +---------+-------+--------------+
Запускаем режим восстановления и ещё раз сканирование файлов приложений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ maintenance:repair The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php - Repair MySQL collation - All tables already have the correct collation -> nothing to do - Repair mime types - Clean tags and favorites - 0 tags of deleted users have been removed. - 0 tags for delete files have been removed. - 0 tag entries for deleted tags have been removed. - 0 tags with no entries have been removed. - Repair invalid shares - Move .step file of updater to backup location - Fix potential broken mount points - No mounts updated - Add log rotate job - Clear frontend caches - Image cache cleared - SCSS cache cleared - JS cache cleared - Clear every generated avatar on major updates - Add preview background cleanup job - Queue a one-time job to cleanup old backups of the updater - Cleanup invalid photocache files for carddav - Add background job to cleanup login flow v2 tokens - Remove potentially over exposing share links - No need to remove link shares. - Clear access cache of projects - Switches from deprecated "production" to "stable" update channel - Sets the enterprise logo - Repair step already executed - Reset generated avatar flag - Update name of the stored view - Fix component of birthday calendars - 4 birthday calendars updated. - Regenerating birthday calendars to use new icons and fix old birthday events without year - Repair step already executed - Fix broken values of calendar objects 0 [>---------------------------] - Registering building of calendar search index as background job - Repair step already executed - Registering background jobs to update cache for webcal calendars - Added 0 background jobs to update webcal calendars - Registering building of calendar reminder index as background job - Repair step already executed - Clean up orphan event and contact data - 0 events without a calendar have been cleaned up - 0 properties without an events have been cleaned up - 0 changes without a calendar have been cleaned up - 0 cached events without a calendar subscription have been cleaned up - 0 changes without a calendar subscription have been cleaned up - 0 contacts without an addressbook have been cleaned up - 0 properties without a contact have been cleaned up - 0 changes without an addressbook have been cleaned up - Remove activity entries of private events - Removed 0 activity entries - Delete orphaned ACL rules - Copy default images to the app data directory - Icon %s copied successfully - Icon %s copied successfully - Icon %s copied successfully - Fix the share type of guest shares when migrating from ownCloud - Copy the share password into the dedicated column - Set existing shares as accepted - Purify and migrate collected mail addresses 0 [>---------------------------] - Insert sync background job for all accounts 1/1 [============================] 100% - Make Mail itinerary extractor executable - Migrate Mail provisioning config from config.php to the database - No old config found - Create or update provisioned Mail accounts - No Mail provisioning config set - Remove any playlist files mistakenly added to music_tracks table - Combine multi-disk albums and store disk numbers per track - Set creation date for playlists without one - Migrate binary status into separate boolean fields - Update OAuth token expiration times - Repair Passwords Database Objects - Checking 0 tag revisions 0 [>---------------------------] - Fixed 0 tag revisions - Checking 2 folder revisions 2/2 [============================] 100% - Fixed 0 folder revisions - Checking 38 password revisions 38/38 [============================] 100% - Fixed 0 password revisions - Checking 0 tag models 0 [>---------------------------] - Fixed 0 tag models - Checking 1 folder models 1/1 [============================] 100% - Fixed 0 folder models - Checking 21 password models 21/21 [============================] 100% - Fixed 0 password models - Checking 0 password tag relations 0 [>---------------------------] - Fixed 0 password tag relations - Create help command - Invalidate access cache for projects conversation provider - Invalidation not required - Add background job to check for backup codes - Populating added database structures for workflows root@cloud:/usr/local/www/nextcloud # sudo -u www php occ files:scan-app-data The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php Scanning AppData for files +---------+-------+--------------+ | Folders | Files | Elapsed time | +---------+-------+--------------+ | 6 | 3 | 00:00:00 | +---------+-------+--------------+
Запускаем создание изображений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ preview:pre-generate -vvvv The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:48:37+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200427-WA0003.jpg 2020-06-03T22:48:39+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200503-WA0008.jpg 2020-06-03T22:48:40+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200427-WA0020.jpg 2020-06-03T22:48:43+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200414-WA0041.jpg
После этого всё работало!
Другие статьи
Содержание
- Устраняем предупреждения в админ панели NextCloud
- Индексирование файлов
- Предупреждения о текущей конфигурации /.well-known/.
- Зависание входа в панель NextCloud
- Не настроена система кэширования.
- Модуль php-imagick не поддерживает SVG
- Не указан регион размещения этого сервера Nextcloud
- Предупреждение headers
- Заголовок HTTP «Strict-Transport-Security»
- PHP не настроен для системного окружения.
- Значение PHP ниже рекомендуемого значения .
- Не скачиваются файлы больше 1Гб
- Nextcloud won’t upload larger files #5438
- Comments
- Steps to reproduce
- Expected behaviour
- Actual behaviour
- Server configuration
- LDAP configuration (delete this part if not used)
- Client configuration
- Web server error log
- Nextcloud log (data/nextcloud.log)
- Browser log
- Почему скачивается, но не закачивается файл в nextcloud по WebDav?
- NextCloud – ошибка при загрузке изображения, видео файла
- Устраняем предупреждения в админ панели NextCloud
- Индексирование файлов
- Предупреждения о текущей конфигурации /.well-known/.
- Зависание входа в панель NextCloud
- Не настроена система кэширования.
- Модуль php-imagick не поддерживает SVG
- Не указан регион размещения этого сервера Nextcloud
- Предупреждение headers
- Заголовок HTTP «Strict-Transport-Security»
- PHP не настроен для системного окружения.
- Значение PHP ниже рекомендуемого значения .
- Не скачиваются файлы больше 1Гб
В предыдущей статье я писал как можно установить и настроить nextcloud на операционной системе Ubuntu Server 20.04 с web-сервером nginx+php-fpm и базой данных postgresql. Почитать можно тут.
После успешного запуска nextcloud в панели администратора Вы можете в пункте общие сведения, увидеть следующие предупреждения:
Индексирование файлов
Для устранения запустим команды для ускорения индексирования файлов. В терминале набираем:
Включаем режим обслуживания:
И вводим данные строки:
Выключаем режим обслуживания
После данной манипуляции ошибка должна исчезнуть.
Предупреждения о текущей конфигурации /.well-known/.
- Веб-сервер не настроен должным образом для разрешения «/.well-known/webfinger».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/nodeinfo».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/caldav».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/carddav».
Чтобы исправить данные предупреждения в конфигурационный файл nginx вашего облака внесем следующую location:
Адрес https://mynextcloud.ru измените на свой.
Также внесём следующие строки в файл .htaccess
Зависание входа в панель NextCloud
Включил https на web сервере для nextclou и появился неприятный глюк: в google chrome, opera и яндекс браузере, а также в firefox, IE и edge при входе в аккаунт и выходе из него браузер «зависает» на странице входа, но при этом авторизуется. Если нажать F5, то окажемся в своем аккаунте.
Как же победить данную проблему?
Лечится добавлением в конфигурационный файл NexCloud:
Не настроена система кэширования.
Не настроена система кэширования. Для увеличения производительности сервера, по возможности, настройте memcache.
Хочу использовать Memcached. Для этого надо установите модуль для PHP и сам memcached.
Как оказалось есть два похожих пакета:
- php-memcache — модуль Memcache для PHP,
- php-memcached — расширение PHP для взаимодействия с memcached.
Нужен с буквой d в конце.
настройки в /etc/php/8.0/mods-available/memcached.ini оставляю все без изменений.
В выводе phpinfo(); появился блок с описанием memcached.
Настройки запуска сервиса в /etc/systemd/system/multi-user.target.wants/memcached.service и конфигурационный файл /etc/memcached.conf тоже не менял.
Проверяем запустился ли сервис
Должно выдать что-то вроде этого
Теперь в конфиге NextCloud добавим строки:
Модуль php-imagick не поддерживает SVG
Для устранения данного предупреждения необходимо установить модуль imagick:
Не указан регион размещения этого сервера Nextcloud
Не указан регион размещения этого сервера Nextcloud, что требуется для возможности проверки номеров телефонов без указания кода страны.
Чтобы разрешить пользователям сервера указывать номера телефонов без указания кода страны, добавьте параметр «default_phone_region» с соответствующим кодом страны в соответствии с ISO 3166-1↗.
Для устранения данного предупреждения откроем конфигурационный файл NextCloud :
и добавим следующие строки:
Для устранения данных ошибок в терминале набираем следующее:
И заполняем данным текстом:
Сохраняем файл (ctrl+o, ctrl+x). И перезагружаем nginx
Заголовок HTTP «Strict-Transport-Security»
Для устранения данного предупреждения отредактируем файл Nginx headers.conf:
Добавим следующие строки:
PHP не настроен для системного окружения.
PHP не настроен правильно для получения переменных системного окружения.
Запрос getenv(«PATH») возвращает пустые результаты.
Обратитесь к разделу о конфигурации PHP и примечаниям к конфигурации PHP из руководства по установке. Обратите внимание на настройку параметров PHP, особенно при использовании механизма php-fpm.
Когда вы используете php-fpm, системные переменные среды, такие как PATH, TMP или другие, не заполняются автоматически так же, как при использовании php-cli. Вызов функции PHP, такой как getenv(‘PATH’); может возвращать пустой результат. Поэтому вам может потребоваться вручную настроить переменные среды в файле конфигурации php-fpm.
И сними с них комментарий (;).
Далее перезапустим php8.0-fpm
Значение PHP ниже рекомендуемого значения .
Разрешённое максимальное значение использования памяти PHP ниже рекомендуемого значения в 512 МБ.
В терминале набираем:
Находим и редактируем следующие строки:
Не скачиваются файлы больше 1Гб
При попытках скачать из облака файлы объемом более 1гб скачивание прерывается при достижении 1гб. Такое происходит при условии использования Nginx как реверс-прокси. Решается очень просто, нужно добавить в конфигурационный файл сайта опцию «proxy_buffering off». Открываем и добавляем эту опцию:
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Решаем проблему с ошибкой W: mdadm. Имеется сервер работающий на Ubuntu Server 16.04, после обновления системы в логах, да и Читать
NextCloud на Ubuntu Server в журнале первого выходила постоянная Ошибка «PHP Startup: Unable to load dynamic library ‘xmlrpc.so’ «
Если при работе в Linux вы получаете ошибку «getcwd() failed: No such file or directory» при запуске какого-либо скрипта или Читать
Источник
Nextcloud won’t upload larger files #5438
Steps to reproduce
I try to upload a file 200 MB large (not that big, thus), yet I can’t get it done. Neither via nextcloud web, WebDAV nor nextcloud client. I properly set up the php.ini configuration and everything around.
- Install nextcloud and try to upload the file
Expected behaviour
The file is uploaded
Actual behaviour
Web: It uploads, but finally nothing happens. After the (upload) process, just nothing
WebDAV on Windows: I/O Device Error
Nextcloud Client: Nothing happens (the nextcloud log doesn’t say anything else)
Server configuration
Operating system: Deb 8
Web server: Plesk’s apache
Database: mysql
PHP version: 7
Nextcloud version: (see Nextcloud admin page) latest
Updated from an older Nextcloud/ownCloud or fresh install: —
Where did you install Nextcloud from: setup.php
Signing status:
List of activated apps:
Nextcloud configuration:
Are you using external storage, if yes which one: —
Are you using encryption: yes
Are you using an external user-backend, if yes which one: —
LDAP configuration (delete this part if not used)
Client configuration
Browser:
Operating system:
Web server error log
Nextcloud log (data/nextcloud.log)
Browser log
The text was updated successfully, but these errors were encountered:
Hi, there is a maximum file size option under Admin > Additional Settings. Please take a look at what it is currently set to. Fyi, I set mine to 2gb. Be sure to post back the solution if you find it. 🙂
Also, here is a way to change maximum upload filesize in Apache. You can google for Nginx info, etc.
- vim /etc/php*/apache2/php.ini
- vim /etc/php*/apache2/php.ini
- Find upload_max_filesize and change it (along with post_max_size)
- Save the file
- Restart apache2
- Edit admin settings in NC to reflect php.ini
For Plesk use following Settings:
PHP Settings for your-nextcloud.com:
Leave everything default, except:
max_execution_timem => 3600
max_input_time => 3600
open_basedir => add «:/dev/urandom:/proc/meminfo» to the end of line
Additional directives:
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
As @sunjam mentioned change Setting under Admin > Additional Settings.
Do not change php.ini directly, but only with Plesk Gui
If you use nginx there will be additional steps to to
Источник
Почему скачивается, но не закачивается файл в nextcloud по WebDav?
Установлен сервер nextcloud на ubuntu 16.04 Apache2.
Доступ по webdav работает нормально. На телефоне установлен Android 6.0.2 и программа FolderSync, которая в автоматическом режиме по webdav синхронизирует папку на телефоне и в nextcloud.
При синхронизации скачиваются файлы с сервера — всё ок. Но, если происходит попытка закачать файл с телефона на сервер, с сервера приходит следующая ошибка:
Debug webdav SabreDAVExceptionNotFound: File with name /test/Kn7IrxJgukU.jpg could not be located
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php — line 76: OCADAVConnectorSabreDirectory->getChild(‘Kn7IrxJgukU.jpg’)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php — line 967: SabreDAVTree->getNodeForPath(‘files/***/tes. ‘)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php — line 1666: SabreDAVServer->getPropertiesIteratorForPath(‘files/***/tes. ‘, Array, 0)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php — line 355: SabreDAVServer->generateMultiStatus(Object(Generator), false)
[internal function] SabreDAVCorePlugin->httpPropFind(Object(SabreHTTPRequest), Object(SabreHTTPResponse))
/var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php — line 105: call_user_func_array(Array, Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php — line 479: SabreEventEventEmitter->emit(‘method PROPFIND’, Array)
/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php — line 254: SabreDAVServer->invokeMethod(Object(SabreHTTPRequest), Object(SabreHTTPResponse))
/var/www/nextcloud/apps/dav/lib/Server.php — line 258: SabreDAVServer->exec()
/var/www/nextcloud/apps/dav/appinfo/v2/remote.php — line 33: OCADAVServer->exec()
/var/www/nextcloud/remote.php — line 162: require_once(‘/var/www/nextcl. ‘)
Подозреваю, что проблема с правами доступа. Может кто-нибудь лог расшифровать?
- Вопрос задан более трёх лет назад
- 1302 просмотра
Сам вопрос задал — сам отвечаю:
Изначально сам NC дает для WebDav ссылку вида:
https://DOMEN/remote.php/webdav/ — она не правильная., с ней синхронизация будет в одну сторону.
С ней всё синхронизируется и устанавливается.
Источник
NextCloud – ошибка при загрузке изображения, видео файла
Задача:
Исправить ошибку nextcloud при открытии видео или аудио файлов в браузере
Пробуем открыть файл и сразу смотрим, что записалось в логах: “Настройки > Журналирование”
По дате и времени находим, какая запись в логах соответствует попытке открыть файл.
Из логов видно, что ошибка прав доступа. Nextcloud не может создать папку.
OCPFilesNotPermittedException: Could not create folder
Авторизуемся в консоли сервера и проверяем какой веб сервер у нас используется
Или можно узнать более короткой командой
Теперь необходимо узнать пользователя от кого работает nginx
в какой группе состоит пользователь www
После того как мы получили нужную информацию, переходим в веб-директорию nextcloud
назвачаем необходимые права на файлы и директории
может быть, что файлы пользователей лежат в другой директории. Проверяем
назначаем нужные права на папку
Пробуем генерировать файлы предварительного просмотра самостоятельно
Удаляем папку data/appdata_*
Пробуем пересканировать файлы приложений
Запускаем режим восстановления и ещё раз сканирование файлов приложений
Источник
Устраняем предупреждения в админ панели NextCloud
В предыдущей статье я писал как можно установить и настроить nextcloud на операционной системе Ubuntu Server 20.04 с web-сервером nginx+php-fpm и базой данных postgresql. Почитать можно тут.
После успешного запуска nextcloud в панели администратора Вы можете в пункте общие сведения, увидеть следующие предупреждения:
Индексирование файлов
Для устранения запустим команды для ускорения индексирования файлов. В терминале набираем:
Включаем режим обслуживания:
И вводим данные строки:
Выключаем режим обслуживания
После данной манипуляции ошибка должна исчезнуть.
Предупреждения о текущей конфигурации /.well-known/.
- Веб-сервер не настроен должным образом для разрешения «/.well-known/webfinger».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/nodeinfo».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/caldav».
- Веб-сервер не настроен должным образом для разрешения «/.well-known/carddav».
Чтобы исправить данные предупреждения в конфигурационный файл nginx вашего облака внесем следующую location:
Адрес https://mynextcloud.ru измените на свой.
Также внесём следующие строки в файл .htaccess
Зависание входа в панель NextCloud
Включил https на web сервере для nextclou и появился неприятный глюк: в google chrome, opera и яндекс браузере, а также в firefox, IE и edge при входе в аккаунт и выходе из него браузер «зависает» на странице входа, но при этом авторизуется. Если нажать F5, то окажемся в своем аккаунте.
Как же победить данную проблему?
Лечится добавлением в конфигурационный файл NexCloud:
Не настроена система кэширования.
Не настроена система кэширования. Для увеличения производительности сервера, по возможности, настройте memcache.
Хочу использовать Memcached. Для этого надо установите модуль для PHP и сам memcached.
Как оказалось есть два похожих пакета:
- php-memcache — модуль Memcache для PHP,
- php-memcached — расширение PHP для взаимодействия с memcached.
Нужен с буквой d в конце.
настройки в /etc/php/8.0/mods-available/memcached.ini оставляю все без изменений.
В выводе phpinfo(); появился блок с описанием memcached.
Настройки запуска сервиса в /etc/systemd/system/multi-user.target.wants/memcached.service и конфигурационный файл /etc/memcached.conf тоже не менял.
Проверяем запустился ли сервис
Должно выдать что-то вроде этого
Теперь в конфиге NextCloud добавим строки:
Модуль php-imagick не поддерживает SVG
Для устранения данного предупреждения необходимо установить модуль imagick:
Не указан регион размещения этого сервера Nextcloud
Не указан регион размещения этого сервера Nextcloud, что требуется для возможности проверки номеров телефонов без указания кода страны.
Чтобы разрешить пользователям сервера указывать номера телефонов без указания кода страны, добавьте параметр «default_phone_region» с соответствующим кодом страны в соответствии с ISO 3166-1↗.
Для устранения данного предупреждения откроем конфигурационный файл NextCloud :
и добавим следующие строки:
Для устранения данных ошибок в терминале набираем следующее:
И заполняем данным текстом:
Сохраняем файл (ctrl+o, ctrl+x). И перезагружаем nginx
Заголовок HTTP «Strict-Transport-Security»
Для устранения данного предупреждения отредактируем файл Nginx headers.conf:
Добавим следующие строки:
PHP не настроен для системного окружения.
PHP не настроен правильно для получения переменных системного окружения.
Запрос getenv(«PATH») возвращает пустые результаты.
Обратитесь к разделу о конфигурации PHP и примечаниям к конфигурации PHP из руководства по установке. Обратите внимание на настройку параметров PHP, особенно при использовании механизма php-fpm.
Когда вы используете php-fpm, системные переменные среды, такие как PATH, TMP или другие, не заполняются автоматически так же, как при использовании php-cli. Вызов функции PHP, такой как getenv(‘PATH’); может возвращать пустой результат. Поэтому вам может потребоваться вручную настроить переменные среды в файле конфигурации php-fpm.
И сними с них комментарий (;).
Далее перезапустим php8.0-fpm
Значение PHP ниже рекомендуемого значения .
Разрешённое максимальное значение использования памяти PHP ниже рекомендуемого значения в 512 МБ.
В терминале набираем:
Находим и редактируем следующие строки:
Не скачиваются файлы больше 1Гб
При попытках скачать из облака файлы объемом более 1гб скачивание прерывается при достижении 1гб. Такое происходит при условии использования Nginx как реверс-прокси. Решается очень просто, нужно добавить в конфигурационный файл сайта опцию «proxy_buffering off». Открываем и добавляем эту опцию:
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Решаем проблему с ошибкой W: mdadm. Имеется сервер работающий на Ubuntu Server 16.04, после обновления системы в логах, да и Читать
NextCloud на Ubuntu Server в журнале первого выходила постоянная Ошибка «PHP Startup: Unable to load dynamic library ‘xmlrpc.so’ «
Если при работе в Linux вы получаете ошибку «getcwd() failed: No such file or directory» при запуске какого-либо скрипта или Читать
Источник
Задача:
Исправить ошибку nextcloud при открытии видео или аудио файлов в браузере
—————————————————————
Пробуем открыть файл и сразу смотрим, что записалось в логах: “Настройки > Журналирование”
По дате и времени находим, какая запись в логах соответствует попытке открыть файл.
[index] Error: OCPFilesNotPermittedException: Could not create folder at <<closure>> 0. /usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php line 158 OCFilesNodeFolder->newFolder("920872") 1. /usr/local/www/nextcloud/lib/private/Preview/Generator.php line 433 OCFilesAppDataAppData->newFolder("920872") 2. /usr/local/www/nextcloud/lib/private/Preview/Generator.php line 119 OCPreviewGenerator->getPreviewFolder(OCFilesNodeFile {}) 3. /usr/local/www/nextcloud/lib/private/PreviewManager.php line 185 OCPreviewGenerator->getPreview(OCFilesNodeFile {}, 1920, 1080, false, "fill", "image/jpeg") 4. /usr/local/www/nextcloud/core/Controller/PreviewController.php line 172 OCPreviewManager->getPreview(OCFilesNodeFile {}, 1920, 1080, false, "fill") 5. /usr/local/www/nextcloud/core/Controller/PreviewController.php line 144 OCCoreControllerPreviewController->fetchPreview(OCFilesNodeFile {}, 1920, 1080, true, true, "fill") 6. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 170 OCCoreControllerPreviewController->getPreviewByFileId(920872, 1920, 1080, true, true, "fill") 7. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 99 OCAppFrameworkHttpDispatcher->executeController(OCCoreControllerPreviewController {}, "getPreviewByFileId") 8. /usr/local/www/nextcloud/lib/private/AppFramework/App.php line 125 OCAppFrameworkHttpDispatcher->dispatch(OCCoreControllerPreviewController {}, "getPreviewByFileId") 9. /usr/local/www/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php line 47 OCAppFrameworkApp::main("OC\Core\Controller\PreviewController", "getPreviewByFileId", OCAppFramework ... {}, {_route: "core.P ... "}) 10. <<closure>> OCAppFrameworkRoutingRouteActionHandler->__invoke({_route: "core.P ... "}) 11. /usr/local/www/nextcloud/lib/private/Route/Router.php line 299 call_user_func(OCAppFramework ... {}, {_route: "core.P ... "}) 12. /usr/local/www/nextcloud/lib/base.php line 1008 OCRouteRouter->match("/core/preview") 13. /usr/local/www/nextcloud/index.php line 38 OC::handleRequest() GET /core/preview?fileId=920872&x=1920&y=1080&a=true from 192.168.17.231 by admin at 2020-05-23T11:57:51+00:00
Из логов видно, что ошибка прав доступа. Nextcloud не может создать папку.
OCPFilesNotPermittedException: Could not create folder
Авторизуемся в консоли сервера и проверяем какой веб сервер у нас используется
сurl --insecure --silent --show-error --connect-timeout 1 -I http://localhost | grep Server
Или можно узнать более короткой командой
root@cloud:/ # curl -I http://localhost HTTP/1.1 404 Not Found Server: nginx/1.16.1 Date: Sat, 23 May 2020 11:24:15 GMT Content-Type: text/html Content-Length: 153 Connection: keep-alive root@cloud:/ #
Теперь необходимо узнать пользователя от кого работает nginx
root@cloud:/ # ps aux | grep nginx root 781 0.0 0.1 32268 9500 - Is 28Apr20 0:00.31 nginx: master process /usr/local/sbin/nginx www 4314 0.0 0.1 29476 11756 - S 8May20 18:37.97 nginx: worker process (nginx) root 8480 0.0 0.0 11260 2716 0 S+ 13:33 0:00.00 grep nginx root@cloud:/ #
в какой группе состоит пользователь www
root@cloud:/ # groups www www root@cloud:/ #
После того как мы получили нужную информацию, переходим в веб-директорию nextcloud
root@cloud:/ # cd /usr/local/www/ root@cloud:/usr/local/www #
назвачаем необходимые права на файлы и директории
chown -R www:www nextcloud find nextcloud/ -type d -exec chmod 750 {} ; find nextcloud/ -type f -exec chmod 640 {} ;
может быть, что файлы пользователей лежат в другой директории. Проверяем
root@cloud:/usr/local/www # cat nextcloud/config/config.php | grep datadir 'datadirectory' => '/mnt/da1p1/data', root@cloud:/usr/local/www #
назначаем нужные права на папку
root@cloud:/ # cd /mnt/da1p1 root@cloud:/mnt/da1p1 # chown -R www:www data root@cloud:/mnt/da1p1 # find data/ -type d -exec chmod 750 {} ; root@cloud:/mnt/da1p1 # find data/ -type f -exec chmod 640 {} ;
Пробуем генерировать файлы предварительного просмотра самостоятельно
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ preview:pre-generate The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 In Folder.php line 164: 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 Could not create folder 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 2020-06-03T22:17:59+00:00 preview:pre-generate 2020-06-03T22:17:59+00:00 root@cloud:/usr/local/www/nextcloud #sudo -u www php occ preview:pre-generate -vvvv The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:37:43+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200506-WA0019.jpg 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 In Folder.php line 164: 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 [OCPFilesNotPermittedException] 2020-06-03T22:37:43+00:00 Could not create folder 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 Exception trace: 2020-06-03T22:37:43+00:00 at /usr/local/www/nextcloud/lib/private/Files/Node/Folder.php:164 2020-06-03T22:37:43+00:00 OCFilesNodeFolder->newFolder() at /usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php:158 2020-06-03T22:37:43+00:00 OCFilesAppDataAppData->newFolder() at /usr/local/www/nextcloud/lib/private/Preview/Generator.php:433 2020-06-03T22:37:43+00:00 OCPreviewGenerator->getPreviewFolder() at /usr/local/www/nextcloud/lib/private/Preview/Generator.php:119 2020-06-03T22:37:43+00:00 OCPreviewGenerator->getPreview() at /usr/local/www/nextcloud/lib/private/PreviewManager.php:185 2020-06-03T22:37:43+00:00 OCPreviewManager->getPreview() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:205 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->processFile() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:193 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->processRow() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:164 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->startProcessing() at /usr/local/www/nextcloud/apps/previewgenerator/lib/Command/PreGenerate.php:132 2020-06-03T22:37:43+00:00 OCAPreviewGeneratorCommandPreGenerate->execute() at /usr/local/www/nextcloud/3rdparty/symfony/console/Command/Command.php:255 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleCommandCommand->run() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:915 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->doRunCommand() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:272 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->doRun() at /usr/local/www/nextcloud/3rdparty/symfony/console/Application.php:148 2020-06-03T22:37:43+00:00 SymfonyComponentConsoleApplication->run() at /usr/local/www/nextcloud/lib/private/Console/Application.php:214 2020-06-03T22:37:43+00:00 OCConsoleApplication->run() at /usr/local/www/nextcloud/console.php:99 2020-06-03T22:37:43+00:00 require_once() at /usr/local/www/nextcloud/occ:11 2020-06-03T22:37:43+00:00 2020-06-03T22:37:43+00:00 preview:pre-generate 2020-06-03T22:37:43+00:00 root@cloud:/usr/local/www/nextcloud #
Удаляем папку data/appdata_*
rm -r /mnt/da1p1/data/appdata_*
Пробуем пересканировать файлы приложений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ files:scan-app-data The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php Scanning AppData for files Path not found: /appdata_ocf5begso4j5 +---------+-------+--------------+ | Folders | Files | Elapsed time | +---------+-------+--------------+ | 0 | 0 | 00:00:00 | +---------+-------+--------------+
Запускаем режим восстановления и ещё раз сканирование файлов приложений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ maintenance:repair The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php - Repair MySQL collation - All tables already have the correct collation -> nothing to do - Repair mime types - Clean tags and favorites - 0 tags of deleted users have been removed. - 0 tags for delete files have been removed. - 0 tag entries for deleted tags have been removed. - 0 tags with no entries have been removed. - Repair invalid shares - Move .step file of updater to backup location - Fix potential broken mount points - No mounts updated - Add log rotate job - Clear frontend caches - Image cache cleared - SCSS cache cleared - JS cache cleared - Clear every generated avatar on major updates - Add preview background cleanup job - Queue a one-time job to cleanup old backups of the updater - Cleanup invalid photocache files for carddav - Add background job to cleanup login flow v2 tokens - Remove potentially over exposing share links - No need to remove link shares. - Clear access cache of projects - Switches from deprecated "production" to "stable" update channel - Sets the enterprise logo - Repair step already executed - Reset generated avatar flag - Update name of the stored view - Fix component of birthday calendars - 4 birthday calendars updated. - Regenerating birthday calendars to use new icons and fix old birthday events without year - Repair step already executed - Fix broken values of calendar objects 0 [>---------------------------] - Registering building of calendar search index as background job - Repair step already executed - Registering background jobs to update cache for webcal calendars - Added 0 background jobs to update webcal calendars - Registering building of calendar reminder index as background job - Repair step already executed - Clean up orphan event and contact data - 0 events without a calendar have been cleaned up - 0 properties without an events have been cleaned up - 0 changes without a calendar have been cleaned up - 0 cached events without a calendar subscription have been cleaned up - 0 changes without a calendar subscription have been cleaned up - 0 contacts without an addressbook have been cleaned up - 0 properties without a contact have been cleaned up - 0 changes without an addressbook have been cleaned up - Remove activity entries of private events - Removed 0 activity entries - Delete orphaned ACL rules - Copy default images to the app data directory - Icon %s copied successfully - Icon %s copied successfully - Icon %s copied successfully - Fix the share type of guest shares when migrating from ownCloud - Copy the share password into the dedicated column - Set existing shares as accepted - Purify and migrate collected mail addresses 0 [>---------------------------] - Insert sync background job for all accounts 1/1 [============================] 100% - Make Mail itinerary extractor executable - Migrate Mail provisioning config from config.php to the database - No old config found - Create or update provisioned Mail accounts - No Mail provisioning config set - Remove any playlist files mistakenly added to music_tracks table - Combine multi-disk albums and store disk numbers per track - Set creation date for playlists without one - Migrate binary status into separate boolean fields - Update OAuth token expiration times - Repair Passwords Database Objects - Checking 0 tag revisions 0 [>---------------------------] - Fixed 0 tag revisions - Checking 2 folder revisions 2/2 [============================] 100% - Fixed 0 folder revisions - Checking 38 password revisions 38/38 [============================] 100% - Fixed 0 password revisions - Checking 0 tag models 0 [>---------------------------] - Fixed 0 tag models - Checking 1 folder models 1/1 [============================] 100% - Fixed 0 folder models - Checking 21 password models 21/21 [============================] 100% - Fixed 0 password models - Checking 0 password tag relations 0 [>---------------------------] - Fixed 0 password tag relations - Create help command - Invalidate access cache for projects conversation provider - Invalidation not required - Add background job to check for backup codes - Populating added database structures for workflows root@cloud:/usr/local/www/nextcloud # sudo -u www php occ files:scan-app-data The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php Scanning AppData for files +---------+-------+--------------+ | Folders | Files | Elapsed time | +---------+-------+--------------+ | 6 | 3 | 00:00:00 | +---------+-------+--------------+
Запускаем создание изображений
root@cloud:/usr/local/www/nextcloud # sudo -u www php occ preview:pre-generate -vvvv The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php 2020-06-03T22:48:37+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200427-WA0003.jpg 2020-06-03T22:48:39+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200503-WA0008.jpg 2020-06-03T22:48:40+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200427-WA0020.jpg 2020-06-03T22:48:43+00:00 Generating previews for /virzai/files/Автозагрузка/WhatsApp Images/IMG-20200414-WA0041.jpg
После этого всё работало!