我使用工具“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 上。
伊万