Перенос Linux на другой диск на примере Ubuntu 20.04

    3 минуты

В сети много статей, обсуждений и рекомендаций по миграции (клонированию) системы с одного компьютера на другой. Так что эта статья о том, как из всего этого вороха делал я сам.

Поставил новый сервер и возник вопрос, как не затрачивая времени на установку ОС и необходимого мне в работе программного обеспечения, их настройку, перенести готовую систему. Можно, конечно, было отстегнуть диск со старого сервера и подключить его к новому. Так в том и дело, что старый диск в формате SATA SSD, а на новом сервере — M.2 NVMe, что, естественно, даст дополнительную прибавку к скорости работы сервера.

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

Здесь и далее команды буду давать без sudo, так как использовал терминал Webmin, в котором работа по умолчанию от root.

И так, исходные данные:

  • Диск-источник — /dev/sdb
  • Диск-получатель — /dev/nvme0n1

Первым делом нужно проверить, какую таблицу разделов использует диск-источник (MBR или GPT)

fdisk /dev/sdb -l

В строке Partition Table будет показана используемая таблица разделов.

На диске получателе создаём такую же таблицу разделов, как и на диске-источнике

parted /dev/nvme0n1
mklabel gpt

Если используется MBR, то

mklabel msdos

Выходим из parted командой

quit

Далее, с помощью команды DD клонировал диск /dev/sdb в /dev/nvme0n1

dd if=/dev/sdb of=/dev/nvme0n1 bs=1M conv=noerror,sync

Так как мой новый диск имел больший размер, то с помощью утилиты growpart попытался расширить корневой раздел.

Устанавливаем утилиту, так как она не предустановлена в системе в отличии от parted

apt install -y cloud-guest-utils

Расширяем раздел 2 на диске -получателе

growpart /dev/nvme0n1 2

В итоге стандартная программа Диск показывает, что всё пространство диска стало доступным, но при ближайшем рассмотрении информации выясняется, что доступно нам 91 ГБ из 512 ГБ, тогда, как файлы на старом диске занимали всего около 30 ГБ.

Попытался расширить физический том

pvresize /dev/nvme0n1p2

но с этим у меня возникли проблемы, так как команда выдала в ответ, что физический том найти не удалось

Отключил сервер, отсоединил ненужные диски и загрузился с M.2 NVMe. Загрузка прошла удачно, все сайты, панели управления и сервер IP-телефонии заработали в штатном режиме. Единственно, что смущает, так это информация панели Webmin, которая подтверждает, что диск такого же объёма, как был старый

Перезагрузился с загрузочной флешки установщика Ubuntu, открыл GParted и увидел, что действительно, часть диска окрашена в серый цвет, а в информации к разделу стоят красные кружочки, информирующие о возможных ошибках. Кликаем правой кнопкой мыши по нашему разделу и в открывшемся меню выбираем Проверить на ошибки. Соглашаемся с предупреждениями и… наш раздел из серого окрасился в белый (это неиспользуемое нами пространство). Смотрим на информацию — предупреждения исчезли, а вместо 79 ГБ уже радует глаз 468 ГБ.

Перезагружаемся, заходим в панель Webmin и убеждаемся, что наши труды были не напрасны:

На этом клонирование системы завершено полностью!

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