Я использую инструмент «topas» для быстрого просмотра статистики ЦП, памяти и диска на машине AIX. Я понимаю цифры в разделе диска, но не знаю, как определить, какие файловые системы находятся на дисках, показанных в topas. Вот пример вывода из раздела с дисками:
Disk Busy% KBPS TPS KB-Read KB-Writ
power123 72.6 2.9K 330.8 2.9K 0.0
disk1234 58.2 1.5K 169.7 1.5K 0.0
hdisk234 53.2 1.4K 161.2 1.4K 0.0
power345 40.8 262.7 65.7 262.7 0.0
...
Есть ли инструмент командной строки, который поможет мне определить, какие файловые системы на каких дисках смонтированы?
Я знаю команду lsdev -C -c disk
, но это просто список всех дисков, а не то, какие файловые системы с какими дисками идут.
Заранее спасибо!
РЕДАКТИРОВАТЬ В ответ на комментарий ниже (спасибо за ввод!) Вот пример вывода команды "mount":
node mounted mounted vfs date options over
---- ------- --------- --- ------------ ------- ---------
/dev/hd0 / jfs Dec 17 08:04 rw, log =/dev/hd8
/dev/hd3 /tmp jfs Dec 17 08:04 rw, log =/dev/hd8
/dev/hd1 /home jfs Dec 17 08:06 rw, log =/dev/hd8
/dev/hd2 /usr jfs Dec 17 08:06 rw, log =/dev/hd8
Ладно - немного покопавшись, я думаю, что нашел.
Сначала я запускаю lspv, чтобы получить список дисков и группу томов:
lspv
power123 pvg11 active
disk1234 pvg12 active
hdisk234 pvg12 active
power345 pvg14 active
Затем я беру группу томов и запускаю на ней lsvg:
lsvg -l pvg11
pvg11:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
varcorelv jfs2 12203 12203 11 open/syncd /var/core
Написать сценарий, объединяющий эти 2 шага, должно быть легко.
Спасибо всем, кто помог!
lspv | awk '{ print $1, $3 }' | while read hd vg
do
lspv -l $hd \
| grep -v "N/A" \
| grep -v ":" \
| grep -v NAME \
| awk -v vg="$vg" -v hd="$hd" '{ print "HD: ", hd, "VG: ", vg, " VOL: ", $1, " Mount: ", $5 }'
done
Я создал приведенный выше сценарий на основе информации, найденной на этой странице.
Он выводит список, подобный приведенному ниже:
HD: hdisk0 VG: rootvg VOL: hd1 Mount: /home
HD: hdisk0 VG: rootvg VOL: hd3 Mount: /tmp
HD: hdisk0 VG: rootvg VOL: hd9var Mount: /var
HD: hdisk0 VG: rootvg VOL: hd2 Mount: /usr
HD: hdisk0 VG: rootvg VOL: hd4 Mount: /
HD: hdisk0 VG: rootvg VOL: livedump Mount: /var/adm/ras/livedump
HD: hdisk0 VG: rootvg VOL: hd11admin Mount: /admin
HD: hdisk1 VG: rootvg VOL: hd4 Mount: /
HD: hdisk1 VG: rootvg VOL: fslv00 Mount: /ora01
HD: hdisk2 VG: volumegroup1 VOL: data02lv Mount: /oradata02
HD: hdisk2 VG: volumegroup1 VOL: undolv Mount: /oraundo
HD: hdisk2 VG: volumegroup1 VOL: fslv01 Mount: /QueueMessages
HD: hdisk3 VG: volumegroup1 VOL: redo01lv Mount: /oraredo01
HD: hdisk3 VG: volumegroup1 VOL: data03lv Mount: /oradata03
HD: hdisk3 VG: volumegroup1 VOL: arclv Mount: /oraarcredo
HD: hdisk4 VG: volumegroup1 VOL: redo02lv Mount: /oraredo02
HD: hdisk4 VG: volumegroup1 VOL: data01lv Mount: /oradata01
HD: hdisk4 VG: volumegroup1 VOL: data04lv Mount: /oradata04
HD: hdisk5 VG: volumegroup2 VOL: imagelv Mount: /oraimages
HD: hdisk6 VG: volumegroup2 VOL: imagelv Mount: /oraimages
HD: hdisk7 VG: volumegroup2 VOL: imagelv Mount: /oraimages
HD: hdisk8 VG: volumegroup2 VOL: imagelv Mount: /oraimages
Более простой способ получить список LV для определенного PV - написать сценарий вокруг этого:
lspv -M hdisk14
основной вывод:
hdisk14:1-87
hdisk14:88 lv13:143
hdisk14:89 lv13:144
hdisk14:90 lv13:145
hdisk14:91 lv13:146
hdisk14:92 lv13:147
Обычно линии имеют форму:
PVname:PPnum [LVname: LPnum [:Copynum] [PPstate]]
Достаточно легко вырезать все ненужные поля и оставить только PVname и LVname. Затем подключитесь к sort -u
.
Ответ в выводе вашей команды монтирования; это журналируемые файловые системы AIX (jfs).
Самый простой способ - просто запустить
lspv -l hdisk0
В нем будут перечислены логические тома и файловые системы на PV (физическом томе), который вы передаете в качестве параметра.
lspv -l hdisk0 hdisk0: ИМЯ LV LP PPs ТОЧКА МОНТАЖА ДЛЯ РАСПРЕДЕЛЕНИЯ hd5 2 2 02..00..00..00..00 / blv hd6 12 12 00..12..00..00..00 Н / Д hd1 1 1 00..00..01..00..00 / home hd9var 45 45 00..05..05..00..35 / var
Столбцы LP и PP указывают, сколько логических и физических разделов выделено на этом диске для каждой файловой системы, поскольку каждая файловая система может быть распределена по нескольким PV.
Ewan
С помощью команды mount у вас есть LV вашей FS.
/dev/lv_titi ... /titi
С помощью команды lslv -m вы можете увидеть карту lv:
lslv -l lv_titi :
LP PP1 PV1 PP2 PV2 PP3 PV3
0001 0207 hdisk1
0002 0208 hdisk1
0003 0209 hdisk1
0004 0210 hdisk1
0005 0211 hdisk1
0006 0212 hdisk1
0007 0213 hdisk1
0008 0214 hdisk1
Я создал сценарий, в котором вы указываете VG в качестве параметра, в котором будет отображаться карта всех LV этого vg:
if [[ ! $# -eq 1 ]]
then
echo "Syntaxe : lvmap VG"
exit 1
else
for i in `lsvg -l $1 | grep -v $1 | grep -v "LV NAME" |awk '{print $1}'`
do echo $i
lslv -m $i | awk '{print $3 " " $5}' | sort | uniq
read
done
fi