Replacing a failed drive in an md raid1/raid10

From Notes to self
Revision as of 21:04, 18 January 2023 by Verbovet (talk | contribs)
Jump to navigation Jump to search
  • Check # mdadm --detail /dev/md0
    • If in an array a partition of the failed drive is not marked as faulty, run # mdadm --manage /dev/md1 --fail /dev/sda2
    • If the kernel doesn't already removed the faild drive from the arrays, remove it by hand: # mdadm /dev/md0 --remove /dev/sda1
  • Insert a new physical disk
  • Copy the partition table to the new drive from its mirror:
    • For gpt partition table:
      • # sgdisk -R /dev/sda /dev/sdb (from sdb to sda)
      • # sgdisk -G /dev/sda (to make the new disk's GUID different the mirror's one)
    • For mbr partition table: # sfdisk --dump /dev/sdb | sfdisk /dev/sda
  • Add the new drive into the arrays: # mdadm /dev/md0 --add /dev/sda1
    • In case of error
mdadm: Cannot open /dev/sda1: Device or resource busy

check if the md subsystem creates /dev/md127 from /dev/sda1. In this case run mdadm --stop /dev/md127 and then re-run mdadm /dev/md0 --add /dev/sda1

  • Update /etc/smartd.conf
  • Observe the mirroring process with $ watch cat /proc/mdstat