In mail.linux.raid I write: >Other than the superblocks, does 'mdadm --create' harm existing data? It would seem not according to this test: ------------------------------------------------------------ #!/bin/sh # Create a test raid6 array, then create it again forcing the devices # into a different order. Verify that the devices themselves (except the superblocks) # are not altered num_devices=4 device_size=2 # MByte loop_start=10 md=/dev/md9 dir=/tmp/raidtest test -d $dir || mkdir -v $dir cd $dir checksum() { # dont check superblock at end echo $1 `dd if=$1 bs=1024k count=$(($device_size-1)) 2>/dev/null | sum` } devs="" reverse_devs="" files="" i=0 while test $i -lt $num_devices; do file=dev$i loop=/dev/loop$(($loop_start+$i)) if test ! -f $file; then dd if=/dev/urandom of=$file bs=1024k count=$device_size 2>/dev/null losetup -d $loop losetup $loop $file fi checksum $file devs="$devs $loop" reverse_devs="$loop $reverse_devs" files="$files $file" i=$(($i+1)) done stop() { mdadm --stop $md } create() { stop exe="mdadm -C --force -c 128 -l raid6 -n $(($num_devices+2)) -a $md $* missing missing" echo $exe $exe grep `basename $md` /proc/mdstat sum $md stop } create $devs create $reverse_devs for d in $devs; do checksum $d done ---------------------------------------------------------------------- Output: athlon:aab > sudo raidtest dev0 23143 1024 dev1 38751 1024 dev2 30484 1024 dev3 05590 1024 mdadm -C --force -c 128 -l raid6 -n 6 -a /dev/md9 /dev/loop10 /dev/loop11 /dev/loop12 /dev/loop13 missing missing mdadm: /dev/loop10 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:24:15 2005 mdadm: /dev/loop11 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:24:15 2005 mdadm: /dev/loop12 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:24:15 2005 mdadm: /dev/loop13 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:24:15 2005 Continue creating array? y mdadm: array /dev/md9 started. md9 : active raid6 loop13[3] loop12[2] loop11[1] loop10[0] 63189 7680 mdadm -C --force -c 128 -l raid6 -n 6 -a /dev/md9 /dev/loop13 /dev/loop12 /dev/loop11 /dev/loop10 missing missing mdadm: /dev/loop13 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:29:20 2005 mdadm: /dev/loop12 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:29:20 2005 mdadm: /dev/loop11 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:29:20 2005 mdadm: /dev/loop10 appears to be part of a raid array: level=raid6 devices=6 ctime=Sat Dec 3 15:29:20 2005 Continue creating array? y mdadm: array /dev/md9 started. md9 : active raid6 loop10[3] loop11[2] loop12[1] loop13[0] 58879 7680 /dev/loop10 23143 1024 /dev/loop11 38751 1024 /dev/loop12 30484 1024 /dev/loop13 05590 1024 - To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html