Как перенести группу томов LVM в другую систему

  • Автор:

LVM-VG-move-000.pngМенеджер логических томов (LVM) - мощный и удобный инструмент, позволяющий гибко управлять дисковым пространством в Linux. Он позволяет абстрагироваться от физических носителей, выстраивая поверх них единую логическую структуру, налету изменять размеры разделов, добавлять или убирать диски. Еще одним распространенным сценарием является перенос группы томов LVM на новую систему, в данном материале мы расскажем, как сделать это правильно и безопасно.

Как мы помним из теории, LVM состоит из трех уровней абстракции:

  • PV, Physical volume, физический том - это физический диск, либо раздел на диске, если мы не можем использовать его целиком.
  • VG, Volume group, группа томов - группа томов объединяет в себя физические тома и является следующим уровнем абстракции, представляя собой единое пространство хранения, которое может быть размечено на логические разделы. Эквивалентен обычному диску в классической системе.
  • LV, Logical volume, логический том - логический раздел в группе томов, аналогичен обычном разделу, представляет из себя блочное устройство и может содержать файловую систему.

Система и пользователь работают с самым верхним - логическим томом, ниже лежит группа томов, которая объединяет в себя физические носители. Если у нас возникает необходимость переместить структуру LVM в другую систему, то сделать это мы можем только с группой томов (VG, Volume group). Это логично, так как физический том не является самостоятельной единицей хранения данных в LVM, а логический том может располагаться на разных физических дисках.

В первую очередь следует выяснить какие физические диски входят в интересующую нас группу томов, это можно сделать командой:

pvscan

Данная команда покажет все физические тома - PV и группы томов - VG, в которые они входят.

LVM-VG-move-001.pngВ нашем случае есть две группы томов: ubuntu-vg в который входит раздел sda3 и test-vg включающий в себя диски sdb и sdc. Обратите внимание, если группа томов включает в себя разделы, то перенести ее на другую систему мы не сможем, либо придется переместить туда с физическим диском и остальные разделы. Но такая структура - явление достаточно редкое и обычно используется при установке системы для корневого раздела, который обычно никуда переносить не нужно.

В данном примере мы будем переносить группу томов test-vg и здесь сразу встает вопрос - как правильно отключить ее от системы? Для этого, прежде всего нужно выяснить какие службы используют логические тома, расположенные на этой группе томов. Это можно узнать при помощи команды:

lsof +D /точка_монирования_LV

В показанном ниже примере из реально работающей системы логический том смонтирован в /video и его используют службы сервера видеонаблюдения Xeoma и Яндекс.Диск.

LVM-VG-move-002.pngЕсли группа томов содержит несколько LV, то выполняем данную команду для каждой точки монтирования.

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

systemctl stop my_service
systemctl disable my_service

где my_service - имя интересующей службы.

Остановив службы можно попробовать отмонтировать логические тома, для этого выполните:

umount /точка_монирования_LV

Если операция не удалась, то повторно запускаем lsof и смотрим кто еще использует данный логический том. Не забудьте также удалить или закомментировать записи для монтирования томов в /etc/fstab, в противном случае система не сможет загрузиться после переноса группы томов.

После того как вы отмонтировали все логические тома деактивируем группу томов:

vgchange -a n test-vg

где vg-test - имя переносимой группы томов. После чего группу томов можно экспортировать:

vgexport test-vg

Теперь систему можно выключить и физически перенести относящиеся к группе томов физические диски в новую систему.

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

pvscan

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

LVM-VG-move-003.pngИмпортируем группу томов:

vgimport test-vg

И активируем ее:

vgchange -a y test-vg

Затем попробуем смонтировать в нужное расположение (указанная директория должна существовать):

mount /dev/test-vg/testvolume /test

где test-vg - имя группы томов (VG), testvolume - имя логического тома (LV), а /test - точка монтирования. Если все прошло успешно, то можно вносить запись для постоянного монтирования раздела в /etc/fstab и настраивать нужные службы. Перенос группы томов можно считать успешной.

Как видим, LVM - это просто и удобно. Вы можете не только гибко управлять своими устройствами хранения в рамках локальной системы, но и быстро переносить их между системами с сохранением данных и их структуры.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал



Loading Comments