Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

Резервное копирование CentOS 7 ➔ Astra Linux 1.7.4

Обновлено: 17.12.25

1. Подготовка к переносу резервной копии

1.1. Подготовка на ОС CentOS 7

1.1.1. Сделайте доступной директорию r7-office для внешних вызовов

Важно

При включенной службе firewalld необходимо выполнить настройку для nfs.

# Добавляем службу:
sudo firewall-cmd --permanent --zone=public --add-service=nfs

# Перезапускаем службу firewalld:
sudo firewall-cmd --reload

# Проверяем правила для зоны public:
sudo firewall-cmd --zone=public --list-all

1.1.2. Установите пакеты:

yum install nfs-utils nfs4-acl-tools -y

1.1.3. Запустите сервис

systemctl enable nfs-server --now

1.1.4. Создайте пользователя

Обратите внимание

UID и GID пользователя cs_bcp должны быть одинаковые на ВМ подготовленной для переноса бекапа и NFS хранилищем

# Создаём пользователя cs_bcp
useradd cs_bcp

# Узнаем его UID и GID
id cs_bcp

# Добавляем пользователя cs_bcp в группу r7-office
usermod -a -G r7-office cs_bcp

1.1.5. Для экспорта созданного ранее каталога отредактируйте файл конфигурации и указываем полученные UID и GID в шаге 1.1.4.

nano /etc/exports
  • с содержимым
/var/www/r7-office/ 192.168.26.106/24(rw,insecure,nohide,all_squash,anonuid=1001,anongid=1001,no_subtree_check)
Уточнение

Где:

/var/www/r7-office/ – путь к папке, для которой раздается доступ;
192.168.26.106 –IP-адрес, которому раздается доступ к папке (можно указать всю сеть, тогда запись примет вид 192.168.1.0/24)
(rw,no_root_squash,sync) – набор опций, опции могут быть:

rw – чтение запись (может принимать значение ro-только чтение);
no_root_squash – по умолчанию пользователь root на клиентской машине не будет иметь доступа к разделяемой директории сервера. Этой опцией мы снимаем это ограничение. В целях безопасности этого лучше не делать;
nohide – NFS автоматически не показывает нелокальные ресурсы (например, примонтированые с помощью mount –bind), эта опция включает отображение таких ресурсов;
subtree_check (no_subtree_check) – в некоторых случаях приходится экспортировать не весь раздел, а лишь его часть. При этом сервер NFS должен выполнять дополнительную проверку обращений клиентов, чтобы убедиться в том, что они предпринимают попытку доступа лишь к файлам, находящимся в соответствующих подкаталогах. Такой контроль поддерева (subtree checks) несколько замедляет взаимодействие с клиентами, но если отказаться от него, могут возникнуть проблемы с безопасностью системы. Отменить контроль поддерева можно с помощью опции no_subtree_check. Опция subtree_check, включающая такой контроль, предполагается по умолчанию. Контроль поддерева можно не выполнять в том случае, если экспортируемый каталог совпадает с разделом диска;

1.1.6. Для применения изменений внесённых в конфигурацию экспорта выполните команду:

exportfs -ra

1.1.7. Создайте sql дамп БД r7-office

Важно

Пароль пользователя БД «r7-office» можно посмотреть в файле «web.connections.config» ➔ «Password=…»

/var/www/r7-office/WebStudio/web.connections.config

  • Выполните команду:
mysqldump -u root -p r7-office > r7_backup.sql

1.1.8. Архивируйте sql дамп с помощью утилиты Zip

  • Выполняем команду:
zip r7_backup.sql.zip r7_backup.sql

1.2. Подготовка на ОС Astra Linux 1.7.4

1.2.1. Установите nfs клиент и смонтируйте каталог

# устанавливаем пакет
apt install nfs-common

# Создаём пользователя (id те же, что и на nfs должны быть)
useradd -u 1001 -g 1001 cs_bcp

# Создаём каталог
mkdir /mnt/cs/

# Назначаем права
chown cs_bcp /mnt/cs/

# Примонтировать
mount -t nfs -O uid=1001,iocharset=utf-8 192.168.26.106:/var/www/r7-office/ /mnt/cs/
Уточнение

Где:

192.168.26.106 – ip сервера cs, с которого переносим данные,
/var/www/r7-office/ – каталог на nfs сервере
/mnt/cs/ – путь монтирования на ВМ подготовленной для переноса бекапа

1.2.2. Проверьте монтирование

df -h

1.2.3. (Опционально) Добавьте запись в /etc/fstab для автомонтирования каталога после ребута ВМ

192.168.26.106:/var/www/r7-office/ /mnt/cs/ nfs defaults 0 0
Уточнение

Где:

192.168.26.106 – ip сервера cs, с которого переносим данные,
/var/www/r7-office/ – каталог на nfs сервере
/mnt/cs/ – путь монтирования на ВМ подготовленной для переноса бекапа

2. Выполняем резервное копирование на ОС Linux

2.1. Остановите службы

systemctl stop god monoserve monoserveApiSystem
systemctl stop r7-office* --all

2.2. Сделайте резервную копию директории

mv /var/www/r7-office/Data/ /var/www/r7-office/Data_old

2.3. Скопируйте архив с sql дампом и каталоги на ОС Linux из ранее примонтированной директории

cp /mnt/cs/Data/ /var/www/r7-office/

2.4. Назначьте владельца и группу на перемещенные директории

chown -R r7-office:r7-office /var/www/r7-office/Data/

2.5. Восстановите БД из дампа

  • Перейдите в каталог с sql дампом
cd /mnt/cs/
  • Выполните команду
Важно

Пароль пользователя БД «r7-office» можно посмотреть в файле «web.connections.config» ➔ «Password=…»
/var/www/r7-office/WebStudio/web.connections.config

unzip -p r7_backup.sql.zip | mysql -uroot -p r7-office

2.6. Измените значение параметра core.machinekey

Обратите внимание

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

nano /var/www/r7-office/WebStudio/web.appsettings.config
nano /var/www/r7-office/Services/TeamLabSvc/TeamLabSvc.exe.config
nano /var/www/r7-office/ApiSystem/Web.config
nano /var/www/r7-office/controlpanel/www/config/production.json
nano /var/www/r7-office/Services/MailAggregator/ASC.Mail.EmlDownloader.exe.config
nano /var/www/r7-office/Services/MailAggregator/ASC.Mail.Aggregator.CollectionService.exe.config

2.7. Запустите службы

Важно

При выполнении команд в директории где находиться файл r7-office.sql возможно появление ошибки: «служба r7-office.sql не найдена», для исключения данного сценария предварительно смените директорию.

systemctl start god monoserve monoserveApiSystem
systemctl start r7-office* --all