Могу ли я восстановить JBOD?

У меня есть старое оборудование, которое вышло из строя несколько лет назад, и у меня все еще есть 2 жестких диска, оба из которых настроены как JBOD.

Есть ли способ выгрузить эти диски на один жесткий диск и удалить / перестроить JBOD с фактическим оборудованием, которое больше не доступно?

JBOD был построен на чипе Promise 20579 - материнской плате MSI K8T Neo для AMD 64.

1 ответ

Есть вероятность, что ваши диски просто объединены в один большой том. Это самое простое решение, когда дело доходит до JBOD. Если только ребята из аппаратного обеспечения следовали принципу KISS, у вас не возникнет проблем с доступом к данным / сбросом данных с помощью программного обеспечения вместо аппаратного.

В Linux правильный инструмент dmsetup, но если вы хотите записать диски только в образ (или другой диск), то просто cat может хватить.

изучение

Для начала вам нужно узнать оригинальный порядок дисков в JBOD. Должно быть легко идентифицировать самый первый диск; сложная часть состоит в том, чтобы заказать остальные из них. В вашем случае, когда есть два жестких диска, у вас не должно быть проблем. На первом диске имеется допустимая таблица разделов MBR или действительный GPT (основной, но не вторичный), который описывает разделы на всем JBOD. Если вы не использовали свой JBOD без таблицы разделов, этот метод будет работать. Проверьте ваши диски с gdisk -l и определить первый.

подготовка

В моем примере правильный порядок /dev/sdb, /dev/sdc, Измените приведенные ниже определения переменных в соответствии с вашими потребностями.

device1=/dev/sdb
device2=/dev/sdc

Таким образом, вы можете использовать следующие команды Bash без каких-либо изменений.

Чтобы создать дамп дисков в образ, этого должно быть достаточно (примечание: теперь вам может потребоваться sudo):

cat $device1 $device2 > image.raw

Требуется больше подготовки, если вы действительно хотите работать с JBOD. Вам необходимо хранить размеры ваших устройств в 512-байтовых секторах. Команда для получения размера похожа blockdev --getsz /dev/sdX, так

size1=`blockdev --getsz $device1`
size2=`blockdev --getsz $device2`

Подтвердите с помощью echo $size1 $size2 что у вас есть два номера. (Проверка работоспособности: если вы умножите их на 512, вы должны получить размеры ваших дисков.)

Создание сопоставленного устройства

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

dmsetup create mydevice << EOF
0 $size1 linear $device1 0
$size1 $size2 linear $device2 0
EOF

Заметка mydevice это произвольное имя. Вторая и третья строка создают карту устройства для dmsetup, Ссылаться на man dmsetup Узнать больше.

Теперь вы должны иметь /dev/mapper/mydevice доступно и готово к использованию; это твой JBOD. (Я не уверен на 100% в каждой реализации dmsetup создает узлы в /dev/mapper/; тем не менее mydevice должно появиться где-то.) Работать с ним как с любым другим устройством.

монтаж

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

очищающий

Разрушать /dev/mapper/mydevice:

dmsetup remove /dev/mapper/mydevice

Конечно ты должен umount его разделы первыми.

Другие вопросы по тегам