LVM-part1-000.pngУправление дисковым пространством является наверное самым главным аспектом в любой IT инфраструктуре, ведь самое главное — это сохранность данных и наиболее эффективное их использование.   Современные системы хранения предъявляют повышенные требования к гибкости управления дисковым пространством и классических дисковых устройств с размещенными на них разделами становится недостаточно. Это привело к созданию многих высокоуровневых инструментов, одним из которых является Менеджер логических томов (Logical volume management) — LVM в Linux. Это простой и мощный инструмент, позволяющий управлять пространством хранения абстрагировавшись от физических устройств и в данной статье мы начнем знакомство с ним.

LVM (Logical Volume Manager) – дисковая подсистема операционных систем Linux, позволяющая использовать разные области физического жесткого диска или разных жестких дисков как один логический том. LVM встроена в ядро Linux и реализуется на базе device mapper.

Главные преимущества LVM – высокий уровень абстракции от физических дисков, гибкость и масштабируемость. Вы можете на лету изменять размер логического тома, добавлять (и удалять) новые диски. Для LVM томов поддерживается зеркалирование, снапшоты (persistent snapshot) и striping (расслоение данных между несколькими дисками с целью увеличения производительности). Это очень удобно на серверах, вы можете добавить еще один диск или расширить существующие lvm тома на лету.

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

Особенности  LVM перед обычными разделами жесткого диска.

  • Легкое изменение размера — вы можете расширить или уменьшить lvm раздел без переформатирования диска
  • Легкая расширяемость пространства — вы можете увеличить доступное дисковое пространство просто добавляя новые физические диски в общий пул памяти LVM,.
  • Читаемые имена — вы можете давать любые имена вашим логическим разделам, так чтобы они соответствовали назначению раздела и легко запоминались.
  • Резервное копирование и зеркалирование данных — возможность записи на несколько дисков одновременно позволяет увеличить производительность работы системы, а также есть возможность настроить зеркалирование данных и резервное копирование разделов для увеличения безопасности.

Прежде всего нужно разобраться с уровнями дисковых абстракций LVM.

  • Physical Volume (PV) – физический уровень. Физические диски инициализируются для использования в LVM, но может быть и  раздел на диске, если мы не можем использовать его целиком.
  • Volume Group (VG) – уровень группы томов. Инициализированные диски объединяются в логические группы с именем. Группа томов объединяет в себя физические тома и является следующим уровнем абстракции, представляя собой единое пространство хранения, которое может быть размечено на логические разделы. Эквивалентен обычному диску в классической системе.
  • Logical Volume (LV) — логический раздел в группе томов, аналогичен обычном разделу, представляет из себя блочное устройство и может содержать файловую систему.

архитектура и уровни абстрации LVM в Linux

А по научному )))

Экстенты и способы их отображения

Единицей организации дискового пространства в LVM является экстент — некоторая минимальная область данных, которая может быть организована в составе логического тома. Выделить объем менее одного экстента LVM не может. Размер экстента определяется группой томов и зависит от ее объема, минимальный размер экстента 4 МБ, впоследствии это значение остается постоянным для группы томов на всем протяжении ее существования.

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

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

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

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

LVM-part1-004.pngКазалось бы, все понятно, но есть одна особенность. Давайте еще раз посмотрим на схему выше. У нас есть условный логический том содержащий 8 экстентов и два физических, по четыре экстента в каждом. При линейном отображении экстенты распределены между физическими томами последовательно и при заполнении логического тома на 75% мы получим полностью заполненный первый физический том и наполовину заполненный второй.

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

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

Но есть одна серьезная проблема и связана она с SSD, во-первых, твердотельные диски не следует заполнять на 100%, так как это приводит к ухудшению работы сборщика мусора и деградации производительности. Во-вторых, при использовании в составе группы томов нескольких SSD мы получим неравномерную нагрузку на диски и, как следствие, повышенный износ некоторых из них.

Решить эту проблему можно при чередующемся способе отображения (stripe, «полосатое»). В этом случае логические экстенты отображаются между физическими томами в порядке чередования, количество полос чередования определяет количество физических томов, которые будут для этого использоваться. По понятным причинам количество полос не может превышать количество физических томов.

LVM-part1-005.pngЧередующееся отображение обеспечивает равномерную нагрузку и заполнение физических дисков, поэтому для твердотельных накопителей следует использовать именно его. Также нетрудно заметить, что такая схема чем-то похожа на RAID 0. Это действительно так и операции чтения-записи можно производить параллельно, достигая более высоких скоростей дисковых операций. По этой причине чередующееся отображение может быть использовано и вместе с HDD в целях повышения производительности тома. Чем больше число полос, тем выше производительность.

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

LVM-part1-006.pngМы расширили существующий логический том с 8 до 16 экстентов. При этом первые 8 экстентов как чередовались между первыми двумя физическими томами, так и продолжили чередоваться. А следующие 8 экстентов стали чередоваться между двумя добавленными физическими томами. Таким образом при заполнении логического тома сначала будут заполнены первые два физических диска, а только затем начнет заполняться вторая пара. Кроме того, если речь идет о твердотельниках, первая пара дополнительно будет испытывать повышенную нагрузку.

Фактически мы получили линейное отображение на две пары физических дисков. Поэтому расширять чередующиеся массивы на твердотельных накопителях не следует. Правильным решением будет создание нового тома с большим числом полос.

LVM-part1-007.pngНесомненным достоинством LVM является то, что при должном опыте и знаниях том можно расширить и с изменением числа полос полностью в онлайн-режиме, т.е. не останавливая работы хранилища.

Установка утилиты lvm2

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

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

Инициализация физических LVM разделов

Сначала определимся с томами, которые будем использовать, допустим это будут /dev/sdb и /dev/sdc (как видно из названий это два разных жестких диска). Инициализировать их для работы LVM можно с помощью команды pvcreate:

* напомним, что в качестве примера нами используются диски sdb и sdc

Чтобы посмотреть действительно ли были созданы физические тома LVM вы можете использовать команду 0:

на выходе вы должны увидеть какие диски участвуют в LVM.

Также можно посмотреть физические LVM разделы с более подробными атрибутами, такими как размер, общий размер, физический размер, свободное место и т д:

Создание группы разделов LVM

После того как физические разделы инициализированы, можно создать из них группу томов (Volume Group, VG):

* где vg01 — произвольное имя создаваемой группы; /dev/sdb, /dev/sdc — физические диски.

Просмотреть информацию о созданных группах можно командой:

получится что-то подобное:

VG Name vg01
System ID
Format                lvm2
Metadata Areas        2
Metadata Sequence No  1
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                0
Open LV               0
Max PV                0
Cur PV                2
Act PV                2
VG Size               1,99 GiB
PE Size               4,00 MiB
Total PE              510
Alloc PE / Size       0 / 0
Free  PE / Size       510 / 1,99 GiB
VG UUID               b0FAUz-wlXt-Hzqz-Sxs4-oEgZ-aquZ-jLzfKz

* где:

  • VG Name — имя группы.
  • Format — версия подсистемы, используемая для создания группы.
  • Metadata Areas — область размещения метаданных. Увеличивается на единицу с созданием каждой группы.
  • VG Access — уровень доступа к группе томов.
  • VG Size — суммарный объем всех дисков, которые входят в группу.
  • PE Size — размер физического фрагмента (экстента).
  • Total PE — количество физических экстентов.
  • Alloc PE / Size — распределенное пространство: колическтво экстентов / объем.
  • Free  PE / Size — свободное пространство: колическтво экстентов / объем.
  • VG UUID — идентификатор группы.

Создание логических томов LVM

Теперь все готово, чтобы создать логические LVM разделы.

пример:

* создание тома на 1 Гб из группы vg01.

 

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

B — байты;
K — килобайты;
M — мегабайты;
G — гигабайты;
T — терабайты.

 

