Linux lvm восстановление данных

Обновлено: 28.06.2024

В данном руководстве мы рассмотрим способ создания в ОС Linux программного LVM RAID. А также представим простое решение, позволяющее вернуть утраченную информации с LV RAID 5 после случайного удаления или непредвиденной неисправности накопителей.

«LVM» (означает Менеджер логических томов) это функция ОС Linux, благодаря которой можно объединить несколько разделов одного или нескольких накопителей в единый непрерывный логический раздел (том). А «LVM RAID» – это отдельный метод сбора «LV» раздела, который объединяет несколько физических носителей, но они получают дополнительную защиту данных как «RAID» массив.

Драйвера DM будут использоваться для управления физическими устройствами LVM, а драйвера MD - для размещения информации на носителях. LVM управляет скрытыми логическими томами (DM), которые находятся между видимыми разделами (LV) и носителями.

В нашем случае, мы будем создавать «RAID 5». Чем он отличается от других типов массивов, вы узнаете посмотрев этот видеоурок.

В терминале Linux вводим команду: lvcreate, и создаем LV RAID.

Если в системе не установлен компонент LVM, то прописываем команду: sudo apt install lvm2.

Все команды нужно выполнять от имени «root», поэтому вводим: sudo -i, чтобы не вводить пароль «root» постоянно.

Теперь разметка дисков через стандартную дисковую утилиту Linux, выбираем тип ФС и форматируем.

Или выполняем через терминал: fdisk /dev/sdb.

  • n – создает новый раздел,
  • p – устанавливает для раздела значение «основной»,
  • 1 – присваивает номер.

Дважды жмем «Ввод», соглашаясь со значением первого и последнего секторов.

Далее, нужно задать настройки LVM. Каждый в своей строке применяем атрибуты:

  • t – запускает процесс по изменению типа нового раздела,
  • 8e – устанавливает значение LVM.

Убедимся, что новый раздел имеет нужный тип. Наберите в командной строке атрибут «p». Система обработает запрос и представит в табличной форме итоговые сведения. Искомое устройство будет маркировано значением «sdb1» с типом системы «Linux LVM». Потом записываем установленные изменения, используя атрибут «w». Теперь повторите для каждого диска, который будет входить в LVM.

Далее вводим: pvcreate /dev/sdb1.

Повторяем команду для каждого диска, заменив «sdb1» на другое имя, в нашем случае «sdc1», «sdd1», «sde1», «sdf1».

Теперь собираем в единую группу: vgcreate и перечисляем все входящие носители:

«vgcreate vg1 /dev/sdb1 dev/sdc1 dev/sdd1 dev/sde1 dev/sdf1». Где «vg1» - имя группы.

Вводим команду: «lvcreate -n lvr5 –type raid5 -L 10G -i 4 vg1»

Где атрибуты означают:

  • -n – присваивает тому имя.
  • –type raid5 – задает тип массива.
  • -L – устанавливает граничный размер для логического тома (у нас его величина равна 10 ГБ).
  • -i – указывает количество устройств, которые будут задействованы в хранении пользовательских данных. Сюда не входит дополнительное устройство для хранения блоков четности. Число должно быть 2 или больше, так как минимальное количество дисков для данного типа – три.
  • vg1 – объясняет системе, откуда ей следует взять нужное количество дискового пространства (указывается конкретный том или целая группа).

После выполнения новый массив RAID 5 на виртуальной группе LVM будет создан. Теперь нужно отформатировать массив смонтировать. Форматируем RAID 5 в «ext4»: «mkfs -t ext4 /dev/vg1/lvr5»

Где, файловая система «ext4», название группы «vg1», имя тома «lvr5».

Монтируем RAID 5 массив в систему, вводим команду: «mkdir /mnt/lvr5», и вторую: «mount -t ext4 /dev/vg1/lvr5 /mnt/lvr5».

Теперь массив смонтирован и готов к работе.

Выполняем команду: «lvs -a -o name,copy_percent,devices vg1»

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

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

Производители NAS, к своим устройствам, предоставляют собственное ПО для восстановления данных с их массива. Но так как мы использовали программный RAID, то нам понадобится По от сторонних разработчиков. Главные критерии выбора оного: поддержка нужных файловых систем, низкоуровневый чтение диска, а также наличие автоматического и ручного RAID конструктора. Программа должна пересобрать массив заново и позволить смонтировать его в систему, а далее остается только провести анализ и сохранить все «живые данные».

LVM является одной из множества технологий Linux, которая позволяет достичь большой гибкости в управлении дисковым пространством. Эта функция, объединённая с RAID, хорошо защищает данные от возможной потери, обеспечивает простой способ хранения, управления и совместного использования пользовательских файлов в хранилище.

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

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

Что такое LVM?

Logical Volume Management (менеджер логических томов) – это стандартная опция управления дисками, которая доступна в каждом дистрибутиве ОС Linux . Она обеспечивает уровень абстракции между вашей ОС и используемыми накопителями. При традиционном управлении, Linux сначала ищет доступные накопители, а затем смотрит, какие разделы доступны на этих устройствах.

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

На самом деле, LVM обладает несколькими весомыми плюсами:

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

Как установить LVM в систему?

Если вы планируете первый раз воспользоваться функциями LVM сперва ее нужно установить. Для установки выполните следующую команду: sudo apt install lvm2

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

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

Это легко проверить, введите команду lvm в окне терминала.

Далее можно приступать к управлению дисками.

Как разметить физический диск

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

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

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

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

Диск размечен, повторяем операцию с каждым неразмеченным накопителем.

Также диск можно разметить через терминал с помощью fdisk .

А затем выполняем следующую команду: 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 .

Утилита поддерживает LVM разделы, и обеспечивает восстановление данных с них. Она поддерживает большинство самых распространенных файловых систем под ОС Windows , Linux , Unix , а также MacOS . Программа будет игнорировать ошибки логической структуры накопителя, просканирует жесткий диск и вернет нужны файлы.

На данный момент нет дистрибутива программы Hetman Partition Recovery под ОС Linux . Запустить ее можно с помощью виртуальной машины на базе Windows , установив ее второй системой на ваш ПК, или подсоединить диски к другому компьютеру.

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

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

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

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

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

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

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


А если бы не было ЛВМ, ты просто купил бы новый диск и восстановил все из бэкапа.

Купи диск и восстанови все из бэкапа. LVM — не имеет избыточности для таких ситуаций, используй RAID>0


Но неужели нельзя хоть что-то прочитать из живого диска и присутствующего на нём LVM тома?

daemonpnz ★★★★★ ( 05.08.13 19:04:16 )
Последнее исправление: daemonpnz 05.08.13 19:04:26 (всего исправлений: 1)


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

В этом нет необходимости. Больше времени потратишь.

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

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

А если такая задача есть?


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


после vgchange -a y --partial nas ФС не монтируется и даже reiserfsck сделать не получается, ибо начинается ругань вида



Везде пишет read error


Мои соболезнования. Надеюсь бекапы были. Как говориться есть два типа админов.


Ошибок нет, реалоцированных секторов на живом диске нет. Мёртвый диск не видится вообще.


Мне не доводилось восстанавливать удалённые файлы, только удалённые ФС и тома.

Поэтому могу помочь лишь общими советами, косвенно относящимися к проблеме.

Насколько я понимаю, тебе потребуется как минимум два диска. Один чтобы склеить его с оставшимся диском ровно тем же способом что и было. На второй будешь данные восстанавливать, если что-то ещё можно восстановить.

Пока есть возможность, собери максимум информации.

fdisk -l -u -c <физический диск>

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

Вот после этого нужно будет как-то восстанавливать файлы

router ★★★★★ ( 05.08.13 19:37:23 )
Последнее исправление: router 05.08.13 19:37:46 (всего исправлений: 1)


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

В данном руководстве мы рассмотрим способ создания в ОС Linux программного LVM RAID. А также представим простое решение, позволяющее вернуть утраченную информации с LVM RAID5 после случайного удаления или непредвиденной неисправности накопителей.

how-to-create-software-raid-5-with-lvm.jpg

Введение

LVM RAID – это способ создания логического тома (LV), который использует несколько физических дисков для повышения производительности или устойчивости массива к сбоям. В LVM физические диски (PV) состоят в одной группе томов (VG).

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

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

Структура массива LVM RAID использует драйверы Device Mapper (DM) и Multiple Device (MD) из ядра Linux.

DM используется для создания и управления видимыми устройствами LVM, а MD используется для размещения данных на физических устройствах.

LVM создает скрытые логические тома (устройства DM), расположенные между видимыми разделами (LV) и физическими устройствами.

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

Как разметить диски и создать виртуальную группу для LV RAID

Чтобы создать LV RAID, используйте команду lvcreate.

01-linux.jpg

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

Устанавливаем менеджер, задействуя инструмент командной строки, ответственный за взаимодействие с системой управления пакетами. Введите в строке команду: sudo apt install lvm2.

02-linux.jpg

Выполняем все действия от имени суперпользователя. Для этого вводим команду sudo -i. Она снимет требование на постоянный ввод пароля.

03-linux.jpg

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

04-linux.jpg

В терминале используйте специальную системную команду fdisk /dev/sdb.

05-linux.jpg

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

Укажите параметры форматирования, набрав пошагово следующие атрибуты:

  • n – создает новый раздел,
  • p – устанавливает для раздела значение «основной»,
  • 1 – присваивает номер.

Потом дважды нажмите на клавишу «Ввод» на клавиатуре, соглашаясь с величиной первого и последнего сектора.

06-linux.jpg

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

  • t – запускает процесс по изменению типа нового раздела,
  • 8e – устанавливает значение LVM.

07-linux.jpg

Убедимся, что новый раздел имеет нужный тип. Наберите в командной строке атрибут «p». Система обработает запрос и представит в табличной форме итоговые сведения. Искомое устройство будет маркировано значением «sdb1» с типом системы «Linux LVM». Потом записываем установленные изменения, используя атрибут «w». Повторите описанную процедуру для всех остальных неразмеченных носителей и выполните их разметку.

Наши следующие действия будут направлены на создание на новом разделе физического тома. Введите в строке команду «pvcreate /dev/sdb1».

09-linux.jpg

Повторите команду для каждого носителя, заменив значение «sdb1» другими именами накопителей («sdc1», «sdd1», «sde1», «sdf1»).

10-linux.jpg

Затем собираем все носители в единую группу. Наберите в строке команду «vgcreate», перечислив созданные диски. В нашем примере команда будет иметь следующий вид: «vgcreate vg1 /dev/sdb1 dev/sdc1 dev/sdd1 dev/sde1 dev/sdf1». Атрибут «vg1» является именем новой группы томов.

11-linux.jpg

Как создать программный LVM RAID 5

Процесс создания программного RAID 5 подразумевает применение в терминале простой команды следующего формата:

«lvcreate -n lvr5 –type raid5 -L 10G -i 4 vg1»

12-linux.jpg

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

  • -n – присваивает тому имя.
  • –type raid5 – задает тип массива.
  • -L – устанавливает граничный размер для логического тома (у нас его величина равна 10 ГБ).
  • -i – указывает количество устройств, которые будут задействованы в хранении пользовательских данных. Сюда не входит дополнительное устройство для хранения блоков четности. Число должно быть 2 или больше, так как минимальное количество дисков для данного типа – три.
  • vg1 – объясняет системе, откуда ей следует взять нужное количество дискового пространства (указывается конкретный том или целая группа).

После успешного исполнения команды процесс воссоздания RAID 5 в виртуальной группе LVM будет окончен. Осталось только произвести операцию форматирования массива и монтажа. Выбираем для RAID 5 формат ext4. Наберите команду:

«mkfs -t ext4 /dev/vg1/lvr5»

13-linux.jpg

Команда содержит сведения о выбранной нами файловой системе «ext4», имени группы «vg1», имени тома «lvr5».

Теперь монтируем готовый массив. Вводим команду «mkdir /mnt/lvr5», а затем «mount -t ext4 /dev/vg1/lvr5 /mnt/lvr5».

14-linux.jpg

После исполнения команд выбранный том будет смонтирован.

15-linux.jpg

Как проверить статус LVM RAID

Для проверки статуса LVM RAID выполните такую команду:

«lvs -a -o name,copy_percent,devices vg1»

16-linux.jpg

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

17-linux.jpg

Каким способом вернуть утраченные данные с массива LVM

Если важные данные потеряны и нужно их вернуть, то воспользуйтесь программным обеспечением для восстановления от компании Hetman Software. Из предлагаемых инструментов выберите программу Hetman RAID Recovery.

Если критически нужно использовать Hetman RAID Recovery в ОС Linux, то воспользуйтесь одним из трех способов. Включите виртуальную машину, дополнительно установите ОС Windows или подключите проблемные носители к ПК с уже установленной Windows в качестве основной ОС.

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

Полную версию статьи со всеми дополнительными видео уроками смотрите в источнике. А также зайдите на наш Youtube канал, там собраны более 400 обучающих видео.

Читайте также: