21.9.3. 运行 virt-inspector
您可以针对任何磁盘镜像或 libvirt 客户机虚拟机运行 virt-inspector,如下例所示:
$ virt-inspector -a disk.img > report.xml
或者如下所示:
$ virt-inspector -d GuestName > report.xml
结果将是一个 XML 报告(
report.xml
)。XML 文件的主要组件是一个顶层 <operatingsytems>
元素,它通常包含一个 <operatingsystem>
元素,如下所示:
<operatingsystems> <operatingsystem> <!-- the type of operating system and Linux distribution --> <name>linux</name> <distro>rhel</distro> <!-- the name, version and architecture --> <product_name>Red Hat Enterprise Linux Server release 6.4 </product_name> <major_version>6</major_version> <minor_version>4</minor_version> <package_format>rpm</package_format> <package_management>yum</package_management> <root>/dev/VolGroup/lv_root</root> <!-- how the filesystems would be mounted when live --> <mountpoints> <mountpoint dev="/dev/VolGroup/lv_root">/</mountpoint> <mountpoint dev="/dev/sda1">/boot</mountpoint> <mountpoint dev="/dev/VolGroup/lv_swap">swap</mountpoint> </mountpoints> < !-- filesystems--> <filesystem dev="/dev/VolGroup/lv_root"> <label></label> <uuid>b24d9161-5613-4ab8-8649-f27a8a8068d3</uuid> <type>ext4</type> <content>linux-root</content> <spec>/dev/mapper/VolGroup-lv_root</spec> </filesystem> <filesystem dev="/dev/VolGroup/lv_swap"> <type>swap</type> <spec>/dev/mapper/VolGroup-lv_swap</spec> </filesystem> <!-- packages installed --> <applications> <application> <name>firefox</name> <version>3.5.5</version> <release>1.fc12</release> </application> </applications> </operatingsystem> </operatingsystems>
最能处理这些报告是使用 W3C 标准 XPath 查询来完成的。Red Hat Enterprise Linux 7 附带 xpath 命令行程序,可用于简单的实例。但是,为了长期和高级使用,您应该考虑使用 XPath 库和您首选的编程语言。
例如,您可以使用以下 XPath 查询列出所有文件系统设备:
$ virt-inspector GuestName | xpath //filesystem/@dev
Found 3 nodes:
-- NODE --
dev="/dev/sda1"
-- NODE --
dev="/dev/vg_f12x64/lv_root"
-- NODE --
dev="/dev/vg_f12x64/lv_swap"
或者使用以下命令列出所有安装应用程序的名称:
$ virt-inspector GuestName | xpath //application/name
[...long list...]