* создание тома с именем lv01 на 50 Мб из группы vg01.

* при создании тома используется 40% от дискового пространства группы vg01.

* использовать все свободное пространство группы vg01 при создании логического тома.
* также можно использовать %PVS — процент места от физического тома (PV); %ORIGIN — размер оригинального тома (применяется для снапшотов).

Посмотрим информацию о созданном томе:


lvdisplay
-----------------------------------------------------------------------
  --- Logical volume ---
LV Path                /dev/vg01/lv01
LV Name                lv01
VG Name                vg01
LV UUID                4nQ2rp-7AcZ-ePEQ-AdUr-qcR7-i4rq-vDISfD
LV Write Access        read/write
LV Creation host, time vln.dmosk.local, 2019-03-18 20:01:14 +0300
LV Status              available
# open                 0
LV Size                52,00 MiB
Current LE             13
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     8192
Block device           253:2

* где:

  • LV Path — путь к устройству логического тома.
  • VG Name — имя группы томов.
  • Format – версия подсистемы lvm, которая используется для создание группы
  • LV UUID — идентификатор
  • LV Write Access — уровень доступа
  • LV Creation host, time — имя компьютера и дата, когда был создан том.
  • LV Size — объем дискового пространства, доступный для использования.
  • Current LE — количество логических экстентов.
  • VG Access – уровень доступа к группе логических томов
  • VG Size – общий объем дисков, которые входят в группу
  • PE Size — размер физического фрагмента
  • Alloc PE / Size – распределенное пространство(количество и объем фрагментов)
  • VG UUID – идентификатор группы

Теперь, когда раздел создан, мы можем работать с ним как с обычным разделом. Например, отформатируем его в файловую систему ext4, а затем примонтируем в /mnt:

Как видите, монтирование LVM в Linux ничем не отличается от монтирования обычных разделов.

Вообще говоря, LVM разделы могут быть трех типов:

  • Линейные разделы (Linear Volume)
  • Полосные разделы (Striped Volume)
  • Зеркалированные разделы (Mirrored Volume)

Линейные разделы — это обычные LVM тома, они могут быть созданы как из одного, так и из нескольких физических дисков. Например, если у вас есть два диска по 2 гигабайта, то вы можете их объединить и в результате получите один раздел LVM Linux, размером 4 гигабайта. По умолчанию используются именно линейные LVM разделы.

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

Для этого нужно задать количество полос записи с помощью опции -i, а также размер полосы опцией -l. Количество полос не должно превышать количества физических дисков. Например:

Зеркалированный том позволяет записывать данные одновременно на два устройства. Когда данные пишутся на один диск, они сразу же копируются на другой. Это позволяет защититься от сбоев одного из дисков. Если один из дисков испортится, то разделы LVM просто станут линейными и все данные по-прежнему будут доступны. Для создания такого раздела LVM Linux можно использовать команду:

Создание файловой системы и монтирование тома

Чтобы начать использовать созданный том, необходимо его отформатировать, создав файловую систему и примонтировать раздел в каталог.

Файловая система

Процесс создания файловой системы на томах LVM ничем не отличается от работы с любыми другими разделами.

Например, для создания файловой системы ext4 вводим:

vg01 — наша группа томов; lv01 — логический том.

Для создания, например, файловой системы xfs вводим:

Монтирование

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

Для разового монтирования пользуемся командой:

* где /dev/vg01/lv01 — созданный нами логический том, /mnt — раздел, в который мы хотим примонтировать раздел.

Для постоянного монтирования раздела добавляем строку в fstab:

* в данном примере мы монтируем при загрузке системы том /dev/vg01/lv01 в каталог /mnt; используется файловая система ext4.

Проверяем настройку fstab, смонтировав раздел:

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

Просмотр информации

Разберемся, как получить информацию о дисковых накопителях в системе.

1. Для общего представления дисков, разделов и томов вводим:

Мы получим что-то на подобие:


NAME             MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                8:0    0   30G  0 disk
sda1             8:1    0    1G  0 part /boot
sda2             8:2    0   29G  0 part
sys-root     253:0    0   27G  0 lvm  /
sys-swap     253:1    0    2G  0 lvm  [SWAP]
sdb                8:16   0    1G  0 disk
vg01-lv01-real 253:3    0    1G  0 lvm
vg01-lv01    253:2    0    1G  0 lvm  /mnt
vg01-sn01    253:5    0    1G  0 lvm
sdc                8:32   0    1G  0 disk
vg01-lv01-real 253:3    0    1G  0 lvm
vg01-lv01    253:2    0    1G  0 lvm  /mnt
vg01-sn01    253:5    0    1G  0 lvm
vg01-sn01-cow  253:4    0  500M  0 lvm
vg01-sn01    253:5    0    1G  0 lvm
sdd                8:48   0    1G  0 disk

* как видим, команда отображает корневое блочное устройство, какие разделы из него сделаны и в какие логические тома организованы из некоторых из разделов.

Получить информацию о проинициализированных для LVM дисков:

Подробно:

Посмотреть информацию о группах LVM.

Подробно:

как видите команды похожи

Посмотреть информацию о логических томах можно также двумя способами — краткая информация:

* команда покажет все логические разделы.

Для более подробной информации о логических томах вводим:

Для поиска всех устройств, имеющих отношение к LVM, вводим:

Увеличение томов

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

1. Расширение физического тома

Расширение физического раздела можно сделать за счет добавление нового диска или увеличение дискового пространства имеющегося (например, если диск виртуальный).

а) Если добавляем еще один диск.

Инициализируем новый диск:

* в данном примере мы инициализировали диск sdd.

Проверяем объем физического тома:

Если увеличиваем дисковое пространство имеющегося диска.

Увеличиваем размер физического диска командой:

* где /dev/sda — диск, который был увеличен.

Проверяем объем физического тома:

Добавление нового диска к группе томов

Независимо от способа увеличения физического тома, расширяем группу томов командой:

* данная команда расширит группу vg01 за счет добавленого или расширенного диска sdd.

Результат можно увидеть командой:

Увеличение логического раздела

Выполняется одной командой.

а) все свободное пространство:

* данной командой мы выделяем все свободное пространство группы томов vg01 разделу lv01.

б) определенный объем:

* данной командой мы добавляем 30 Гб от группы томов vg01 разделу lv01.

в) до нужного объема:

* данной командой мы доводим наш раздел до объема в 500 Гб.

Результат можно увидеть командо

Обратить внимание нужно на опцию LV Size:

...
LV Status available
# open 1
LV Size <2,99 GiB
Current LE 765
...

Увеличение размера файловой системы

Чтобы сама система увидела больший объем дискового пространства, необходимо увеличить размер файловой системы.

Посмотреть используемую файловую систему:

Для каждой файловой системы существуют свои инструменты.

ext2/ext3/ext4:

XFS:

Reiserfs:

Уменьшение томов

Размер некоторый файловых систем, например, XFS уменьшить нельзя. Из положения можно выйти, создав новый уменьшенный том с переносом на него данных и последующим удалением.

LVM также позволяет уменьшить размер тома. Для этого необходимо выполнить его отмонтирование, поэтому для уменьшения системного раздела безопаснее всего загрузиться с Linux LiveCD. Далее выполняем инструкцию ниже.

Отмонтируем раздел, который нужно уменьшить:

Выполняем проверку диска:

Уменьшаем размер файловой системы:

Уменьшаем размер тома:

На предупреждение системы отвечаем y:

Готово.

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

Удаление томов

Если необходимо полностью разобрать LVM тома, выполняем следующие действия.

Отмонтируем разделы:

* где /mnt — точка монтирования для раздела.

Удаляем соответствующую запись из fstab (в противном случае наша система может не загрузиться после перезагрузки):

редактируем vi /etc/fstab

* в данном примере мы не удалили, а закомментировали строку монтирования диска.

Смотрим информацию о логичеких томах:

Теперь удаляем логический том:

На вопрос системы, действительно ли мы хотим удалить логических том, отвечаем да (y):

* если система вернет ошибку Logical volume contains a filesystem in use, необходимо убедиться, что мы отмонтировали том.

Смотрим информацию о группах томов:

Удаляем группу томов:

Убираем пометку с дисков на использование их для LVM:

* в данном примере мы деинициализируем диски /dev/sdb, /dev/sdc, /dev/sdd.

В итоге мы получим:

Labels on physical volume "/dev/sdb" successfully wiped.
Labels on physical volume "/dev/sdc" successfully wiped.
Labels on physical volume "/dev/sdd" successfully wiped.

Создание зеркала

С помощью LVM мы может создать зеркальный том — данные, которые мы будем на нем сохранять, будут отправляться на 2 диска. Таким образом, если один из дисков выходит из строя, мы не потеряем свои данные.

Зеркалирование томов выполняется из группы, где есть, минимум, 2 диска.

Сначала инициализируем диски:

* в данном примере sdd и sde.

Создаем группу:

Создаем зеркальный том:

* мы создали том lv-mir на 200 Мб из группы vg02.

В итоге:

… мы увидим что-то на подобие:
sdd                       8:16   0    1G  0 disk
vg02-lv--mir_rmeta_0  253:2    0    4M  0 lvm
vg02-lv--mir        253:6    0  200M  0 lvm
vg02-lv--mir_rimage_0 253:3    0  200M  0 lvm
vg02-lv--mir        253:6    0  200M  0 lvm
sde                       8:32   0    1G  0 disk
vg02-lv--mir_rmeta_1  253:4    0    4M  0 lvm
vg02-lv--mir        253:6    0  200M  0 lvm
vg02-lv--mir_rimage_1 253:5    0  200M  0 lvm
vg02-lv--mir        253:6    0  200M  0 lvm

* как видим, на двух дисках у нас появились разделы по 200 Мб.

Работа со снапшотами

Снимки диска позволят нам откатить состояние на определенный момент. Это может послужить быстрым вариантом резервного копирования. Однако нужно понимать, что данные хранятся на одном и том же физическом носителе, а значит, данный способ не является полноценным резервным копированием.

Создание снапшотов для тома, где уже используется файловая система XFS, имеет некоторые нюансы, поэтому разберем разные примеры.

Создание для не XFS:

* данная команда помечает, что 500 Мб дискового пространства устройства /dev/vg01/lv01 (тома lv01 группы vg01) будет использоваться для snapshot (опция -s).

Создание для XFS

* команда xfs_freeze замораживает операции в файловой системе XFS.

Посмотрим список логических томов:

Получим что-то на подобие:

LV   VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
lv01 vg01 owi-aos---   1,00g
sn01 vg01 swi-a-s--- 500,00m      lv01   2,07

* поле Origin показывает, к какому оригинальному логическому тому относится LV, например, в данной ситуации наш раздел для снапшотов относится к lv01.

Также можно посмотреть изменения в томах командой:

Мы должны увидеть что-то подобное:

sdc 8:32 0 1G 0 disk
vg01-lv01-real 253:3 0 1G 0 lvm
vg01-lv01 253:2 0 1G 0 lvm /mnt
vg01-sn01 253:5 0 1G 0 lvm
vg01-sn01-cow 253:4 0 500M 0 lvm
vg01-sn01 253:5 0 1G 0 lvm

С этого момента все изменения пишутся в vg01-sn01-cow, а vg01-lv01-real фиксируется только для чтения и мы может откатиться к данному состоянию диска в любой момент.

Содержимое снапшота можно смонтировать и посмотреть, как обычный раздел:

Монтирование не XFS:

Монтирование XFS:

Для выполнения отката до снапшота, выполняем команду:

Импорт диска из другой системы

