| #!/bin/bash |
| |
| levels=(raid0 raid1 raid4 raid5 raid6 raid10) |
| |
| if [ "$LINEAR" == "yes" ]; then |
| levels+=( linear ) |
| fi |
| |
| for metadata in 0.9 1.0 1.1 1.2 |
| do |
| for level in ${levels[@]} |
| do |
| if [[ $metadata == "0.9" && $level == "raid0" ]]; |
| then |
| continue |
| fi |
| mdadm -CR $md0 -l $level -n 4 --metadata=$metadata \ |
| $dev1 $dev2 $dev3 $dev4 --assume-clean |
| check nosync |
| check $level |
| udevadm settle |
| mdadm -ro $md0 |
| check readonly |
| state=$(cat /sys/block/md0/md/array_state) |
| [ "$state" == "readonly" ] || |
| die "array_state should be 'readonly', but is $state" |
| mdadm -w $md0 |
| check $level |
| mdadm -S $md0 |
| done |
| done |
| |
| exit 0 |