[libvirt] Windows VM doesn't start as Linux one does

Daniel Huhardeaux tech at tootai.net
Thu Nov 12 11:54:07 UTC 2009


Daniel P. Berrange a écrit :

Hi Daniel,

> On Wed, Nov 11, 2009 at 06:56:37PM +0100, Daniel Huhardeaux wrote:
>> My start script -which started without any problem my XPHome VM- is:
>>
>> #!/bin/bash
>>
>> AUDIO="es1370"
>> VGA="std"
>>
>> sudo /usr/bin/kvm -localtime -cdrom /dev/scd0 -boot c -hda 
>> /media/XP/vdisk.img -hdb /media/XP/vdisk1.img -m 512 -soundhw $AUDIO 
>> -vga $VGA\
>>       -net nic,vlan=0 -net vde,vlan=0,sock=/var/run/vde.ctl -usb -smb 
>> public -monitor tcp:127.0.0.1:32011,server,nowait &
> 
> 
>> The XML file for the same VM which fail on boot is:
>>
>> <domain type='kvm'>                              
>>  <name>XPHome</name>                            
>>  <uuid>26e5de74-0841-c4b3-4cc1-e0df0f93cb31</uuid>
>>  <memory>524288</memory>                         
>>  <currentMemory>524288</currentMemory>           
>>  <vcpu>1</vcpu>                                  
>>  <os>                                            
>>    <type arch='x86_64' machine='pc'>hvm</type>   
>>    <boot dev='hd'/>                              
>>  </os>                                           
>>  <features>                                      
>>    <pae/>                                        
>>  </features>
>>  <clock offset='localtime'/>
>>  <on_poweroff>destroy</on_poweroff>
>>  <on_reboot>restart</on_reboot>
>>  <on_crash>restart</on_crash>
>>  <devices>
>>    <emulator>/usr/bin/kvm</emulator>
>>    <disk type='file' device='disk'>
>>      <source file='/media/XP/vdisk.img'/>
>>      <target dev='hda' bus='ide'/>
>>    </disk>
>>    <disk type='file' device='disk'>
>>      <source file='/media/XP/vdisk1.img'/>
>>      <target dev='hdb' bus='ide'/>
>>    </disk>
>>    <disk type='block' device='cdrom'>
>>      <source dev='/dev/cdrom'/>
>>      <target dev='hdc' bus='ide'/>
>>      <readonly/>
>>    </disk>
>>    <interface type='bridge'>
>>      <mac address='54:52:00:7a:ee:01'/>
>>      <source bridge='virbr2'/>
>>    </interface>
>>    <serial type='pty'>
>>      <source path='/dev/pts/6'/>
>>      <target port='0'/>
>>    </serial>
>>    <console type='pty' tty='/dev/pts/6'>
>>      <source path='/dev/pts/6'/>
>>      <target port='0'/>
>>    </console>
>>    <input type='tablet' bus='usb'/>
>>    <input type='mouse' bus='ps2'/>
>>    <graphics type='vnc' port='-1' autoport='yes' keymap='en-us'/>
>>    <sound model='es1370'/>
>>    <video>
>>      <model type='cirrus' vram='9216' heads='1'/>
>>    </video>
>>  </devices>
>> </domain>
> 
> Can you get the libvirt QEMU args from the log file
> 
>   /var/log/libvirt/qemu/XPHome.log
> 
> so we can compare them to the args your custom script
> used. There will probably be some minor difference that's 
> confusing windows

LC_ALL=C 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 
HOME=/home/dh USER=root LOGNAME=root QEMU_AUDIO_DRV=none /usr/bin/kvm -S 
-M pc -m 512 -smp 1 -name XPHome -uuid 
26e5de74-0841-c4b3-4cc1-e0df0f93cb31 -monitor 
unix:/var/lib/libvirt/qemu/XPHome.monitor,server,nowait -localtime 
-no-acpi -boot c -drive file=/media/XP/vdisk.img,if=ide,index=0,boot=on 
-drive file=/media/XP/vdisk1.img,if=ide,index=1 -drive 
file=/dev/cdrom,if=ide,media=cdrom,index=2 -net 
nic,macaddr=54:52:00:7a:ee:01,vlan=0,name=nic.0 -net 
tap,fd=17,vlan=0,name=tap.0 -serial pty -parallel none -usb -usbdevice 
tablet -vnc 127.0.0.1:0 -k en-us -vga cirrus -soundhw es1370
char device redirected to /dev/pts/6

Running this command in a terminal i get

TUNGETIFF ioctl() failed: Bad file descriptor
TUNSETOFFLOAD ioctl() failed: Bad file descriptor

and VM is *NOT* starting!

There is no tap interface but a virbr2. Anyway, it's the same for Linux 
VMs -I checked in logs- and they start.

Thanks for your support.

-- 
Daniel




More information about the libvir-list mailing list