1

У меня новый ПК с двойной загрузкой из одного SSD-диска (win7+debian). Я добавил пару 2T HD, которые хочу использовать как в Win, так и в Linux. Моя цель - иметь два отдельных массива RAID-1 на четырех разделах 1T.

Я начал создавать разделы под Linux (/dev/sd [de] [12]) и создание массива там работает, как и ожидалось (используя mdmadmin --create /dev/md0 --level=mirror --raid-devices=2 /dev/sd[de]2).

К сожалению, Win7, похоже, не может использовать "оставшиеся" свободные разделы (/dev/sd [de] 1): она принимает мой ввод, но затем захлебывается "недостаточно места на диске на устройстве". Я попытался также уменьшить размер разделов (некоторые сообщения подразумевают, что Win требует раздел 1 МБ "overhead"), но я не смог заставить его работать.

Затем я удалил все разделы и создал "Тома" на Win7, и это также работает как рекламируется.

К сожалению, он создает тома 1T, но также создает два раздела: "маленький 1 МБ" и еще один, занимающий остальную часть диска; нет места для массива Linux.

Может кто-нибудь предложить стратегию создания двух дисковых массивов RAID-1 по 1 ТБ на двух физических дисках по 2 ТБ, один для использования под Win7, а другой под linux?

ПРИМЕЧАНИЕ: Linux Array будет томом LVM, в основном предназначенным для хранения виртуальных машин XEN, поэтому монтировать Win Array (ntfs) под Linux, к сожалению, не вариант.

1 ответ1

3

Вам понадобится поддержка Logical Disk Manager (LDM) в вашем дистрибутиве Linux для доступа к динамическим дискам Windows. Для создания зеркальных томов в Windows необходимо, чтобы эти диски были настроены как динамические.

Мне неясно, компилирует ли Debian поддержку LDM в свои ядра (не пользователь Debian, поэтому я не могу сказать). В ядре есть поддержка LDM. Ядро может запросить базу данных LDM на диске и представить тома в файловой системе "/dev". Ничто не помешает вам создать том LDM и использовать программный RAID-массив Linux и файловую систему только для Linux.

В дополнение к драйверу ядра есть инструмент libldm ldmtool, который может запрашивать LDM и представлять объемы через устройство отображения устройств. Это может быть вариант для вас тоже.

Редактировать:

Позвольте мне попытаться уточнить. Я не предлагаю вам отказаться от программного обеспечения Linux RAID. Ваша проблема не с RAID - это чтение таблицы разделов. То, что вы делаете для RAID, ортогонально этой проблеме.

Ваше ядро показывает вам таблицу разделов в стиле MBR на этих дисках. Вы видите это в Linux, потому что Windows сделала их "динамическими" и сохранила эту таблицу разделов как функцию совместимости с ОС, которые могут читать таблицы разделов в стиле MBR. На этих дисках есть свободное место, но ваша ОС Linux должна интерпретировать базу данных LDM, чтобы получить доступ к этому свободному пространству.

Нельзя иметь зеркальный том в Windows без использования динамических дисков (разделов LDM) для размещения зеркального тома. Вы застряли. Если вы хотите Windows RAID-1, на этих дисках должны быть разделы в стиле LDM.

Поэтому для адресации томов на динамическом диске из Linux вам придется использовать уровень совместимости LDM. Если вы не используете динамический диск, вы не получите программный RAID в Windows.

Мне неясно, что случилось с поддержкой ядра LDM в Linux. Код выглядит как добавленный несколько лет назад и должен быть стабильным. Я думаю, вам нужно собрать собственное ядро. Проверьте конфигурацию ядра (grep "CONFIG_LDM_PARTITION" /boot/config-$(uname -r)), чтобы увидеть, установлено ли "CONFIG_LDM_PARTITION" - я думаю, что это, вероятно, нет.

Когда вы прочитаете таблицу разделов LDM в Linux, вы абсолютно можете использовать программный RAID для томов, созданных в таблице разделов LDM. Они просто блокируют устройства. Однако для создания томов для размещения программного RAID-массива Linux вам может понадобиться утилита Windows diskpart (или, возможно, утилита ldmtool я связан).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .