高级脚本分析-求助
#!/bin/sh#$1 md device#exit 1 scsi1 disk is faulty#exit 2 scsi2 disk is faulty#exit 0disks=`ls /sys/block/$1/md | grep dev-sd*`gotfaulty(){ for i in $disks do if $(grep faulty /sys/block/$1/md/$i/state > /dev/null) then bad=`echo $i | awk 'BEGIN {FS="-"} {print $2}'` if [ -e /sys/bus/scsi/devices/0\:0\:0\:0/block\:sd*/$bad ] then exit 1 else exit 2 fi fi done exit 0}#No faulty disk found, faulty disk has been removednofaulty(){ for i in $disks do if $(grep in_sync /sys/block/$1/md/$i/state > /dev/null) then good=`echo $i | awk 'BEGIN {FS="-"} {print $2}'` if [ -e /sys/bus/scsi/devices/0\:0\:0\:0/block\:sd*/$good ] then exit 2 else exit 1 fi fi done}if [ $2 == "no" ]then nofaulty $1else gotfaulty $1fiif [ -e /sys/bus/scsi/devices/0\:0\:0\:0/block\:sd*/$bad ]