6

Я пытаюсь настроить раздел RAID1 на моей рабочей станции Ubuntu 9.10.

В этой системе с двойной загрузкой Ubuntu работает с отдельного диска (/dev/sdc - довольно компактный твердотельный накопитель, поэтому мне нужно больше места на диске). Кроме того, есть два традиционных жестких диска емкостью 500 ГБ, на которых установлена Windows 7 (я хочу сохранить установку Windows без изменений) и около половины нераспределенного пространства. Это место, где я хочу настроить один большой раздел RAID1 для Linux.

(Насколько я понимаю, это будет программный RAID, тогда как разделы Windows находятся на аппаратном RAID - надеюсь, это не проблема ... Изменить: см. Комментарий Питера. Я думаю, это не должно быть проблемой, так как я вижу оба диска отдельно в Linux.)

На обоих дисках, /dev/sda и /dev/sdb , я создал, используя fdisk, идентичные новые разделы типа "Linux raid autodetect", чтобы заполнить нераспределенное пространство.

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          10       80293+  de  Dell Utility
/dev/sda2   *          11         106      768000    7  HPFS/NTFS
Partition 2 does not end on cylinder boundary.
/dev/sda3             106       30787   246439936    7  HPFS/NTFS
/dev/sda4           30787       60801   241095200+  fd  Linux raid autodetect

Итак, я хотел бы создать массив RAID из /dev /sda4 и /dev /sdb4, используя mdadm. Но мне кажется, что это не работает:

$ sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sd{a,b}4
mdadm: Cannot open /dev/sda4: Device or resource busy
mdadm: Cannot open /dev/sdb4: Device or resource busy
mdadm: create aborted

После загрузки машины та же команда дает:

$ sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sda4 /dev/sdb4
mdadm: Cannot open /dev/sda4: No such file or directory
mdadm: Cannot open /dev/sdb4: No such file or directory

Так что теперь кажется, что устройства не определяются автоматически при загрузке ... Используя fdisk, sda и sdb прежнему выглядят корректно.

Изменить: после очередной перезагрузки устройства вернулись:

$ ls /dev/sd*
/dev/sda   /dev/sda2  /dev/sda4  /dev/sdb1  /dev/sdb3  /dev/sdc   /dev/sdc2
/dev/sda1  /dev/sda3  /dev/sdb   /dev/sdb2  /dev/sdb4  /dev/sdc1  /dev/sdc5

Но так же "Устройство или ресурс занят" при попытке создать массив RAID. Довольно странно. Любая помощь будет оценена!

Обновление: может ли устройство отображения устройств иметь какое-либо отношение к этому? Как соотносятся /dev/mapper и dmraid со всем этим mdadm ? Оба предоставляют программный RAID, но .. по-разному? Извините за мое невежество здесь.

В /dev/mapper/ есть некоторые файлы устройств, которые, как мне кажется, как-то соответствуют 3 разделам Windows RAID (от sd {a, b} 1 до sd {a, b} 3). Я не знаю, почему существует четыре таких массива.

$ ls /dev/mapper/
control               isw_dgjjcdcegc_ARRAY1  isw_dgjjcdcegc_ARRAY3
isw_dgjjcdcegc_ARRAY  isw_dgjjcdcegc_ARRAY2  

Решение: это была статья mdadm Wikipedia, которая подтолкнула меня в правильном направлении. В этом ответе я опубликовал подробности о том, как все получилось.

3 ответа3

5

Наконец-то некоторый прогресс!

dmraid действительно был виновником, как и предполагалось в статье mdadm в Википедии . Я попытался удалить пакеты dmraid (и запустить update-initramfs хотя я не уверен, что это было актуально).

После этого и перезагрузки устройства в /dev/mapper исчезли (что нормально - мне не нужен доступ к разделам Windows NTFS в Linux):

$ ls /dev/mapper/
control

И, самое главное, mdadm --create работает!

$ sudo mdadm -Cv -l1 -n2  /dev/md0 /dev/sda4 /dev/sdb4
mdadm: size set to 241095104K
mdadm: array /dev/md0 started.

Я проверил /proc/mdstat и mdadm --detail /dev/md0 и оба показывают, что с вновь созданным массивом все в порядке.

$ cat /proc/mdstat
[..] 
md0 : active raid1 sdb4[1] sda4[0]
      241095104 blocks [2/2] [UU]
      [==========>..........]  resync = 53.1% (128205632/241095104) 
        finish=251.2min speed=7488K/sec      

Затем я создал файловую систему на новом разделе:

$ sudo mkfs.ext4 /dev/md0 

И, наконец, просто смонтировал объект в /opt (и обновил /etc/fstab). (Конечно, я мог бы и здесь использовать LVM, но, честно говоря, в этом случае я не видел в этом никакого смысла, и я уже потратил достаточно времени, пытаясь заставить это работать ...)

Итак, теперь раздел RAID готов к использованию, и у меня достаточно места на диске. :-)

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdc5              70G   52G   15G  79% /
/dev/md0              227G  188M  215G   1% /opt

Обновление: все еще есть некоторые проблемы с этим моим устройством RAID. После перезагрузки его не удается смонтировать, хотя он у меня есть в fstab, и иногда (после перезагрузки) он оказывается в неактивном состоянии и не может быть смонтирован даже вручную. Смотрите следующий вопрос, который я разместил.

2
sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sd{a,b}4
mdadm: Cannot open /dev/sda4: Device or resource busy
mdadm: create aborted

Этот трюк работал для меня: Проверьте /proc/mdstat: запишите имя устройства, указанное там, например. md_d0 , затем:

sudo mdadm --stop /dev/md_d0

Теперь команда create должна работать.

1

Возможно, глупый ответ, но - вы уверены, что sd {a, b} 4 нигде не монтируется ubuntu?

А какая у вас материнская плата, как вы говорите про аппаратный рейд? Это может быть действительно программный рейд, который может беспокоить здесь.

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