2

I have 4 x 3TB drives in a RAID 10 array. One failed, so is now removed.

/proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md127 : active raid10 sdd[2] sdc[1] sde[3] 5860530176 blocks super 1.2 512K chunks 2 near-copies [4/3] [_UUU]

I've put the new HDD in, and it appears to have picked it up as sdb. I can't seem to figure out (even with much googling) what the correct procedure is now, to add sdb as the replacement disk. I've found posts telling me to copy the partition table from one of the other disks, but when I use fdisk or sfdisk it tells me that there are no valid partition tables, and looking in /dev there are sdc, sdd, sde devices but with no partitions listed. Yet the RAID array is working fine (albeit degraded)! What gives here? The array was originally built when I was running Openmediavault, so is it a hangover from that?

I've tried mdadm --assemble --scan but that does nothing.. I guess I need to force sdb into the array somehow, but I don't want to do the wrong thing, obvs!

Some output from mdadm:

sudo mdadm -D /dev/md127
/dev/md127:
        Version : 1.2
  Creation Time : Wed Dec 12 13:48:21 2012
     Raid Level : raid10
     Array Size : 5860530176 (5589.04 GiB 6001.18 GB)
  Used Dev Size : 2930265088 (2794.52 GiB 3000.59 GB)
   Raid Devices : 4
  Total Devices : 3
    Persistence : Superblock is persistent  
    Update Time : Tue Jul  8 22:19:20 2014
          State : clean, degraded 
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0  
         Layout : near=2
     Chunk Size : 512K  
           Name : omv:4x3TB
           UUID : acaef996:1ea7102b:9cd52d00:af0ef09e
         Events : 779391  
    Number   Major   Minor   RaidDevice State
       0       0        0        0      removed
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       3       8       64        3      active sync   /dev/sde

...and full output from fdisk -l

sudo fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.

Disk /dev/sda: 60.0 GB, 60022480896 bytes 255 heads, 63 sectors/track, 7297 cylinders, total 117231408 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: 0x00000000

Device Boot Start End Blocks Id System /dev/sda1 1 117231407 58615703+ ee GPT

Disk /dev/mapper/tower--vg-root: 55.1 GB, 55067017216 bytes 255 heads, 63 sectors/track, 6694 cylinders, total 107552768 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: 0x00000000

Disk /dev/mapper/tower--vg-root doesn't contain a valid partition table

Disk /dev/mapper/tower--vg-swap_1: 4185 MB, 4185915392 bytes 255 heads, 63 sectors/track, 508 cylinders, total 8175616 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: 0x00000000

Disk /dev/mapper/tower--vg-swap_1 doesn't contain a valid partition table

Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes 255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 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

Disk /dev/sdb doesn't contain a valid partition table

Disk /dev/sdc: 3000.6 GB, 3000592982016 bytes 255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 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

Disk /dev/sdc doesn't contain a valid partition table

Disk /dev/sde: 3000.6 GB, 3000592982016 bytes 255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 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

Disk /dev/sde doesn't contain a valid partition table

Disk /dev/sdd: 3000.6 GB, 3000592982016 bytes 255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 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

Disk /dev/sdd doesn't contain a valid partition table

Disk /dev/md127: 6001.2 GB, 6001182900224 bytes 2 heads, 4 sectors/track, 1465132544 cylinders, total 11721060352 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 524288 bytes / 1048576 bytes Disk identifier: 0x00000000

Disk /dev/md127 doesn't contain a valid partition table

1 Answer 1

3

When running into a similar situation (though it was not a RAID10, nor was it created by an OpenMediaVault installation) I simply mdadm -add'ed the new disk to the array. This effectively made the new disk a (hot) spare disk, after which the degraded array picked it up as a means to repair the array.

Besides the mdadm --add I'm not entirely sure which other commands I ran (if any at all). All I used from there was the mdadm(8) man page.

1
  • It was that easy! I did: sudo mdadm --manage /dev/md127 --add /dev/sdb And it started rebuilding!
    – muggy
    Jul 17, 2014 at 16:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .