[libvirt-users] [libvirt] Fail to import available VM image

Jun Koi junkoi2004 at gmail.com
Wed Feb 15 04:56:10 UTC 2012


On Wed, Feb 15, 2012 at 11:32 AM, Alex Jia <ajia at redhat.com> wrote:
> On 02/15/2012 10:53 AM, Jun Koi wrote:
>>
>> On Wed, Feb 15, 2012 at 1:01 AM, Laine Stump<laine at laine.org>  wrote:
>>>
>>> On 02/14/2012 11:01 AM, Jun Koi wrote:
>>>>
>>>> On Tue, Feb 14, 2012 at 11:47 PM, Alex Jia<ajia at redhat.com>  wrote:
>>>>>
>>>>> Hi Jun,
>>>>> I assume you haven't changed libvirt default URI, it may be a issue,
>>>>> I want to know whether it works for you if you explicitly specify
>>>>> --connect qemu:///system with virt-install? I think a root reason
>>>>> probably is your disk image location, the log said it can't find
>>>>> storage volume, if you put img.winp under the /var/lib/libvirt/images,
>>>>> then give a disk absolute path to virt-install, Does it work for you?
>>>>
>>>> ok, i change the command a bit, and it went further.
>>>> here is how i did:
>>>>
>>>> (1) compiled everything from source, then install (make install) to my
>>>> Ubuntu
>>>>
>>>> (2) start libvirtd on commandline
>>>> # libvirtd -d
>>>>
>>>> (3) import my KVM image to libvirt
>>>>
>>>> $ virt-install --connect qemu:///system -n winxp -r 800 --accelerate
>>>> --vnc -v --noautoconsole --import -f /home/jun/img/img.winxp
>>>>
>>>> it failed, and the log is like below:
>>>>
>>>> ....
>>>> [Tue, 14 Feb 2012 23:51:49 virt-install 3831] DEBUG (cli:326)
>>>> Requesting libvirt URI qemu:///system
>>>> [Tue, 14 Feb 2012 23:51:51 virt-install 3831] DEBUG (cli:328) Received
>>>> libvirt URI qemu:///system
>>>> [Tue, 14 Feb 2012 23:51:52 virt-install 3831] DEBUG (virt-install:259)
>>>> Requesting virt method 'hvm', hv type 'default'.
>>>> [Tue, 14 Feb 2012 23:51:52 virt-install 3831] DEBUG (virt-install:469)
>>>> Received virt method 'hvm'
>>>> [Tue, 14 Feb 2012 23:51:52 virt-install 3831] DEBUG (virt-install:470)
>>>> Hypervisor name is 'kvm'
>>>> [Tue, 14 Feb 2012 23:51:52 virt-install 3831] ERROR (cli:439) Error in
>>>> network device parameters: Virtual network 'default' has not been
>>>> started.
>>>> [Tue, 14 Feb 2012 23:51:52 virt-install 3831] DEBUG (cli:440)
>>>> Traceback (most recent call last):
>>>>   File "/usr/local/lib/python2.6/dist-packages/virtinst/cli.py", line
>>>> 884, in get_networks
>>>>     dev = parse_network(guest, netstr, mac=mac)
>>>>   File "/usr/local/lib/python2.6/dist-packages/virtinst/cli.py", line
>>>> 1642, in parse_network
>>>>     bridge=opts.get("bridge"))
>>>>   File
>>>> "/usr/local/lib/python2.6/dist-packages/virtinst/VirtualNetworkInterface.py",
>>>> line 153, in __init__
>>>>     self.network = network
>>>>   File
>>>> "/usr/local/lib/python2.6/dist-packages/virtinst/XMLBuilderDomain.py",
>>>> line 309, in new_setter
>>>>     fset(self, val, *args, **kwargs)
>>>>   File
>>>> "/usr/local/lib/python2.6/dist-packages/virtinst/VirtualNetworkInterface.py",
>>>> line 257, in set_network
>>>>     "started.") % newnet)
>>>> ValueError: Virtual network 'default' has not been started.
>>>
>>> A very common cause of this problem is that a systemwide instance of
>>> dnsmasq is already (erroneously) listening on the bridge created by
>>> libvirt for the default network. I took your email as an oppurtunity to
>>> write an entry in the new Troubleshooting section of the libvirt wiki.
>>> It will explain to you how to solve your problem (*if* this is your
>>> problem, of course :-).
>>
>> this is not my problem, as i dont use dnsmasq.
>
> You means you haven't a dnsmasq process is running before starting virtual
> network 'default', right? I want to know a cmdline argument of the dnsmasq
> process by ps -ef|grep dnsmasq
>
>> below is my /var/log/libvirt/libvirtd.log
>>
>> ....
>> 2012-02-15 01:54:18.358+0000: 10580: info : libvirt version: 0.9.10
>> 2012-02-15 01:54:18.358+0000: 10580: error : virCommandWait:2308 :
>> internal error Child process (/sbin/iptables --table mangle --delete
>> POSTROUTING --out-interface virbr0 --protocol udp --destination-port
>> 68 --jump CHECKSUM --checksum-fill) status unexpected: exit status 2
>> 2012-02-15 01:54:18.367+0000: 10580: error : virCommandWait:2308 :
>> internal error Child process (/sbin/iptables --table mangle --insert
>> POSTROUTING --out-interface virbr0 --protocol udp --destination-port
>> 68 --jump CHECKSUM --checksum-fill) status unexpected: exit status 2
>> 2012-02-15 01:54:18.367+0000: 10580: warning :
>> networkAddGeneralIptablesRules:1301 : Could not add rule to fixup DHCP
>> response checksums on network 'default'.
>> 2012-02-15 01:54:18.367+0000: 10580: warning :
>> networkAddGeneralIptablesRules:1302 : May need to update iptables
>> package&  kernel to support CHECKSUM rule.
>>
>>
>>
>> and currently output of "brctl show" is:
>> # brctl show
>> bridge name     bridge id               STP enabled     interfaces
>> pan0            8000.000000000000       no
>> virbr0          8000.000000000000       yes
>
> If you manually stop virtual network 'default' and dnsmasq service then
> restart 'default'
> network, does it work for you? for instance:
> % virsh net-destroy default
>
> % service dnsmasq status
> if your dnsmasq is still active then stop it, otherwise, please ignore the
> following step:
> % service dnsmasq stop
>
> make sure you haven't any dnsmasq process is running by ps -ef|grep dnsmasq,
> then
> active 'default' network again:
>
> % virsh net-start default
> if the above step is failed, please give related logs and virsh output.
>
> what's dnsmasq process with cmdline?
> % ps -ef|grep dnsmasq
>
>
> Good Luck!

thanks so much, Alex. it works for me now!

it turns out i uninstalled the dnsmasq, but it seems there is
dependency on it (why we need dnsmasq, anyway?). so i reinstalled it
again, but then disable dnsmasq service. then the default virtual
network works.

a quesiton: i imported the existent KVM image with command:

virt-install --connect qemu:///system -n winxp -r 800 --accelerate
--vnc -v --noautoconsole --import -f /home/jun/img/img.winxp

but this is not really correct, as the above command doesnt do something for me:

(1) it doesnt tell the image format (qcow2 in my case)

(2) it doesnt setup the mouse cursor (-usb -usbdevice tablet)

(3) it doesnt tell the network card model.

so questions are:

(1) can i tell virt-install of of above info? i looked at the
virt-install manual, but dont see anywhere to do that.

(2) in case virt-install cannot do that, i guess i must use another
tool to modify /etc/libvirt/qemu/winxp.xml to reflect my requirement.
but then i tried virt-manager (0.9.1), and it doesnt even let me
modify the configuration of my domain.

so which tool should i use to modify available libvirt domain?

thanks again!
Jun
> Alex
>
>> so what is wrong with my system?
>>
>> thanks,
>> Jun
>>
>> --
>> libvir-list mailing list
>> libvir-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/libvir-list
>
>




More information about the libvirt-users mailing list