[Users] issue with conversion of ESXi 5 centos VM to fedora19 ovirt host

Madhav V Diwan mdiwan at diwanconsulting.com
Fri Jan 10 22:26:34 UTC 2014



i have some spare disk on this server that i can make a /tmp partition
from .. i am going to try that approach to rule out the tmpfs  as an
issue

but woe to those who need such a large physical tmp partition for VM
conversions.. 



-----Original Message-----
From: Madhav V Diwan <mdiwan at diwanconsulting.com>
To: Richard W.M. Jones <rjones at redhat.com>
Cc: mbooth at redhat.com, users at ovirt.org
Subject: Re: [Users] issue with conversion of ESXi 5 centos VM to
fedora19 ovirt host
Date: Fri, 10 Jan 2014 14:37:16 -0500


[mdiwan at server3 ~]$ sudo getenforce
[sudo] password for mdiwan: 
Disabled

[mdiwan at server3 ~]$ cat /etc/fstab | grep "tmp"

[mdiwan at server3 ~]$ mount | grep "/tmp"
tmpfs on /tmp type tmpfs (rw)


selinux is disabled on this server .. at least till we figure this out


but yes /tmp is a tmpfs mount 

which makes me wonder how it holds a 100 gig file.. it clearly
doesn't ... it seems to have a temporary  "hardlink" to the OVIRT nfs
export share when virt-v2v2 is running???






-----Original Message-----
From: Richard W.M. Jones <rjones at redhat.com>
To: Madhav V Diwan <mdiwan at diwanconsulting.com>
Cc: mbooth at redhat.com, users at ovirt.org
Subject: Re: [Users] issue with conversion of ESXi 5 centos VM to
fedora19 ovirt host
Date: Fri, 10 Jan 2014 18:53:03 +0000

On Fri, Jan 10, 2014 at 12:48:43PM -0500, Madhav V Diwan wrote:
> 
> Sorry richard 
> 
> seems that it failed even when i tried to set that variable
> 
> Maybe i set up the command incorrectly?
> 
> here is what i ran
> 
> 
> [root at server3 ~]# cat convrtesxhost.sh
> 
> #!/bin/bash
> 
> export LIBGUESTFS_TRACE=1 
> export LIBGUESTFS_DEBUG=1
> export LIBGUESTFS_BACKEND=direct
> 
> virt-v2v -ic esx://ESX.decllc.biz/?no_verify=1 -o rhev -os
> server3.decllc.biz:/localstorage/nfs --network ovirtmgmt razDC  2>&1 |
> tee /var/log/virt-v2v.log 

It looks like this is correctly setting the environment variable:

> [root at server3 ~]# ./convrtesxhost.sh 
> virt-v2v: Transferring storage volume razDC_razDC: 107374182400 bytes
> libguestfs: trace: set_verbose true
> libguestfs: trace: set_verbose = 0
> libguestfs: trace: set_backend "direct"
> libguestfs: trace: set_backend = 0

^ see that it's set correctly here.

[...]
> libguestfs: trace: add_drive
> "/tmp/dgsXFuqz0X/8eff2927-3bff-4b15-bdd0-8c4e0f40652d/v2v.nCJ17ysL/e1660d18-b67b-4002-9835-10c654e7ee0e/a7afe4c5-ece8-4022-a8ec-964984a8db17" "format:raw" "iface:ide" "name:sda"
> libguestfs: trace: add_drive = -1 (error)
> /tmp/dgsXFuqz0X/8eff2927-3bff-4b15-bdd0-8c4e0f40652d/v2v.nCJ17ysL/e1660d18-b67b-4002-9835-10c654e7ee0e/a7afe4c5-ece8-4022-a8ec-964984a8db17: Permission denied at /usr/lib64/perl5/vendor_perl/Sys/Guestfs.pm line 670.

So this is not the bug I was thinking of.

(In fact it's obvious now I look closer.  This has nothing to do with
libvirt, and the error message is being generated by libguestfs
earlier on)

Is there some other reason that libguestfs would not be able to open
that file in /tmp?  Perhaps there is an SELinux AVC?  Or /tmp has
strange permissions ...?  Is /tmp a tmpfs mount?

I believe the actual code path you're hitting is this one:

https://github.com/libguestfs/libguestfs/blob/stable-1.22/src/drives.c#L660

I'm not exactly sure why that fails.

Rich.





More information about the Users mailing list