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(a)diwanconsulting.com>
To: Richard W.M. Jones <rjones(a)redhat.com>
Cc: mbooth(a)redhat.com, users(a)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@server3 ~]$ sudo getenforce
[sudo] password for mdiwan:
Disabled
[mdiwan@server3 ~]$ cat /etc/fstab | grep "tmp"
[mdiwan@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(a)redhat.com>
To: Madhav V Diwan <mdiwan(a)diwanconsulting.com>
Cc: mbooth(a)redhat.com, users(a)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@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@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.