如何知道 AIX 中磁盘上有哪些文件系统?

如何知道 AIX 中磁盘上有哪些文件系统?

我使用工具“topas”快速查看 AIX 机器上的 CPU、内存和磁盘统计信息。我了解磁盘部分的数字,但我不知道如何判断 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

答案1

好的 - 经过一段时间的探索,我想我找到了它。

首先,我运行 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

答案3

获取特定 PV 上的 LV 列表的更直接的方法是围绕此编写脚本:

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

答案4

目前最简单的方法就是运行

lspv -l hdisk0

它将列出你作为参数传递的 PV(物理卷)上的逻辑卷和文件系统

lspv -l hdisk0 hdisk0:LV 名称 LPs PPs 分布 挂载点 hd5 2 2 02..00..00..00..00 /blv hd6 12 12 00..12..00..00..00 N/A hd1 1 1 00..00..01..00..00 /home hd9var 45 45 00..05..05..00..35 /var

LPs 和 PPs 列指的是该磁盘上为每个文件系统分配了多少个逻辑和物理分区,因为每个文件系统可以分布在多个 PV 上。

伊万

相关内容