Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #
- while getopts ":Dd:p:" optname
- do
- case "$optname" in
- "p")
- # echo "Devices in the array"
- MD_dev=$(echo "${OPTARG}"| sed 's/\/dev\///')
- dev_count=$(cat /sys/block/$MD_dev/md/raid_disks)
- echo -e "{\n\t\"data\":["
- for (( count=0; count<dev_count; count++ ))
- do
- device_name=$(ls -la /sys/block/$MD_dev/md/rd$count/ | grep "block " | sed 's|.*block/||')
- if ((count<dev_count-1));
- then echo -e "\t{ \"{#MDDEV_NAME}\":\t\"${device_name}\" },"
- else echo -e "\t{ \"{#MDDEV_NAME}\":\t\"${device_name}\" }"
- fi
- done
- echo -e "\t]\n}"
- ;;
- "d")
- # echo "Devices in the array"
- MD_dev=$(echo "${OPTARG}"| sed 's/\/dev\///')
- dev_count=$(cat /sys/block/$MD_dev/md/raid_disks)
- echo -e "{\n\t\"data\":["
- for (( count=0; count<dev_count; count++ ))
- do
- device_name=$(ls -la /sys/block/$MD_dev/md/rd$count/ | grep "block " | sed 's|.*block/||' | sed -r 's/\/.+//')
- if ((count<dev_count-1));
- then echo -e "\t{ \"{#BLK_NAME}\":\t\"${device_name}\" },"
- else echo -e "\t{ \"{#BLK_NAME}\":\t\"${device_name}\" }"
- fi
- done
- echo -e "\t]\n}"
- ;;
- "D")
- # echo "Discovery"
- echo -e "{\n\t\"data\":["
- typeset -i nbLines
- typeset -i cntLines=0
- nbLines=`cat /proc/mdstat | grep ^md | wc -l`
- cat /proc/mdstat | grep ^md | while read line
- do
- cntLines=${cntLines}+1
- MDdev=`echo $line | awk '{print $1}'`
- if [ ${cntLines} -eq ${nbLines} ]; then
- echo -e "\t{ \"{#MD_DEVICE}\":\t\"${MDdev}\" }"
- else
- echo -e "\t{ \"{#MD_DEVICE}\":\t\"${MDdev}\" },"
- fi
- done
- echo -e "\t]\n}"
- ;;
- "?")
- echo "Unknown option $OPTARG"
- ;;
- *)
- echo "Unknown error while processing options"
- ;;
- esac
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement