Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: mdadm при загрузке неправильно собирает массив  (Прочитано 1704 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн avathar

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Проблема в следующем. Массив /dev/md4 raid6 из 8 дисков (если это принципиально раньше 4 из них были частью другого массива, перед включением в этот с помощью fdisk были удалены и заново созданы разделы). Разделы включенные в массив имеют имена /dev/sda1../dev/sdh1. При загрузке mdadm собирает массив /dev/md4 состоящий из 7 дисков, причем один из дисков неправильно определяет как, например, /dev/sdd вместо /dev/sdd1 имеющий состояние inactive и массив /dev/md3 которого нет в /etc/mdadm/mdadm.conf состоящий из одного диска так же с неправильным наименованием. После загрузки и остановки массивов с последующей пересборкой (mdadm --assemble --scan) массив собирается правильно (8 дисков на месте и состояние active). Пробовал удалять неправильно определяемые диски из массива, пересоздавать на них разделы, обнулять суперблоки и после вновь включать их в массив... после перезагрузки та же ситуация. Осложняется все тем что при каждой перезагрузке меняются имена у дисков (был например sde стал sdc итд.) Посоветуйте куда копать ???

Пользователь решил продолжить мысль 19 Октября 2012, 22:22:32:
решил попробовать поменять название массива на ранее неиспользуемое (/dev/md0..4 уже были, назвал /dev/md5)
Сразу после загрузки:
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md5 : inactive sdd[1](S)
      976762496 blocks

md3 : inactive sdc[1](S)
      976762496 blocks

unused devices: <none>
Останавливаю и пересобираю:
# mdadm -S /dev/md5
mdadm: stopped /dev/md5
# mdadm -S /dev/md3
mdadm: stopped /dev/md3
# mdadm --assemble --scan
mdadm: /dev/md5 has been started with 8 drives.
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md5 : active raid6 sdc1[0] sdh1[7] sdi1[6] sda1[5] sdb1[4] sde1[3] sdf1[2] sdd1[1]
      5860559616 blocks level 6, 64k chunk, algorithm 2 [8/8] [UUUUUUUU]

unused devices: <none>
# cat /etc/mdadm/mdadm.conf
#MAILADDR root
DEVICE partitions
ARRAY /dev/md5 metadata=0.90 UUID=c8af3d1b:110ba2e3:27dfd088:0554522d

Пользователь решил продолжить мысль 19 Октября 2012, 22:30:00:
Возможно ли принудить mdadm пересоздать суперблоки без потери данных ?

Пользователь решил продолжить мысль 20 Октября 2012, 00:07:51:
# mdadm --examine --scan --config=mdadm.conf
ARRAY metadata=imsm UUID=3e2b7c81:a06d9dbe:d9daa598:240424fb
ARRAY /dev/md/Volume0 container=3e2b7c81:a06d9dbe:d9daa598:240424fb member=0 UUID=aa26d93a:b7b67fc1:3c09df2b:448fe4fa
ARRAY /dev/md3 UUID=34500bde:abc26fab:3043ba1a:e7a8dc28
ARRAY /dev/md5 UUID=c8af3d1b:110ba2e3:27dfd088:0554522d

Откуда он берет данные об /dev/md3 ??? Как его отучить от этого ?
« Последнее редактирование: 20 Октября 2012, 00:07:51 от avathar »

Оффлайн avathar

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Оказалось что на двух старых дисках остались суперблоки от старых массивов (настолько старых что я про них уже забыл :), что характерно до расширения они не мешали). Вывел диски из массива, затер суперблоки и добавил диски снова в массив. Теперь все работает.
mdadm -f /dev/md5 /dev/sdc1
mdadm -r /dev/md5 /dev/sdc1
mdadm --zero-superblock /dev/sdc
mdadm --add /dev/md5 /dev/sdc1


Пользователь решил продолжить мысль 21 Октября 2012, 11:14:31:
Узнал о наличии старых суперблоков путем перебирания всех дисков и разделов на них и изучением вывода
mdadm -E /dev/sdc
mdadm -E /dev/sdc1
... итд
« Последнее редактирование: 21 Октября 2012, 11:15:02 от avathar »

 

Страница сгенерирована за 0.031 секунд. Запросов: 26.