Подключаем диск из NAS в Linux, или монтирование RAID и LVM разделов

  • Автор:

linux-mounting-nas-drive-000.pngВсем нам знакомы и привычны аппаратные NAS, они используются дома и на работе для хранения самых различных данных. Но любое оборудование может выходить из строя, обычно неожиданно и перед администратором может встать задача копирования данных с дисков NAS. На первый взгляд в ней нет ничего сложного: в основе прошивки Linux, а значит берем любую Linux систему, подключаем, монтируем, сливаем... Однако не все так просто и для выполнения этой задачи могут потребоваться достаточно глубокие знания систем хранения Linux и навыков работы с ними.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Разбирать подобные ситуации лучше на примерах, тем более в нашем случае он как будто специально, достаточно показательный. На днях к нам обратился коллега с просьбой помочь достать информацию с диска, вышедшего из строя NAS Synology DS216. На наш вопрос в чем там проблема он уклончиво ответил, что как-то все сложно и он боится сделать что-нибудь не так и испортить данные.

Ну что же, давайте разбираться. Итак, перед нами следующие вводные: есть диск из двухдискового NAS, работавшего с зеркальным RAID-массивом, в качестве файловой системы использовалась ext4. Подключаем данный диск к нашей Linux-системе, в ее качестве мы использовали Ubuntu, но это не имеет особого значения, принципы работы с дисками везде одинаковы, и проверяем его наличие в системе командой:

lsblk

Из ее вывода нам удалось выяснить, что диск определяется в системе как sdb, а раздел с данными, судя по размеру, это sdb5. А давайте попробуем его примонтировать?

linux-mounting-nas-drive-001.pngНо данная попытка не увенчается успехом. Почему? Ответ написан на экране: неизвестный тип файловой системы 'linux_raid_member'. Несмотря на то, что NAS аппаратный, RAID-массивы он использовал программные и перед нами классический раздел типа FD (Linux RAID autodetect). Для работы с ним потребуется установить mdadm:

apt install mdadm

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

mdadm --examine /dev/sdb5

Да, перед нами действительно один из дисков зеркального (RAID-1) массива.

linux-mounting-nas-drive-002.pngТеперь можем попробовать собрать массив командой:

mdadm --assemble --run /dev/md2 /dev/sdb5

Имя создаваемого массива можете выбрать на собственное усмотрение, в нашем случае md2.

linux-mounting-nas-drive-003.pngМассив собрался, утираем трудовой пот и пытаемся его смонтировать, но снова что-то пошло не так...

linux-mounting-nas-drive-004.pngПричины снова написаны белым по баклажановому: неизвестный тип файловой системы 'LVM2_member'. Это значит, что поверх программного RAID-массива развернут LVM. И вот здесь многие уже выбрасывают белый флаг. Дело в том, что mdadm - "зло" привычное, с ним так или иначе сталкивается любой Linux-администратор, а вот с LVM умеют работать далеко не все. Даже в комментариях вводных статей по LVM некоторые читатели высказывали мнение, что это только дополнительные заботы себе на пятую точку. Но жизнь ставит все на свои места.

Наше мнение: знать основы LVM и уметь работать с ним на базовом уровне должен любой уважающий себя администратор.

Прежде всего установим необходимые пакеты:

apt install lvm2

А теперь посмотрим, что же попало к нам в руки. Выполним команду:

pvscan

Ее вывод ясно показывает, что у нас имеется физический том (PV), который содержит группу томов (VG) vg1000.

linux-mounting-nas-drive-005.png

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

vgck --updatemetadata vg1000

После чего можно импортировать группу томов:

vgimport vg1000

И активировать их:

vgchange -a y vg1000

linux-mounting-nas-drive-006.pngТеперь узнаем, какие логические тома (LV) содержит активированная группа томов (VG):

lvscan

В нашем случае логический том один - lv, смонтируем его:

mount /dev/vg1000/lv /mnt

В качестве точки монтирования мы выбрали стандартную директорию /mnt, но вы можете выбрать для этого любое место, главное условие - оно должно существовать на момент монтирования.

linux-mounting-nas-drive-007.pngЕсли мы теперь перейдем в точку монтирования, то увидим в ней все содержимое нашего NAS и можем спокойно копировать данные. Сложно? Если обладать базовым набором знаний - нет, в противном случае это близко к какой-то магии, где путем ввода непонятных "заклинаний" мы получаем нужный результат.

linux-mounting-nas-drive-008.pngПосле того, как вы скопировали нужные данные диск следует отключить, прежде всего отмонтируем логический том:

umount /mnt 

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

vgchange -a n vg1000

И экспортируем ее:

vgexport vg1000

Затем отключим программный RAID:

mdadm -S /dev/md2

linux-mounting-nas-drive-009.pngТеперь можно смело извлекать диск, особенно если он был подключен через USB, мы корректно выполнили отключение и это не принесет вреда ни диску, ни системе.

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

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

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

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

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



Loading Comments