ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как мигрировать с OwnCloud 9 на Nextcloud 11 в Ubuntu 14.04

Процесс миграции с OwnCloud к Nextcloud

В последнее время большая часть команды разработчиков оставили ядро OwnCloud, чтобы начать новый проект под названием Nextcloud. В то время как OwnCloud будет по- прежнему продолжают развиваться, вы можете увидеть и новый проект. Nextcloud и OwnCloud имеют общую базу кода, это означает что перенастройка существующей установки OwnCloud на Nextcloud должна быть безболезненной задачей.

В этом учебном пособии, мы перенесем существующую установку OwnCloud 9 на Nextcloud 11. Процесс включает выгрузку файлов приложений ядра от Nextcloud, и встроенный в Updater Letting Nextcloud. В то время как процесс прост, существует целый ряд вещей, которые должны быть сделаны в правильном порядке, чтобы убедиться, что все идет гладко.


Предпосылки

Чтобы перенести вам установку OwnCloud к Nextcloud, вам потребуется:

Шаг 1 – Остановка веб-сервера и резервного копирования данных

Даже если вы работаете на свеже-настроенной установке, то хорошей идеей сделать резервное копирование. Вы собираетесь начать перемещение и удаление вещей, так что безопасность прежде всего!

Войдите на свой сервер через SSH под управлением OwnCloud, если вы еще не подключены:

ssh destroyer@your_server_ip

 

Важно, убедиться, что ничего не меняется во время выполнения резервного копирования и миграции, поэтому самый простой способ, чтобы проверить, это закрыть веб-сервер, так чтобы пользователи не смогли получить доступ к OwnCloud. Выполните следующую команду:

sudo service apache2 stop

 

Теперь, когда веб – сервер остановлен, перейдите в каталог, где ваш сервер хранит OwnCloud. Если вы используете установку One-Click для OwnCloud на Ubuntu 14.04, ваша установка находится в директории /var/www/. Выполните следующие команды, чтобы перейти в этот каталог и убедитесь, что он содержит owncloud/:

    cd /var/www
    ls

 

Вы увидите папку owncloud:

Вывод

html  owncloud

 

Далее создайте резервный архив при помощи команды TAR для сжатия файлов GZIP и подробно выведите на экран. Новый архив будет называться owncloud.tar.gz и будет содержать весь каталог owncloud/. Выполните следующую команду:

sudo tar czfv owncloud.tar.gz owncloud/

 

Теперь переместите архив в ваш домашний каталог для безопасного хранения:

sudo mv owncloud.tar.gz ~/

 

Перед установкой Nextcloud, есть еще один шаг специфичный для серверов Ubuntu 14.04.

Шаг 2 – Обновление PHP

Если вы переходите с One-Click установки на Ubuntu 14.04 вам необходимо обновить PHP, чтобы иметь возможность использовать любую версию Nextcloud, на более новую, чем 10.0.2. Стандартное хранилище Ubuntu 14.04 включают только PHP 5.5, но PHP 5.6 требуется начиная с NextCloud 11. К счастью, Ubuntu поддерживает 3 партии репозиториев, известные как PPA. Если вы не установили PPA прежде, выполнитt эту команду, чтобы установить пакет под названием python-software-properties:

sudo apt-get install python-software-properties

 

Затем добавьте PPA, который содержит обновленные версии PHP:

sudo add-apt-repository ppa:ondrej/php

 

Тогда укажите менеджеру пакетов, чтобы обновил свой список известных пакетов, который включает в себя и PPA:

sudo apt-get update

 

Теперь вы можете установить PHP7 и все модули, которые требуются Nextcloud:

sudo apt-get install php7.0 php7.0-sqlite php7.0-mysql php7.0-pgsql php7.0-zip php7.0-gd php7.0-mb php7.0-curl php7.0-xml php7.0-apc

 

И, наконец, переключите модуль PHP, который использует ваш веб-сервер. Для Apache, командами являются:

    a2dismod php5
    a2enmod php7.0

 


Теперь давайте установим Nextcloud.

Шаг 3 – Загрузка Nextcloud

На сайте релиза Nextcloud вы найдете список каждого выпуска Nextcloud в ряде различных форматов. Найдите самый последний файл .tar.gz для выпуска, который является такой же, или одну основную версию, текущую версию OwnCloud. Например, если вы переходите от 9 One-Click установки OwnCloud вы будет искать файл nextcloud-10.0.2.tar.bz2.

Если вы нашли файл, и не загрузили его на свой персональный компьютер. Вместо этого щелкните правой кнопкой мыши на имени файла и скопируйте адрес ссылки, так что вы можете загрузить файл на сервер.

Вы собираетесь загрузить два файла. Первый будет пакет Nextcloud, который вы нашли на веб – сайте. Другой файл будет проверочный файл называется “md5 checksum”. Файл md5 будет иметь точно такой же путь, что и пакет, но с дополнительным расширением .md5 добавленным к концу. Выполните следующие команды, чтобы перейти в свой домашний каталог, а затем загрузите эти два файла.

    cd ~
    wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2
    wget https://download.nextcloud.com/server/releases/nextcloud-10.0.2.tar.bz2.md5

 

