---
title: "Перенос данных между серверами через диск восстановления — Timeweb Cloud"
description: "Как перенести файлы с одного сервера на другой через диск восстановления с помощью rsync: монтирование дисков, копирование данных и настройка загрузчика на принимающем сервере для Ubuntu и CentOS."
---

# Перенос сервера с большим диском на меньший с помощью rsync

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

Главный критерий данного переноса — чтобы размер файлов на отдающем сервере не превышал размер диска принимающего.

Предположим у нас есть два сервера — отдающий и принимающий со следующими дисками:

-   Сервер 1 (отдающий) имеет диск в 40 ГБ и суммарный объем файлов в 24 ГБ
-   Сервер 2 (принимающий) имеет диск в 30 ГБ

Для переноса мы:

1.  [Загружаем](https://timeweb.cloud/docs/cloud-servers/manage-servers/boot-mode) оба сервера с диска восстановления.
    

Для подключения по SSH потребуется отключить firewall и установить пароль для пользователя root:

```bash
systemctl stop iptables
```

```bash
passwd #дважды укажите новый пароль для root
```

2.  Монтируем диски серверов в каталог `mnt`:
    

```bash
 mount /dev/sda1 /mnt
```

Команда выполняется на двух серверах.

Диск может обозначаться как `/dev/sda`, так и `/dev/vda`. Перед выполнением команды монтирования определите фактическое имя диска.

Для этого выполните команду:

```bash
lsblk
```

В выводе будет указан основной диск и его разделы, например:

```shell
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
```

В этом случае для монтирования используется команда:

```bash
mount /dev/sda1 /mnt
```

3.  Удаляем файлы на диске **принимающего** сервера:
    

```bash
rm -rf /mnt/*
```

4.  Копируем файлы с отдающего на принимающий:
    

```bash
 rsync -azvhP /mnt/ root@IP_ПРИНИМАЮЩЕГО:/mnt/
```

5.  По окончанию копирования выполняем команды на принимающем сервере:
    

Ubuntu

Войдем в окружение `chroot` на смонтированном разделе:

```shell
arch-chroot /mnt
```

Удалим привязку к статическому MAC-адресу

```shell
nano /etc/netplan/50-cloud-init.yaml
```

Найдем и закомментируем строки с привязкой к MAC-адресу, например:

```shell
match:
   macaddress: 54:52:00:6e:6d:ba
```

После редактирования применяем изменения:

```shell
netplan apply
```

Проверьте, запущена ли служба ssh:

```shell
systemctl status ssh
```

Если служба не запущена, запустите ее:

```shell
systemctl enable ssh && systemctl start ssh
```

Выполним команды:

```shell
update-initramfs -u
```

```shell
grub-install /dev/sda
```

```shell
update-grub
```

```shell
exit
```

Centos

Войдем в окружение `chroot` на смонтированном разделе:

```shell
arch-chroot /mnt
```

Установим GRUB на основной диск:

```shell
grub2-install /dev/sda
```

Создадим конфигурацию загрузчика:

```shell
grub2-mkconfig -o /boot/grub2/grub.cfg
```

Проверим UUID корневого раздела:

```shell
blkid /dev/sda1
```

Вы увидите примерно такой вывод:

```shell
/dev/sda1: UUID="90c1eed9-cfb3-4676-bcc9-fbf85f391246" TYPE="xfs"
```

Скопируйте UUID без кавычек — в нашем примере это:

```shell
90c1eed9-cfb3-4676-bcc9-fbf85f391246
```

Найдем файл загрузки ядра:

```shell
ls /boot/loader/entries
```

Пример вывода:

```shell
ff03bff452ba47cda441b4fde3632ef4-5.14.0-585.el9.x86_64.conf
```

Отредактируем найденный файл и укажем актуальный UUID:

```shell
vi /boot/loader/entries/ff03bff452ba47cda441b4fde3632ef4-5.14.0-585.el9.x86_64.conf
```

Найдите строку, начинающуюся с `options root=UUID=...` и замените UUID на актуальный. 

Выходим из `chroot`:

```shell
exit
```

6.  Запускаем принимающий сервер в стандартном режиме. Обратите внимание: для входа необходимо использовать учетные данные (имя пользователя и пароль) от исходного сервера, с которого выполнялся перенос. Пароль, указанный в панели управления для нового сервера, работать не будет.
