Назад | Перейти на главную страницу

Как избавиться от устройства упрямого «удаленным» mdadm

Один из дисков моего сервера вышел из строя, поэтому я удалил неисправный диск из всех трех соответствующих массивов, заменил его, а затем добавил новый диск в массивы. Два массива работали отлично. Третий добавил диск обратно в качестве запасного, и есть странная «удаленная» запись в mdadm подробности.

Я пробовал оба

mdadm /dev/md2 --remove failed

и

mdadm /dev/md2 --remove detached

как было предложено Вот и Вот, ни на что не жаловались, но ни на что не повлияло.

Кто-нибудь знает, как я могу избавиться от этой записи и правильно добавить диск? (В идеале без повторной синхронизации в третий раз мне уже приходилось делать это дважды, и это занимает несколько часов. Но если это то, что нужно, то это то, что нужно.) Новый диск /dev/sda, соответствующий раздел /dev/sda3.

Вот подробности о массиве:

# mdadm --detail /dev/md2
/dev/md2:
        Version : 0.90
  Creation Time : Wed Oct 26 12:27:49 2011
     Raid Level : raid1
     Array Size : 729952192 (696.14 GiB 747.47 GB)
  Used Dev Size : 729952192 (696.14 GiB 747.47 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 2
    Persistence : Superblock is persistent

    Update Time : Tue Nov 12 17:48:53 2013
          State : clean, degraded 
 Active Devices : 1
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 1

           UUID : 2fdbf68c:d572d905:776c2c25:004bd7b2 (local to host blah)
         Events : 0.34665

    Number   Major   Minor   RaidDevice State
       0       0        0        0      removed
       1       8       19        1      active sync   /dev/sdb3

       2       8        3        -      spare   /dev/sda3

Если актуально, то это 64-битный сервер. Обычно он работает под управлением Ubuntu, но сейчас я нахожусь в «спасательной» ОС центра обработки данных, а именно в Debian 7 (хрипит). «Удаленная» запись была там в последний раз, когда я был в Ubuntu (в настоящее время она не загружается с диска), поэтому я не думаю, что это не какой-то конфликт Ubuntu / Debian (и они, конечно, близко Связанный).


Обновить:

Проведя обширные тесты с тестовыми устройствами на локальной машине, я просто получаю аномальное поведение от mdadm с этим массивом. Например, с /dev/sda3 снова удалили из массива, я сделал следующее:

mdadm /dev/md2 --grow --force --raid-devices=1

И это избавило меня от "удаленного" устройства, оставив меня только с /dev/sdb3. Затем я нанёс ядерный удар /dev/sda3 (записал в него файловую систему, чтобы на нем больше не было raid fs), затем:

mdadm /dev/md2 --grow --raid-devices=2

... который дал мне массив с /dev/sdb3 в слоте 0 и «удален» в слоте 1, как и следовало ожидать. затем

mdadm /dev/md2 --add /dev/sda3

... добавил - снова как запасной. (Еще 3,5 часа на ветер.)

Итак, с восстановленным запасным элементом в массиве, учитывая, что mdadmстраница руководства говорит

ИЗМЕНЕНИЯ НА RAID-УСТРОЙСТВАХ

...

При увеличении количества устройств все имеющиеся «горячие» резервы активируются немедленно.

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

mdadm /dev/md2 --grow --raid-devices=3

Что я получил? Два «снятые» устройства и запасные. И все же, когда я делаю это с тестовым массивом, я не получаю такого поведения.

Так что я атаковал /dev/sda3 снова использовал его для создания нового массива и копирую данные из старого массива в новый:

rsync -r -t -v --exclude 'lost+found' --progress /mnt/oldarray/* /mnt/newarray

Это, конечно, займет часы. Надеюсь, когда я закончу, я смогу полностью остановить старый массив, нанести ядерный удар /dev/sdb3, и добавьте его в новый массив. Надеюсь, его не добавят в качестве запасного!

Что ж, все обычные варианты (перечисленные в моем вопросе) не сработали, у меня не было выбора, кроме как:

  1. удалять /dev/sda3 из массива

  2. Ядерная бомба

  3. Создать новый деградированный массив, содержащий его и пустой слот

  4. rsync файлы из старого массива в новый

  5. Остановите старый массив

  6. Ядерная бомба /dev/sdb3

  7. Добавить /dev/sdb3 в новый массив

Сначала он говорил: «Запасной, перестраиваемый», но как только он был восстановлен, он был добавлен в массив как активный диск.

Конечно, это означало иметь дело с побочными эффектами изменения массива (а поскольку это была корневая файловая система, это было настоящей головной болью).

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

A) Добавление диска должно было работать(тм) как это было с двумя другими,

и

Б) В противном случае должно работать сжатие и увеличение массива.