Если мы перенесли LVM-диск с другого компьютера или виртуальной машины и хотим подключить его без потери данных, то нужно импортировать том.

Если есть возможность, сначала нужно на старом компьютере отмонтировать том и сделать его экспорт:

* предположим, что диск примонтирован в /mnt.

Деактивируем группу томов:

* в данном примере наша группа называется vg_test.

Делаем экспорт:

После переносим диск на новый компьютер.

На новой системе сканируем группы LVM следующей командой

… система отобразит все LVM-тома (подключенные и нет), например:

PV /dev/sdb    VG vg_test         lvm2 [1020,00 MiB / 0    free]
PV /dev/sda5   VG ubuntu-vg       lvm2 [11,52 GiB / 0    free]
Total: 2 [12,52 GiB] / in use: 2 [12,52 GiB] / in no VG: 0 [0   ]

* в данном примере найдено два диска с томами LVM — /dev/sdb (группа vg_test) и /dev/sda5 (группа ubuntu-vg).

В моем примере новый диск с группой vg_test — будум импортировать его. Вводим команду:

Возможны два варианта ответа:

1) если мы экспортировали том

2) если не экспортировали:

Так или иначе, группа томов должна появиться в нашей системе — проверяем командой:

… мы должны увидеть что-то на подобие:
  --- Volume group ---
VG Name               vg_test
System ID
Format                lvm2
...

Активируем его:

Готово. Для монтирования раздела, смотрим его командой:

… и монтируем в нужный каталог, например:

* в данном примере мы примонтируем раздел lvol0 в группе томов vg_test к каталогу /mnt.

Работа с LVM из под Windows

По умолчанию, система Windows не умеет работать с томами LVM. Для реализации такой возможности, необходимо установить утилиту Virtual Volumes.

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

Возможные ошибки

Рассмотрим ошибки, с которыми можно столкнуться при работе с LVM.

Device /dev/sdX excluded by a filter

Данную ошибку можно встретить при попытке инициализировать диск командой pvcreate.

Причина: либо диск не полностью чист, либо раздел не имеет нужный тип.

Решение: в зависимости от типа проблемы, рассмотрим 2 варианта.

а) если добавляем целый диск.

Удаляем все метаданные с диска командой

* где вместо X (или sdX) подсталвляем имя диска.

б) если добавляем раздел.

Открываем диск с помощью команды fdisk:

* где вместо X (или sdX) подсталвляем имя диска.

Смотрим список созданных на диске разделов:

Задаем тип раздела:

Выбираем номер раздела (например, раздел номер 3):

Командой L можно посмотреть список всех типов, но нас интересует конкретный — LVM (8e):

Сохраняем настройки:

 

Создание зеркальных томов LVM

LVM позволяет создать зеркальные тома для повышения отказоустойчивости хранения данных. В LVM зеркале данные одновременно хранятся на двух (или более) физических дисках (подобие RAID-1). Процедура создания зеркального тома в LVM.

  1. Инициализация дисков: pvcreate /dev/sd{b,c}
  2. Создаем LVM группу: vgcreate mirror1 /dev/sd{b,c}
  3. Создадим зеркальный LVM том: lvcreate -L 5g -m1 -n lvMirr1 VGmirror1

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

 

LVM и RAID

Теперь о том, чем LVM не является. Как следует из названия, LVM — это менеджер логических томов, т.е. разметки верхнего уровня, максимально абстрагированной от физических устройств. RAID — это избыточный массив независимых дисков, задача которого — обеспечить избыточность и тем самым обеспечить защиту от отказа одного или нескольких физических дисков. О логической разметке RAID не имеет никакого представления, работая исключительно с физическими устройствами или разделами на них.

Можно ли с помощью LVM реализовать некоторые функции RAID? Можно, но в этом случае либо будут использоваться собственные решения, серьезно уступающие программному RAID Linux (mdraid), либо вызовы будут передаваться модулю md, т.е. тому же самому mdraid.

