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

Диск RAID 1 помечается как запасной после замены

один из двух дисков в моем RAID 1 умер, поэтому я заменил его. Когда в массив добавляется новый диск, запускается процесс синхронизации, и через несколько минут он становится запасным. Как я могу "заставить" диск быть регулярной частью массива?

# cat /proc/mdstat 
Personalities : [raid1] 
md0 : active raid1 sdb1[1] sda1[0]
  401472 blocks [2/2] [UU]

md1 : active raid1 sdb2[2](S) sda2[0]
  487982336 blocks [2/1] [U_]

unused devices: <none>

Как видите, раздел sdb1 является регулярной частью массива md0. Но sdb2 помечен как Spare и не будет добавлен в md1.

Старый диск был 500 ГБ с 512Б секторов, а новый - 1 ТБ с размером сектора 4 КБ. Может в этом корень проблемы?

Старый диск имел ту же геометрию, что и sda. Новый диск - sdb.

# fdisk -l /dev/sda

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000dda75

Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63      803249      401593+  fd  Linux raid autodetect
/dev/sda2          803250   976768064   487982407+  fd  Linux raid autodetect

# fdisk -l /dev/sdb

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048      809343      403648   fd  Linux raid autodetect
/dev/sdb2          809344   976774159   487982408   fd  Linux raid autodetect

Я сделал sdb2 на один блок больше, чем sda2 (487982408 против 487982407+), поэтому я предполагаю, что все должно быть хорошо.

Это Fedora 2.6.35.14-97.fc14.x86_64 Я буду рад любым советам.

Спасибо, Аас.

Я наконец нашел основную причину проблемы с синхронизацией. Это произошло потому, что на другом диске были плохие блоки, поэтому в какой-то момент процесс синхронизации завершился неудачно. Я создал новое устройство md2 и добавил его в vg00 как новый PV. Затем pvmove все данные из неверного массива md1, уничтожил его, перестроил initrd, удалил второй диск и загрузился с нового. Спасибо за поддержку. Я надеюсь, что это поможет кому-то.

Вы не показали никаких результатов или журналов; что dmesg говорит, когда вы бежите

mdadm /dev/md1 -a /dev/sdb2 ?

Также опасны предположения о размерах разделов из fdisk -l; есть ПРИЧИНА, что он говорит вам, что sda2 был 487982407+ (PLUS) блоков.

Использовать mdadm -D /dev/md1 для реальных размеров.