Главный критерий данного переноса — чтобы размер файлов на отдающем сервере не превышал размер диска принимающего.
Предположим у нас есть два сервера — отдающий и принимающий со следующими дисками:
- Сервер 1 (отдающий) имеет диск в 40 ГБ и суммарный объем файлов в 24 ГБ
- Сервер 2 (принимающий) имеет диск в 30 ГБ
Для переноса мы:
-
Загружаем оба сервера с диска восстановления.
Для подключения по SSH потребуется отключить firewall и установить пароль для пользователя root:
systemctl stop iptables
passwd #дважды укажите новый пароль для root
-
Монтируем диски серверов в каталог
mnt:
mount /dev/sda1 /mnt
Команда выполняется на двух серверах.
Диск может обозначаться как /dev/sda, так и /dev/vda. Перед выполнением команды монтирования определите фактическое имя диска.
Для этого выполните команду:
lsblk
В выводе будет указан основной диск и его разделы, например:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 885M 1 loop /run/archiso/sfs/airootfs sda 8:0 0 50G 0 disk ├─sda1 8:1 0 49G 0 part ├─sda14 8:14 0 4M 0 part ├─sda15 8:15 0 106M 0 part └─sda16 259:0 0 913M 0 part sr0 11:0 1 1019M 0 rom /run/archiso/bootmnt vda 254:0 0 1M 1 disk
В этом случае для монтирования используется команда:
mount /dev/sda1 /mnt
-
Удаляем файлы на диске принимающего сервера:
rm -rf /mnt/*
-
Копируем файлы с отдающего на принимающий:
rsync -azvhP /mnt/ root@IP_ПРИНИМАЮЩЕГО:/mnt/
-
По окончанию копирования выполняем команды на принимающем сервере:
Войдем в окружение chroot на смонтированном разделе:
arch-chroot /mnt
Удалим привязку к статическому MAC-адресу
nano /etc/netplan/50-cloud-init.yaml
Найдем и закомментируем строки с привязкой к MAC-адресу, например:
match: macaddress: 54:52:00:6e:6d:ba
После редактирования применяем изменения:
netplan apply
Проверьте, запущена ли служба ssh:
systemctl status ssh
Если служба не запущена, запустите ее:
systemctl enable ssh && systemctl start ssh
Выполним команды:
update-initramfs -u
grub-install /dev/sda
update-grub
exit
-
Запускаем принимающий сервер в стандартном режиме. Обратите внимание: для входа необходимо использовать учетные данные (имя пользователя и пароль) от исходного сервера, с которого выполнялся перенос. Пароль, указанный в панели управления для нового сервера, работать не будет.