Как мне исправить & ldquo; mdadm: / dev / sdc1 не достаточно велико, чтобы присоединиться к массиву & rdquo; для трех идентичных дисков?

После перехода на Ubuntu 12.04 LTS на моем сервере grub начал жаловаться и давать ошибки в моем массиве RAID, все по-прежнему работает, но он немного нервирует, чтобы получить grub, дающий ошибки.

Setting up grub-pc (1.99-21ubuntu3.7) ... error: found two disks with the index 2 for RAID md0. error: superfluous RAID member (3 found).

Я получаю много этих ошибок при обновлении grub.

Факты: у меня три идентичных диска в настройке raid5, на двух из дисков есть один основной раздел, который добавляется в массив, но третий диск добавляется без основного раздела. то есть. mdam --manage /dev/md_d0 --add /dev/sdc

Я предполагаю, что это причина жалобы grub.

С момента обнаружения этой проблемы я отключил диск, в котором отсутствует основной раздел, создан первичный раздел, который проверяет, что он выглядит одинаково с cfdisk /dev/xxx, а затем Print Partition table. И попытался добавить новый раздел в массив raid, и именно тогда я получаю сообщение о том, что раздел должен быть небольшим для добавления в массив raid.

> sudo mdadm /dev/md_d0 --add /dev/sdc1

mdadm: /dev/sdc1 not large enough to join array

Таблицы разделов выглядят одинаково,

Partition Table for /dev/sdc First Last # Type Sector Sector Offset Length Filesystem Type (ID) Flag -- ------- ----------- ----------- ------ ----------- -------------------- ---- Pri/Log 0 2047* 0# 2048*Free Space None 1 Primary 2048* 3907029167* 0 3907027120*Linux raid auto (FD) None Partition Table for /dev/sdd First Last # Type Sector Sector Offset Length Filesystem Type (ID) Flag -- ------- ----------- ----------- ------ ----------- -------------------- ---- Pri/Log 0 2047* 0# 2048*Free Space None 1 Primary 2048* 3907029167* 0 3907027120*Linux raid auto (FD) None Partition Table for /dev/sde First Last # Type Sector Sector Offset Length Filesystem Type (ID) Flag -- ------- ----------- ----------- ------ ----------- -------------------- ---- Pri/Log 0 2047* 0# 2048*Free Space None 1 Primary 2048* 3907029167* 0 3907027120*Linux raid auto (FD) None

Или актуально, если вы печатаете таблица разделов как исходные данные в cfdisk есть некоторые различия, но я не могу расшифровать то, что это значит.

-> diff sde.raw sdc.raw 1c1 Disk Drive: /dev/sde --- Disk Drive: /dev/sdc 30c30 0x1B0: 00 00 00 00 00 00 00 00 B7 E9 70 74 00 00 00 20 --- 0x1B0: 00 00 00 00 00 00 00 00 4B 0C 58 1C 00 00 00 20

Я понял, что могу попытаться скопировать mbr с одного из рабочих дисков с помощью dd, но все же я получаю ту же ошибку, даже если таблица разделов идентична в исходном выходе cfdisk.

$ sudo dd if=/dev/sdd of=/tmp/sdd-mbr.bin bs=512 count=1 $ sudo dd if=/tmp/sdd-mbr.bin of=/dev/sdc bs=512 count=1 $ cat /proc/partitions major minor #blocks name 8 48 1953514584 sdd 8 49 1953513560 sdd1 8 32 1953514584 sdc 8 33 1953513560 sdc1 8 64 1953514584 sde 8 65 1953513560 sde1

Теперь исходное сравнение таблицы разделов дает идентичный вывод, и разделы, похоже, имеют одинаковый размер, но я все равно получаю ту же ошибку при попытке добавить /dev/sdc1 к массив.

Я думаю, мой вопрос в том, есть ли какой-либо способ исправить это, не отвлекая весь массив и не воссоздавая его с нуля?

Вывод из mdadm -D /dev/md_d0 массива все еще восстанавливается с тех пор, как я добавил / dev / sdc снова.

/dev/md_d0: Version : 0.90 Creation Time : Sat Aug 14 21:06:13 2010 Raid Level : raid5 Array Size : 3907028992 (3726.03 GiB 4000.80 GB) Used Dev Size : 1953514496 (1863.02 GiB 2000.40 GB) Raid Devices : 3 Total Devices : 3 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Fri Jan 11 18:36:06 2013 State : clean, degraded, recovering Active Devices : 2 Working Devices : 3 Failed Devices : 0 Spare Devices : 1 Layout : left-symmetric Chunk Size : 64K Rebuild Status : 53% complete UUID : 74998045:22316376:01f9e43d:ac30fbff (local to host server) Events : 0.19988 Number Major Minor RaidDevice State 3 8 32 0 spare rebuilding /dev/sdc 1 8 64 1 active sync /dev/sde 2 8 48 2 active sync /dev/sdd

Теперь я понимаю, что похоже, что весь массив состоит из реальных устройств, а не партией, тогда возникает вопрос, почему sdd1 & amp ; sde1 partitios остаются на жестких дисках и записываются на / dev / sdc, как только я добавляю его в массив.

1
задан 12 January 2013 в 00:52

1 ответ

Вам нужно отключить HPA на вашем диске.

проверить, включен ли HPA

$ hdparm -N /dev/sdc

   /dev/sdc:

    max sectors   = 586070255/586072368, HPA is enabled

, затем отключить HPA

$ hdparm -N p586072368 /dev/sdc

'p' необходимо для сохранения после перезагрузки. Чем вам нужно перезагрузить компьютер, добавьте диск в RAID

0
ответ дан 25 May 2018 в 02:32

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

Похожие вопросы: