How can I tell what filesystems are on a disk in AIX?

I use the tool "topas" to get a quick peek at CPU, memory, and disk statistics on an AIX machine. I understand the numbers on the disk section, but what I don't know is how to tell which filesystem(s) are on the disks shown in topas. Here is some sample output from the disk section:

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
...

Is there a command line tool to help me determine which filesystems are mounted on which disks?

I know the command lsdev -C -c disk, but that just lists all disks, not which filesystems go with which disks.

Thanks in advance!

EDIT In response to the comment below (thanks for the input!), here is some sample output of the "mount" command:

    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

Okay - after a while of poking around, I think I found it.

First, I run lspv to get the list of disks and the volume group:

lspv
power123        pvg11        active
disk1234        pvg12        active
hdisk234        pvg12        active
power345        pvg14        active

Then I take a volume group, and run an lsvg on it:

lsvg -l pvg11
pvg11:
LV NAME             TYPE       LPs   PPs   PVs  LV STATE      MOUNT POINT
varcorelv          jfs2       12203 12203  11   open/syncd    /var/core

It should be easy to write a script to combine these 2 steps.

Thanks to all who helped!


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

I built the above script based on the information found on this page.

It outputs a list like the one below:

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

A more direct way to obtain a list of LVs on a specific PV is to script around this:

lspv -M hdisk14

basic output:

hdisk14:1-87
hdisk14:88 lv13:143
hdisk14:89 lv13:144
hdisk14:90 lv13:145
hdisk14:91 lv13:146
hdisk14:92 lv13:147 

Generally the lines are the form of:

PVname:PPnum [LVname: LPnum [:Copynum] [PPstate]]

It is fairly easy to cut all the unneeded fields and leave only PVname and LVname. Then pipe to sort -u.