Выполните команду md5sum, чтобы сгенерировать контрольную сумму для проверки целостности файла пакета:

md5sum nextcloud-10.0.2.tar.bz2

 

Вы увидите что-то похожее на этот вывод:

Output
dc30ee58858d4f6f2373472264f7d147  nextcloud-10.0.2.tar.bz2

 

Затем выведите содержимое файла .md5, который вы скачали:

cat nextcloud-10.0.2.tar.bz2.md5

 

Вывод этой команды должен быть идентичен выходу предыдущей команды:

Output
dc30ee58858d4f6f2373472264f7d147  nextcloud-10.0.2.tar.bz2

 

Если выходы различны, скачайте Nextcloud снова.

Чтобы распаковать файл, с помощью команды TAR, но в этот раз, извлеките файл с подробным выводом. Выполните эту команду для распаковки архива:

tar xfv nextcloud-10.0.2.tar.bz2

 

Наконец, скопируйте вновь извлеченную папку nextcloud в папку /var/www:

sudo mv nextcloud /var/www/nextcloud

 

Теперь вы можете начать перенос файлов из OwnCloud в Nextcloud.

Шаг 4 – Перенос данных и настройки файла собственности

Ваша существующая установка OwnCloud имеет две директории, где вы будете сохранять: data/и config/. Вы будете двигаться из исходного расположения в свой каталог nextcoud.

Во- первых, выполните команду для удаления каталогов по умолчанию из вашего каталога nextcloud, если они существуют:

sudo rm -rf /var/www/nextcloud/data /var/www/nextcloud/config

 

Затем переместите старые каталоги из owncloud:

    sudo mv /var/www/owncloud/data /var/www/nextcloud/data
    sudo mv /var/www/owncloud/config /var/www/nextcloud/config

 

Одним из следствий перемещения файлов с помощью команды sudo являются то, что файлы все будут принадлежать пользователю root. Nextcloud, однако, всегда выполняется с помощью пользователя www-data. Это означает, что вам нужно изменить владельца на папку /var/www/nextcloud и ее содержимое, прежде чем идти дальше. Чтобы сделать эту запустите команду chown с аргументом-R для рекурсивного изменения всех файлов на пользователя www-data:

sudo chown -R www-data:www-data /var/www/nextcloud/

 

Теперь, когда файлы находятся в месте, мы должны сказать веб-серверу, как получить к ним доступ.

Шаг 5 – Внутренняя модернизация Nextcloud

Все файлы на месте, вы можете начать процесс внутреннего обновления. Nextcloud и OwnCloud обеспечивают инструмент для управления и модернизации установок под названием occ. Перейдите к каталогу /var/www/nextcloud/:

cd /var/www/nextcloud

 

Перед тем, как можно использовать occ, вам придется обновить файл /var/www/nextcloud/config/config.php, чтобы отразить новое местоположение каталога данных. В частности, строка 'datadirectory' => '/var/www/owncloud/data', должна быть изменена на 'datadirectory' => '/var/www/nextcloud/data'. Используйте sed легко сделать изменения:

sudo sed -i "s/owncloud\/data/nextcloud\/data/g" config/config.php

 

Теперь используйте occ, чтобы поставить Nextcloud в режим обслуживания. Это блокирует файлы, так что никакие изменения не могут быть сделаны извне во время обновления приложения. Выполните следующую команду, чтобы включить режим обслуживания:

sudo -u www-data php occ maintenance:mode --on

 

Обратите внимание, что используется sudo для выполнения команд для пользователя www-data.

Вы увидите этот вывод, так что вы можете подтвердить, что режим обслуживания включен:

[secondary_output]
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Maintenance mode enabled

 

Затем используйте occ для инициирования внутреннего процесса обновления:

sudo -u www-data php occ upgrade

 

Эта команда выводит большое количество данных, как мигрируют все данные OwnCloud на Nextcloud, но в конце концов вы увидите следующие сообщения:

Output
...

Starting code integrity check...
Finished code integrity check
Update successful
Maintenance mode is kept active
Reset log level

 

Если возникли проблемы с обновлением, выход даст вам некоторую обратную связь о том, что пошло не так, и как решить эту проблему. Если предположить, что обновление прошло гладко, выключите режим обслуживания.

sudo -u www-data php occ maintenance:mode --off

 

Ваша установка OwnCloud теперь перенесена на Nextcloud, но это еще не все. Если вы мигрировали с OwnCloud 9 в Nextcloud 10, но есть еще более новая версия так что давайте обновим ее.

Шаг 6 – Обновление Nextcloud

Чтобы обновить Nextcloud до новой основной версии, вы используете ту же процедуру, что использовали в пунктах с 3 по 5 данного руководства. Во-первых, переместите установленную папку Nextcloud с помощью следующей команды:

sudo mv /var/www/nextcloud /var/www/nextcloud.old

 

Затем найдите файл .tar.gz с сайта релиза Nextcloud, загрузите его, и проверьте его контрольную сумму MD5 так же, как вы это делали в шаге 3.

    wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2
    wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.tar.bz2.md5
    md5sum nextcloud-11.0.0.tar.bz2
    cat nextcloud-11.0.0.tar.bz2.md5

 

После того, как вы загрузили и проверили архив, распакуйте его и переместите его в папку Nextcloud на веб-сервере:

    tar xfv nextcloud-11.0.0.tar.bz2
    mv nextcloud /var/www/nextcloud

 

Затем переместите конфигурационные файлы и данные из старой установки в новую, как вы это делали в шаге 4:

    rm -rf /var/www/nextcloud/config /var/www/nextcloud/data 
    mv /var/www/nextcloud.old/config /var/www/nextcloud
    mv /var/www/nextcloud.old/data /var/www/nextcloud
    sudo chown -R www-data:www-data /var/www/nextcloud/

 

И, наконец, используйте occ для выполнения обновления:

    sudo -u www-data php occ maintenance:mode --on
    sudo -u www-data php occ upgrade
    sudo -u www-data php occ maintenance:mode --off

 

Повторите эти действия для каждой основной версии Nextcloud, Вам необходимо обновить до конца.

Теперь, когда все обновлено, мы можем настроить веб-сервер для отправки трафика на Nextcloud.

Шаг 7 – Изменение потока трафика веб-сервера

Веб – сервер Apache направляет в различные каталоги за счет использования виртуальных хостов, или виртуальный хост одновременно. Папка /etc/apache2/sites-available/содержит описание каждого виртуального хоста, который настроен для сервера. Эти виртуальные домены включены путем связывания связанных с ними файлов в папке /etc/apache2/sites-enabled/. Файл /etc/apache2/sites-available/000-owncloud.conf настраивает сервер для чтения /var/www/owcloud и что конфигурация включена по ссылке, расположенной в файле /etc/apache2/sites-enabled/000-owncloud.conf.

Чтобы преобразовать сервер используйте установку Nextcloud, создайте копию конфигурации vhost OwnCloud, отредактируйте его на Nextcloud, отключите виртуальный хост OwnCloud, и включите виртуальный хост Nextcloud.

Сначала скопируйте файл конфигурации OwnCloud:

sudo cp /etc/apache2/sites-available/000-owncloud.conf /etc/apache2/sites-available/000-nextcloud.conf

 

Далее, замените все экземпляры owncloud в конфигурационном файле на nextcloud. Вы можете сделать это, открыв файл /etc/apache2/sites-available/000-nextcloud.conf с помощью текстового редактора и внесения изменений самостоятельно, или с помощью регулярных выражений и команды sed.

Выполните следующую команду, чтобы преобразовать содержимое файла конфигурации vhost с sed:

sudo sed -i "s/owncloud/nextcloud/g" /etc/apache2/sites-available/000-nextcloud.conf

 

Затем отключите виртуальный хост OwnCloud, удалив ссылку /etc/apache2/sites-enabled/000-owncloud.conf. Ubuntu предоставляет команду a2dissite для отключения сайтов. Выполните следующую команду:

sudo a2dissite 000-owncloud.conf

 

И, наконец, включите виртуальный хост Nextcloud, создав символическую ссылку на файл конфигурации Nextcloud. Используйте команду a2ensite для создания ссылки:

sudo a2ensite 000-nextcloud.conf

 


Теперь, когда веб-сервер знает, где находится Nextcloud, мы можем запустить его с помощью следующей команды:

sudo service apache2 start

 

В этот момент все должно работать с вашей новой установки Nextcloud. Откройте веб – браузер и перейдите к местоположению вашего старого сервера OwnCloud, и вы увидите экран входа в систему Nextcloud. Все ваши старые имена пользователей и пароли будут работать так же, как они это делали до миграции. Войти как пользователь admin, как вы, возможно, потребуется повторно включить некоторые из ваших приложений, в том числе приложение календарь и контакты.

Вывод

На этом уроке вы создали резервную копию предыдущей установки OwnCloud, мигрировали в Nextcloud, и закрыли OwnCloud. Теперь вы можете войти в Nextcloud, используя веб-интерфейс, так же, как вы делали с OwnCloud.

Теперь, когда ваш сервер был перенесен в Nextcloud, настало время обновить все синхронизации клиентов, которые вы используете. Так же, как OwnCloud, Nextcloud предоставляет ряд синхронизации клиентов для настольных компьютеров и мобильных устройств.

Если вы решили вернуться к OwnCloud, вы можете восстановить папки data/и config/ из резервной копии, созданной на шаге 1, а также любой внешней базы данных, резервное копирование. Не пытайтесь скопировать папки data/и config/ из /var/www/nextcloud обратно в OwnCloud. После того, как резервные копии были восстановлены, все , что вам нужно сделать, это отключить виртуальный хост Nextcloud и включить OwnCloud, используя ту же самую процедуру , описанную в шаге 4.

Процесс миграции с OwnCloud к Nextcloud

Exit mobile version