Инструкция по обновлению Nextcloud до следующей версии через командную строку
Ранее мы рассмотрели установку Nextcloud на Debian 13 с PostgreSQL и самоподписанным SSL-сертификатом. После успешной установки регулярное обновление становится важной задачей для поддержания безопасности и функциональности системы.
💡 Присоединяйтесь к нашим сообществам!
Будьте в курсе новых статей, обновлений и полезных материалов:
Обновление через командную строку имеет несколько ключевых преимуществ перед веб-интерфейсом:
- Надежность: Исключаются ошибки 504 Gateway Time-out, характерные для веб-интерфейса
- Контроль: Полный контроль над процессом обновления и возможность отката при необходимости
- Безопасность: Минимизация времени простоя системы
- Логирование: Детальное отслеживание каждого этапа обновления
- Автоматизация: Возможность интеграции в скрипты обслуживания
Предварительные требования
- Nextcloud установлен в
/var/www/html/ - Доступ к серверу с правами root
- Веб-сервер Apache с пользователем
www-data
Переход в режим суперпользователя
Перед началом обновления перейдите в режим суперпользователя:
su -
Теперь все команды выполняются от имени root.
1. Подготовка к обновлению
Проверка текущей версии
cd /var/www/html
php occ status
Проверка доступных обновлений
php occ update:check
Создание резервной копии
# Резервная копия всей установки
cp -r /var/www/html /var/www/html_backup_$(date +%Y%m%d_%H%M%S)
# Резервная копия конфигурации
cp /var/www/html/config/config.php /root/config.php.backup
2. Установка правильных прав доступа
Частой причиной проблем с обновлением являются неправильные права доступа:
# Установка владельца для всех файлов
chown -R www-data:www-data /var/www/html/
# Правильные права для файлов и каталогов
find /var/www/html/ -type f -exec chmod 0640 {} \;
find /var/www/html/ -type d -exec chmod 0750 {} \;
# Особые права для критических каталогов
chmod 0750 /var/www/html/config/
chmod 0750 /var/www/html/data/
chmod 0750 /var/www/html/apps/
3. Включение режима обслуживания
php occ maintenance:mode --on
Проверяем, что режим включен:
cat /var/www/html/config/config.php | grep maintenance
Должно отображаться: 'maintenance' => true,
4. Загрузка новой версии Nextcloud
# Переходим во временную директорию
cd /tmp
# Скачиваем нужную версию (например, 32.0.2)
wget https://download.nextcloud.com/server/releases/nextcloud-32.0.2.zip
# Распаковываем архив
unzip -q nextcloud-32.0.2.zip
5. Установка новой версии
# Копируем файлы новой версии
cp -r /tmp/nextcloud/* /var/www/html/
# Устанавливаем правильные права
chown -R www-data:www-data /var/www/html/
find /var/www/html/ -type f -exec chmod 0640 {} \;
find /var/www/html/ -type d -exec chmod 0750 {} \;
6. Обновление базы данных и приложений
cd /var/www/html
# Обновление базы данных
php occ upgrade
# Обновление всех приложений
php occ app:update --all
7. Отключение режима обслуживания
php occ maintenance:mode --off
8. Проверка результата
# Проверка версии
php occ status
# Проверка доступных обновлений
php occ update:check
Обновление Nextcloud через командную строку — наиболее надежный метод, который избегает ограничений веб-сервера по времени выполнения. Следуя этому руководству, вы сможете безопасно обновлять Nextcloud без простоев и потери данных.
Важно: Всегда создавайте резервные копии перед обновлением и тестируйте процесс на тестовой среде перед применением на рабочем сервере.
🚀 Понравилась статья?
Подписывайтесь на наши соцсети чтобы не пропустить новые полезные материалы!