Bug 1375157
Summary: | virt-v2v: -i ova: Permission denied when using libvirt and running as root | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | mxie <mxie> | ||||||
Component: | libguestfs | Assignee: | Richard W.M. Jones <rjones> | ||||||
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||
Severity: | low | Docs Contact: | |||||||
Priority: | low | ||||||||
Version: | 7.3 | CC: | blanch, juzhou, kuwei, mxie, mzhan, ptoscano, rjones, tzheng, xiaodwan | ||||||
Target Milestone: | rc | ||||||||
Target Release: | --- | ||||||||
Hardware: | x86_64 | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | V2V | ||||||||
Fixed In Version: | libguestfs-1.36.1-1.el7 | Doc Type: | If docs needed, set a value | ||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2017-08-01 22:11:26 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: | 890291, 1045069, 1359086, 1430680 | ||||||||
Bug Blocks: | 1401400 | ||||||||
Attachments: |
|
Description
mxie@redhat.com
2016-09-12 10:25:59 UTC
Created attachment 1200146 [details]
permission-v2v.log
This is a variation of the "libvirt has no session qemu for root" bug (in libvirt). virt-v2v unpacks the OVA into a temporary directory, creating files and directories as root with permissions like 0600. Libvirt runs qemu as non-root user qemu.qemu. Either /var/tmp/ova.puFtEh or /var/tmp/ova.puFtEh/rhel6.8-vmware is not readable by qemu.qemu, and we see this failure. (In reply to Richard W.M. Jones from comment #2) > This is a variation of the "libvirt has no session qemu for root" bug > (in libvirt). ... which should be bug 890291 (leaving it here for reference). Created attachment 1200173 [details]
test-ova.ova
Reproduce the bug using the attached dummy OVA file, and
the following command which must be run *as root*:
# virt-v2v -i ova test-ova.ova -o null -of qcow2
[ 0.0] Opening the source -i ova test-ova.ova
[ 0.0] Creating an overlay to protect the source from being modified
[ 0.1] Initializing the target -o null
[ 0.1] Opening the overlay
virt-v2v: error: libguestfs error: could not create appliance through
libvirt.
Try running qemu directly without libvirt using this environment variable:
export LIBGUESTFS_BACKEND=direct
Original error from libvirt: Cannot access backing file
'/var/tmp/ova.tlxP2U/test-ova.vmdk' of storage file
'/var/tmp/v2vovld54bdb.qcow2' (as uid:107, gid:107): Permission denied
[code=38 int1=13]
I posted a patch: https://www.redhat.com/archives/libguestfs/2016-September/msg00063.html # virt-v2v -i ova test-ova.ova -o null -of qcow2 [ 0.0] Opening the source -i ova test-ova.ova virt-v2v: warning: making OVA directory public readable to workaround libvirt bug https://bugzilla.redhat.com/890291 [ 0.0] Creating an overlay to protect the source from being modified [ 0.1] Initializing the target -o null [ 0.1] Opening the overlay [ 15.2] Inspecting the overlay etc I pushed this patch upstream over some objections because we now have customers reporting it to me and a customer solution on RHN (https://access.redhat.com/solutions/2110391). Some fix is needed even if it's not ideal. Upstream commit is: https://github.com/libguestfs/libguestfs/commit/d9b2a16c71d0c87195e28c1325fd83b344741339 From bug 1430680,verify the bug with below builds again: virt-v2v-1.36.2-2.el7.x86_64 libguestfs-1.36.2-2.el7.x86_64 libvirt-3.1.0-2.el7.x86_64 qemu-kvm-rhev-2.8.0-6.el7.x86_64 Verify steps: 1.Convert a guest from ova file by v2v # virt-v2v -i ova rhel6.7-efi.ova -o null -of qcow2 [ 0.0] Opening the source -i ova rhel6.7-efi.ova virt-v2v: warning: making OVA directory public readable to work around libvirt bug https://bugzilla.redhat.com/1045069 [ 28.1] Creating an overlay to protect the source from being modified [ 28.4] Initializing the target -o null [ 28.4] Opening the overlay [ 30.2] Inspecting the overlay [ 44.3] Checking for sufficient free disk space in the guest [ 44.3] Estimating space required on target for each disk [ 44.3] Converting Red Hat Enterprise Linux Server release 6.7 Beta (Santiago) to run on KVM virt-v2v: This guest has virtio drivers installed. [ 120.5] Mapping filesystem data to avoid copying unused and blank areas virt-v2v: warning: fstrim on guest filesystem /dev/sda1 failed. Usually you can ignore this message. To find out more read "Trimming" in virt-v2v(1). Original message: fstrim: fstrim: /sysroot/: the discard operation is not supported [ 120.7] Closing the overlay [ 121.0] Checking if the guest needs BIOS or UEFI to boot virt-v2v: This guest requires UEFI on the target to boot. [ 121.0] Assigning disks to buses [ 121.0] Copying disk 1/1 to /var/tmp/null.hSQkWU/sda (qcow2) (100.00/100%) [ 147.7] Creating output metadata [ 147.7] Finishing off Result : There is error info about permission when convert a guest from ova file by v2v 2:Reboot test server to verify it again. # virt-v2v -i ova rhel6.7-efi.ova -o null -of raw Result: There is error info when convert a guest from ova file by v2v So,I think we could move this to VERIFIED Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2017:2023 |