Восстановление данных с LVM разделов в ОС Linux

Что такое LVM?
Logical Volume Management (менеджер логических томов) — это стандартная опция управления дисками, которая доступна в каждом дистрибутиве ОС Linux. Она обеспечивает уровень абстракции между вашей ОС и используемыми накопителями. При традиционном управлении, Linux сначала ищет доступные накопители, а затем смотрит, какие разделы доступны на этих устройствах.
С помощью LVM носители или разделы можно объединять в единое пространство. При таком построении операционная система не заметит разницы, а менеджер дисков будет отображать только нужные физические носители или группы томов.
На самом деле, LVM обладает несколькими весомыми плюсами:
- Она может создавать логический том на основе любого количества физических носителей, которые будут представлены в системе как единое пространство.
- Количество входящих носителей и размер самого тома можно изменять прямо в процессе работы.
- Также LVM технология позволяет на лету копировать нужные разделы, или полностью настроить функцию зеркала как в массивах RAID-1.
Как установить LVM в систему?
Если вы планируете первый раз воспользоваться функциями LVM сперва ее нужно установить. Для установки выполните следующую команду: sudo apt install lvm2

А затем введите пароль администратора, далее Yes для подтверждения.

В некоторых версиях Linux, эта опция установлена по умолчанию.
Это легко проверить, введите команду lvm в окне терминала.

Далее можно приступать к управлению дисками.
Как разметить физический диск
У меня есть три пустых не размеченных жестких диска по 320 Гб, без каких-либо разделов.

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

Указываем имя и файловую систему — Далее и еще раз Форматировать для подтверждения.

Далее понадобится пароль от учетной записи администратора.

Диск размечен, повторяем операцию с каждым неразмеченным накопителем.
Также диск можно разметить через терминал с помощью fdisk.
Входим под рутом — sudo —i — вводим пароль.

А затем выполняем следующую команду: fdisk /dev/sdb — где sdb это неразмеченный диск.

Прежде чем продолжить убедитесь, что вы указали нужный диск, так как вся информация будет затерта.
Вводим n — новый раздел, p — основной, 1 — первый раздел, затем жмем два раза Enter.

Теперь нужно подготовить раздел для использования LVM. Пишем t — изменить тип раздела, а затем 8e — присваиваем тип LVM.

Проверяем настройки раздела — p, как видите все прошло успешно, появился размеченный раздел sdb1, записываем изменения — w. Делаем разметку всех неразмеченных накопителей.

Далее, чтобы создать LVM том на только что добавленном разделе, вводим: pvcreate /dev/sdb1.

Повторяем ее для каждого носителя pvcreate /dev/sdс1, pvcreate /dev/sdd1.

Теперь создаем группу разделов
Из подготовленных трех носителей соберем нужный LVM раздел. Поможет нам в этом следующая команда:
vgcreate vg1 /dev/sdb1 dev/sdc1 dev/sdd1
Где vg1 — это название (имя) новой группы. Называть можно как вам удобно, но рекомендуется поставить перед именем vg, чтобы знать в дальнейшем что это именно группа.

Чтобы использовать LVM создаем логически том
Когда диски объединены в группу, для ее использования нужно создавать новый логический раздел. Для этого вводим команду:
lvcreate -L 10G -n lv1 vg1
Где, -L определяет размер, я указал 10 ГБ, команда -n дает имя тому, а ссылка на vg1 указывает, с какого тома получить пространство.

Если на диске есть какие-то данные система предупредит об этом, вводим yes для подтверждения затереть их.
Как отформатировать и смонтировать логический том?
Осталось отформатировать том в управлении дисками и смонтировать его. Жмем по нему и отрываем дополнительные параметры, а затем форматировать, указываем имя и файловую систему — Далее — и еще раз Форматировать.

Вводим пароль root, а затем кликаем по клавише монтирования. Теперь новый раздел можно использовать.

Если нужно отформатировать его через терминал введите команду:
mkfs -t ext4 /dev/vg1/lv1
Указываем файловую систему Ext4, имя группы и имя тома.

Для монтирования введите: mkdir /mnt/lv1, а затем — mount -t ext4 /dev/vg1/lv1 /mnt/lv1.

Том смонтирован.
Как изменить размер?
Одним из преимуществ логических томов является возможность на лету добавить новый жесткий диск и расширить группу томов. А если в группе есть неиспользуемый жесткий диск, вы можете удалить из нее этот накопитель.
Существует три основных инструмента для увеличения или уменьшения логических, физических и группы томов.
- Resize — команда поможет сжать или расширить физические и логические тома, но не подходит для работы с группами;
- Extend — может увеличить логические разделы или группы томов;
- Reduce — может сокращать логические тома или группы томов.

Как добавить новый жесткий диск в группу
Первое что нужно сделать перед добавлением в группу — это разметить новый жесткий диск. Как выполнить эту операцию, мы рассказывали ранее в статье.
Далее выполняем следующую команду: vgextend vg1 /dev/sde1

Где vg1 — название группы, а sde1 — новый уже размеченный накопитель.
Как вывести подробную информацию об LVM
Для отображения детальной информации о составе LVM группы, выполните команду pvdisplay.

Здесь указан путь к физическому диску, имя виртуальной группы в которую он входит, информация о свободном и используемом пространстве ID диска и другое.
Как удалить логический том
Для удаления логического тома, сначала нужно убедиться, что он отключен (размонтирован), затем нужно выполнить команду lvremove, после чего раздел будет удален.
С помощью этой команды можно удалить группу томов, но перед этим необходимо размонтировать логический раздел, введите команду: umount /mnt/lv1

Далее для удаления, вводим команду: lvremove /dev/vg1/lv1, а также Yes для подтверждения операции.

После успешного удаления вы увидите следующее сообщение об успешном удалении
Теперь мы можем удалить нашу группу, для этого вводим команду: sudo vgremove vg1

Теперь осталось удалить все носители, которые составляли группу, для этого вводим команду: sudo pvremove /dev/sdb1 /dev/sdc1 /dev/sdd1

Все метки на физическом носителе успешно удалены, они приняли первоначальны вид.
Как восстановить удаленную информацию с логического тома LVM
Если вы вдруг случайно удалили важную информацию с логического тома LVM, вернуть ее вам поможет программа Hetman Partition Recovery.
Partition Recovery™ 3.7Инструмент восстанавливает файлы с любых устройств, независимо от причины потери данных.Скачать
Утилита поддерживает LVM разделы, и обеспечивает восстановление данных с них. Она поддерживает большинство самых распространенных файловых систем под ОС Windows, Linux, Unix, а также MacOS. Программа будет игнорировать ошибки логической структуры накопителя, просканирует жесткий диск и вернет нужны файлы.
На данный момент нет дистрибутива программы Hetman Partition Recovery под ОС Linux. Запустить ее можно с помощью виртуальной машины на базе Windows, установив ее второй системой на ваш ПК, или подсоединить диски к другому компьютеру.
Запускаем программу, после инициализации она без труда определила логический том, и отобразила всю известную о нем информацию.

Сперва выполните Быстрое сканирование, жмем по диску правой кнопкой мыши — Открыть — Быстрое сканирование, по завершению процесса программа отобразит найденную информацию в правой части окна. Удаленные файлы помечены красным крестиком.

Если быстрое сканирование не нашло нужной информации выполните Полный анализ.

Далее отметьте файлы, которые нужно вернуть и нажмите Восстановить, выберите место куда их сохранить и еще раз Восстановить.

По завершению процесса все файлы будут лежать в указанной папке.
Заключение
В этой статье мы попытались рассказать, как пользоваться встроенной функцией Logical Volume Management под ОС Linux. Прошли все важные этапы: создание и настройка LVM раздела, добавление и монтирование новых жестких дисков, уменьшение и полное удаление. Функция LVM разрабатывалась как серверное решение. Но теперь вы сможете в полном объеме использовать ее даже на домашнем ПК.
Полную версию статьи со всеми дополнительными видео уроками смотрите в источнике.