Bug 1224903
Summary: | 'guestmount: no operating system was found on this disk' for rhel7 be guest on ppc64le host | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Gu Nini <ngu> | ||||||||
Component: | libguestfs | Assignee: | Richard W.M. Jones <rjones> | ||||||||
Status: | CLOSED NOTABUG | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||||
Severity: | unspecified | Docs Contact: | |||||||||
Priority: | unspecified | ||||||||||
Version: | 7.2 | CC: | leiwang, linl, michen, ngu, ptoscano, wshi, xchen, xuhan, ypu, zhengtli | ||||||||
Target Milestone: | rc | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | ppc64le | ||||||||||
OS: | Unspecified | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2016-05-30 05:35:47 UTC | Type: | Bug | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | |||||||||||
Bug Blocks: | 1288337, 1301891 | ||||||||||
Attachments: |
|
Description
Gu Nini
2015-05-26 07:32:24 UTC
Reproduced this bug with the same package.
Test setps:
1. Setup a guest image with the ppc64 iso file RHEL-7.1-20150219.1-Server-ppc64-dvd1.iso.
2. # guestfish -a RHEL-7.1-20150219.1-Server-ppc64.img
Welcome to guestfish, the guest filesystem shell for
editing virtual machine filesystems and disk images.
Type: 'help' for help on commands
'man' to read the manual
'quit' to quit the shell
><fs> run
><fs> inspect-os
><fs>
"inspect-os" fails to find the operating system.
I tested this upstream, and it works there: $ virt-builder --arch ppc64le rhel-7.1 --output rhel-7.1-ppc64le.img $ guestfish --ro -a rhel-7.1-ppc64le.img -i [...] Operating system: Red Hat Enterprise Linux Server release 7.1 (Maipo) /dev/rhel-l/root mounted on / /dev/sda2 mounted on /boot ><fs> inspect-get-arch /dev/rhel-l/root ppc64le On RHEL 7.2 it also works (at least on the virt-builder image): $ guestfish --ro -a rhel-7.1-ppc64le.img -i [...] Operating system: Red Hat Enterprise Linux Server release 7.1 (Maipo) /dev/rhel-l/root mounted on / /dev/sda2 mounted on /boot However the inspect-get-arch function doesn't work on RHEL 7.2: ><fs> inspect-get-arch /dev/rhel-l/root version 1 (SYSV) Where can I get RHEL-7.1-20150219.1-Server-ppc64-dvd1.iso ? (In reply to Richard W.M. Jones from comment #3) > ><fs> inspect-get-arch /dev/rhel-l/root > version 1 (SYSV) As an aside, bug 1211996 should contain the fix for this. So finally I can test this using the disk image. I didn't realize, when writing comment 2, that we are trying to test a ppc64 (big endian) guest disk image. Upstream libguestfs: <?xml version="1.0"?> <operatingsystems> <operatingsystem> <root>/dev/rhel/root</root> <name>linux</name> <arch>ppc64</arch> <distro>rhel</distro> <product_name>Red Hat Enterprise Linux Server release 7.1 (Maipo)</product_name> <major_version>7</major_version> <minor_version>1</minor_version> <package_format>rpm</package_format> <package_management>yum</package_management> <hostname>localhost.localdomain</hostname> <format>installed</format> ... All is working well. RHEL 7.1 ppc64le host, libguestfs-1.28.1-1.36.ael7b.ppc64le: <?xml version="1.0"?> <operatingsystems> <operatingsystem> <root>/dev/rhel/root</root> <name>linux</name> <arch>ppc64</arch> <distro>rhel</distro> <product_name>Red Hat Enterprise Linux Server release 7.1 (Maipo)</product_name> <major_version>7</major_version> <minor_version>1</minor_version> <package_format>rpm</package_format> <package_management>yum</package_management> <hostname>localhost.localdomain</hostname> <format>installed</format> For good measure, I also mounted it: $ mkdir /tmp/mnt $ export LIBGUESTFS_HV=/usr/libexec/qemu-kvm $ export LIBGUESTFS_BACKEND=direct $ guestmount -a /mnt/scratch/bz1224903.img --ro -i /tmp/mnt $ ls /tmp/mnt bin dev home lib64 mnt proc run srv tmp var boot etc lib media opt root sbin sys usr $ cat /tmp/mnt/etc/redhat-release Red Hat Enterprise Linux Server release 7.1 (Maipo) So it's all working for me. If you still have trouble, please run the following commands and attach the full output to the bug: virt-inspector -a /path/to/disk.img -v -x libguestfs-test-tool Also can you take a look at libguestfs-1.28.1-1.37.el7.ppc64le. (In reply to Richard W.M. Jones from comment #6) > So it's all working for me. If you still have trouble, please run the > following commands and attach the full output to the bug: > > virt-inspector -a /path/to/disk.img -v -x > > libguestfs-test-tool Tried with libguestfs-1.28.1-1.36.el7.ppc64le and libguestfs-1.28.1-1.37.el7.ppc64le, bug still get the same problem. The attachments are the outputs. Notice here, the host is ppc64le system and the images we tried here are ppc64be systems. For ppc64le images, this works well. Created attachment 1033702 [details]
The output for virt-inspector.
Created attachment 1033703 [details]
libguestfs-test-tool.output
(In reply to Hu Zhang from comment #9) > Created attachment 1033702 [details] > The output for virt-inspector. This was run using the -1.36 package. Since -1.37 is out there's no point me trying to diagnose suspected problems with older versions. If the problem still occurs with -1.37 then please attach the virt-inspector -v -x ... output from that. (In reply to Hu Zhang from comment #10) > Created attachment 1033703 [details] > libguestfs-test-tool.output This shows successful output using the -1.37 package. Created attachment 1034095 [details]
virt-inspector-1.37.output
(In reply to Hu Zhang from comment #12) > Created attachment 1034095 [details] > virt-inspector-1.37.output The error is: mount -o ro /dev/sda1 /sysroot/ [ 1.426168] SGI XFS with ACLs, security attributes, no debug enabled mount: unknown filesystem type '(null)' guestfsd: error: /dev/sda1 on / (options: 'ro'): mount: unknown filesystem type '(null)' guestfsd: main_loop: proc 73 (mount_ro) took 0.04 seconds libguestfs: trace: mount_ro = -1 (error) Can you check you have the libguestfs-xfs package installed on the host? This package is required in order to inspect any guest which uses XFS. (In reply to Richard W.M. Jones from comment #13) > Can you check you have the libguestfs-xfs package installed on the > host? This package is required in order to inspect any guest which > uses XFS. Yes, the libguestfs-xfs package is installed in all the tests above. # rpm -q libguestfs-xfs libguestfs-xfs-1.28.1-1.37.el7.ppc64le I'm not able to reproduce this. This is my host configuration: libguestfs-1.28.1-1.51.el7.ppc64le libguestfs-tools-c-1.28.1-1.51.el7.ppc64le libguestfs-xfs-1.28.1-1.51.el7.ppc64le qemu-kvm-rhev-2.3.0-22.el7.ppc64le kernel-3.10.0-229.ael7b.ppc64le The test image is a *big endian* guest built by virt-builder. virt-inspector correctly identifies the image, its architecture and the packages installed: <?xml version="1.0"?> <operatingsystems> <operatingsystem> <root>/dev/rhel/root</root> <name>linux</name> <arch>ppc64</arch> <distro>rhel</distro> <product_name>Red Hat Enterprise Linux Server release 7.1 (Maipo)</product_name> <major_version>7</major_version> <minor_version>1</minor_version> <package_format>rpm</package_format> <package_management>yum</package_management> <hostname>localhost.localdomain</hostname> <format>installed</format> <mountpoints> <mountpoint dev="/dev/rhel/root">/</mountpoint> <mountpoint dev="/dev/sda2">/boot</mountpoint> </mountpoints> <filesystems> <filesystem dev="/dev/rhel/root"> <type>xfs</type> <uuid>fb6032da-07c8-4196-a4a8-592583109940</uuid> </filesystem> <filesystem dev="/dev/rhel/swap"> <type>swap</type> <uuid>2ad92975-5590-4c17-8819-c7f4e1517a36</uuid> </filesystem> <filesystem dev="/dev/sda2"> <type>xfs</type> <uuid>9ea22953-b810-462a-bf42-d2d90dff47f9</uuid> </filesystem> </filesystems> <applications> <application> <name>NetworkManager</name> <version>1.0.0</version> <release>14.git20150121.b4ea599c.el7</release> <arch>ppc64</arch> </application> [etc] Please try with a later version of libguestfs, and ensure you have libguestfs-xfs installed on the host too. I can not reproduce this bug either. This is my host configuration: libguestfs-1.32.4-2.el7.ppc64le libguestfs-tools-c-1.32.4-2.el7.ppc64le libguestfs-xfs-1.32.4-2.el7.ppc64le qemu-kvm-rhev-2.3.0-31.el7_2.14.ppc64le kernel-3.10.0-327.el7.ppc64le The test image is a *big endian* guest. The iso is:RHEL-7.1-20150219.1-Server-ppc64-dvd1.iso, I installed with virt-install. The steps: 1. # virt-inspector -a RHEL-7.1-ppc64-lvm.qcow2 <?xml version="1.0"?> <operatingsystems> <operatingsystem> <root>/dev/rhel/root</root> <name>linux</name> <arch>ppc64</arch> <distro>rhel</distro> <product_name>Red Hat Enterprise Linux Server 7.3 Beta (Maipo)</product_name> <major_version>7</major_version> <minor_version>3</minor_version> <package_format>rpm</package_format> <package_management>yum</package_management> <hostname>localhost.localdomain</hostname> <format>installed</format> <mountpoints> <mountpoint dev="/dev/rhel/root">/</mountpoint> <mountpoint dev="/dev/sda2">/boot</mountpoint> </mountpoints> <filesystems> <filesystem dev="/dev/rhel/root"> <type>xfs</type> <uuid>af2a8666-03d1-4334-a28b-96278953679a</uuid> </filesystem> 2. I also tried: # guestmount -a RHEL-7.1-ppc64-lvm.qcow2 --ro -i /tmp/mnt # ls /tmp/mnt/ bin dev home lib64 mnt proc run srv tmp var boot etc lib media opt root sbin sys usr No error occurs. So close it. |