При этом достаточно сильно пострадает простота и прозрачность управления массивами, что может поставить вас в затруднительное (если не хуже) положение в нештатных ситуациях, особенно если вы не обладаете достаточным опытом работы с LVM.

Поэтому, в строгом соответствии с философией UNIX, мы считаем, что каждый должен выполнять свою задачу и делать это хорошо. Поэтому для создания избыточных дисковых массивов мы будем продолжать использовать программный RAID, а предоставляемые им md-устройства использовать в качестве физических томов LVM.

LVM-part1-003.png

Что делать, если данные потеряны?

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

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

Сейчас наиболее эффективным решением для получения важных данных с массива RAID является RS RAID Retrieve.

Встроенный конструктор RAID воссоздаст ваш массив RAID или том LVM, и вы сможете переместить свою информацию в безопасное место.

Давайте подробнее рассмотрим, как вы можете получить данные:

Шаг 1. Загрузите и установите RS RAID Retrieve. Запустите приложение после установки. Перед вами откроется встроенный Конструктор RAID». Нажмите «Далее»

Главное окно RAID Constructor

Шаг 2. Выберите способ добавления массива RAID в том LVM для сканирования. RS RAID Retrieve предлагает три варианта выбора:

  • Автоматический режим – позволяет просто указать диски, которые составляли массив или том LVM, и программа автоматически определит их порядок, тип массива и другие параметры;
  • Поиск по производителю – этот параметр следует выбрать, если вы знаете производителя RAID-контроллера. Этот вариант также автоматический и не требует никаких знаний о структуре массива RAID. Наличие информации изготовителя позволяет сократить время создания массива, а следовательно, это быстрее, чем предыдущий вариант;
  • Создание вручную – этот параметр следует использовать, если вы знаете, какой тип RAID вы используете. При этом вы можете указать все параметры, которые вам известны, а те, которые вам не известны, программа автоматически определит.

После выбора соответствующего параметра нажмите «Далее».

Режим добавления RAID-массива для сканирования

Шаг 3. Выберите диски, которые составляют массив RAID или том LVM, и нажмите «Далее». Это запустит процесс обнаружения конфигураций массива. По завершении нажмите «Готово».

Обнаружение процесса настройки массива

Шаг 4. После того, как конструктор создаст том LVM (или массив RAID на основе томов LVM), он будет отображаться как обычный диск. Дважды щелкните по нему левой кнопкой мыши. Перед вами откроется Мастер восстановления файлов. Нажмите «Далее»

Окно мастера восстановления файлов

Шаг 5. RS RAID Retrieve предложит просканировать ваш массив или LVM, чтобы найти файлы для восстановления. У вас будет два варианта: быстрое сканирование и полный анализ массива. Выберите нужный вариант. Затем выберите тип файловой системы, используемый в массиве. Если вы не знаете эту информацию, проверьте все доступные опции, как на скриншоте. Стоит отметить, что RS RAID Retrieve поддерживает все современные файловые системы.

Выберите тип сканирования и файловую систему

Шаг 6. Начнется процесс сканирования. Когда он завершится, вы увидите предварительную структуру файлов и папок. Найдите нужные файлы, щелкните правой кнопкой мыши на них и выберите «Восстановить»

Выберите файлы для восстановления

Шаг 7. Укажите место, где будут сохранены восстановленные файлы. Это может быть жесткий дискZIP-архив или FTP-сервер. Нажмите «Далее»

The place to store recovered files

После нажатия кнопки «Далее» программа начнет процесс восстановления. После его завершения вы найдете выбранные файлы в указанном месте.

В конце концов, когда файлы успешно восстановлены, снова создайте том LVM, а затем скопируйте файлы обратно.

Как вы видите, с помощью RS RAID Retrieve легко вытащить важные данные из сломанной LVM. Кроме того, вам не нужно дополнительное программное или аппаратное обеспечение. Просто подключите накопители к ПК и воспользуйтесь приведенной выше инструкцией. Быстро и легко.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *