При большом количестве дисков, субдисков, плексов и томов бывает сложно разобраться, что к чему. Конечно, основная команда, по любому, vxprint, но из нее можно получить немножко больше. Ниже приведены несколько простых скриптиков должны в этом помочь.
Условные обозначения :

  • DG_01 — дисковая группа
  • DISK_01 — имя диска в vxvm
  • ARRAY_NAME_01 — имя дискового массива в vxvm

Вывести все тома с количеством плексов больше 1
vxprint -g DG_01 -v -F "%name %use_type %plexes " -e "v_pl_num > 1 "

Вывести все плексы с количеством субдисков больше 1
vxprint -g DG_01 -p -F "%name" -e "pl_sd_num > 1 "

Посмотреть неоткрытые тома
vxprint -v -e "! open"

Посмотреть, какие тома, плексы, субдиски расположены на диске
vxprint -g DG_01 -rt DISK_01

Посмотреть тома, плексы, субдиски в дисковой группе
vxprint -g DG_01 -p -F "%vname %name %sdaslist"

Место, занятое на определенном диске
vxprint -g DG_01 -ht | grep "^sd"| grep DISK_01 | awk '{i+=$6}END{print i/2/1024/1024}'

Показать состояние путей по mpxio
for i in `vxdisk list | awk '{ print $1 }' |grep ^ARRAY_NAME_01`; do echo $i; A=`vxdisk list $i | grep state= | awk '{print $1}'`; luxadm disp /dev/rdsk/$A | grep State ; done

Показать состояние путей по vxdmp
for i in `vxdisk list | awk '{ print $1 }'`; do echo $i; vxdisk list $i | grep state=; done

Показать 16-ричные номера дисков (при mpxio)
for i in `vxdisk list | grep ARRAY_NAME_01 | awk '{ print $1} '`; do echo $i; vxdisk list $i | awk '/state=enabled/{ print "luxadm disp /dev/rdsk/"$1 " |grep Address " } ' | sh ;done

2 комментария на запись “Анализируй это (тома в vxvm)”

  1. mrbungle пишет:

    А как можно просмотреть только диски принадлежащие дисковым группам, но все а не только со свободным местом которые выводит «vxdg free»?

  2. ikorolev пишет:

    эээ, vxdisk list ?