Сравнительно недавно вышел грандиозный релиз бесплатного продукта Nextcloud Hub 3. И я расскажу как обновиться с Nextcloud 24.
Nextcloud Hub 3 этот новая веха развития Nexctloud, которая вобрала в себя все современные веяния. А сам Nextcloud продукт может закрыть потребности по поднятию собственного аналога любого публично-коммерческого облака со всеми основными функциями.
Из интересного разработчики фокусируют на:
- глобальных обновлениях компонентов Photos (с ИИ для распознавания и встроенным редактором), Mail
- переработанном интерфейсе
- улучшениях безопасности и производительности.
Более подробнее на английском и с картинками можно прочитать на официальном сайте разработчиков: Announcing Nextcloud Hub 3
Последняя текущая версия Hub 2 – NextCloud 24.x и кнопки обновления до Hub 3 из интерфейса нет.
Из CLI с помощью occ так же нет возможности провести обновление.
Я решил пойти ручным путём:
- Включил режим обслуживания:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ maintenance:mode --on
- Сделал резервную копию БД
- Сделал резервную копию файлов движка
- Нашёл прямую ссылку на скачивание дистрибутива нужной версии (фактически она называется nextcloud 25) тут: https://download.nextcloud.com/server/releases/
- Скачал и распаковал поверх текущих файлов
- Выполнил в CLI:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ status
для понимания масштабов бедствия 🙂 - Выполнил в CLI:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ upgrade
и дождался завершения обновления файлов - Выполнил в CLI:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ db:add-missing-indices
для создания новых индексов - Выполнил в CLI:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ db:convert-filecache-bigint
для внесения изменений в таблицу, связанную с кешированием - Выключил режим обслуживания:
sudo -u <USER> /usr/bin/php8.1 --define apc.enable_cli=1 /home/.../public_html/occ maintenance:mode --off
- Убедился, что всё работает корректно
- Пострадал от того, что как минимум один часто используемый мной компонент отвалился (но пару дней назад вышла RC с обновлением совместимости до NC25).
Основная информация о состоянии системы доступна в веб-интерфейсе по пути: /index.php/settings/admin/overview
..
Отвалившийся компонент так же доустановил вручную, скачав бета-версию с github.