Swap RAID Drives
Software RAID with mdadm
Check RAID Status
cat /proc/mdstat
mdadm --detail /dev/md0
Replace a Failed Drive
# Mark drive as failed (if not already)
mdadm /dev/md0 --fail /dev/sdb1
# Remove failed drive
mdadm /dev/md0 --remove /dev/sdb1
# Physically swap drive, then add new drive
mdadm /dev/md0 --add /dev/sdb1
# Watch rebuild progress
watch cat /proc/mdstat
Clone Partition Table to New Drive
# Copy partition layout from sda to sdb
sfdisk -d /dev/sda | sfdisk /dev/sdb
# Verify
fdisk -l /dev/sdb
Create New RAID Array
# RAID 1 (mirror)
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
# RAID 5
mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1
# Save config
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
update-initramfs -u
Grow Array (Add Drive to RAID 5)
# Add spare
mdadm /dev/md0 --add /dev/sdd1
# Grow to use new drive
mdadm --grow /dev/md0 --raid-devices=4
# Expand filesystem (after grow completes)
resize2fs /dev/md0