#!/bin/sh # scans /etc/raidtab and current system and adds to /etc/mdadm.conf all md # devices defined in raidtab, it also adds (commented) devices not in raidtab if [ -f /etc/raidtab ]; then #echo "Converting your /etc/raidtab file to /etc/mdadm.conf" #echo "Raidtab backup saved as: /etc/raidtab.backup.$$" grep -qs '/^[[:space:]]*DEVICE' /etc/mdadm.conf || echo "DEVICE partitions" >> /etc/mdadm.conf raidtab=`awk '/^[[:space:]]*raiddev/ {sub ("md/","md",$2); print $2}' /etc/raidtab` mdadm=`awk '/^[[:space:]]*ARRAY/ {sub ("md/","md",$2); print $2}' /etc/mdadm.conf` mdadm -Esc partitions | awk -v "raidtab=$raidtab" -v "mdadm=$mdadm" ' BEGIN { split (raidtab,r) split (mdadm,m) } /^ARRAY[[:space:]]/ { for (v in m) { if ( $2 == m[v]) {next} } for (v in r) { if ( $2 == r[v]) {print $0, "auto=yes";next} } print "# " $0 }' >> /etc/mdadm.conf mv /etc/raidtab /etc/raidtab.backup.$$ fi