Перенос Nextcloud на другой сервер

Для примера перенесу Nextcloud с одного Linux сервера на другой и изменю домен.

В первую очередь подготавливаем новый сервер, например как я описывал в этой статье:
Установка Nextcloud в Ubuntu

sudo apt-get install apache2 mysql-server php libapache2-mod-php php-json php-mysql php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip php-memcache php-bcmath php-gmp

sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime
sudo a2enmod setenvif
sudo a2enmod ssl
sudo service apache2 restart

Установим SSL сертификат для домена, например от Let’s Encrypt.
Настроим веб сервер.

Создадим базу данных и импортируем в нее резервную копию данных:

mysql -u root -p
CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'PASSWORD_ixnfo.com';
GRANT ALL PRIVILEGES ON nextcloud.* TO nextcloud@localhost;
flush privileges;
quit
gzip -d nextcloud.sql.gz
mysql -D nextcloud < nextcloud.sql

Копируем файлы Nextcloud (и директорию data если она размещена отдельно):

rsync -avh -e "ssh -p 222" --delete cloud@ixnfo.com:/var/www/cloud/ /var/www/cloud/
rsync -avh -e "ssh -p 222" --delete cloud@ixnfo.com:/srv/hdd/nextcloud/data/ /srv/hdd/nextcloud/data/

Если файлов очень много, то рекомендую запускать процесс копирования в screen, чтобы можно было отключиться от ssh (Ctrl+a d для отключения от терминала, -r для подключения):

screen -S nextcloud
screen -r nextcloud

При необходимости изменим имя домена в конфигурации /config/config.php

'trusted_domains' =>
  array (
   0 => 'ixnfo.com',
),

Если установлен apache2, то скорее всего OPcache кэшировал имя старого домена, по этому перезапустим apache2 чтобы обновить:

service apache2 restart

Теперь осталось войти в веб интерфейс Nextcloud и при необходимости обновить до последней версии (если после обновления потребуется добавить индексы в базе данных, то добавим их):

cd /var/www/nextcloud
sudo -u www-data php occ db:add-missing-indices

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

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

Смотрите также мои статьи:
Nextcloud. Перенос директории DATA

Оставьте комментарий

Добавить комментарий