February 16, 201610 yr Created a Win10 VM 2 days ago. Today I stopped the array / shutdown the PC and installed a disk for parity usage. Started the VM, the VM stays only in OVFM shell / BIOS menu and cycles through there. Same thing today, while the Win10 VM is not starting, I created an additional Win Server 2012 VM, finished the intallation. On purpose I shut down the VM and started up again, it does not go into its freshly installed img disk. The VMs are really basic stuff, emulated VGA with just a NIC and their own (img) HDDs, will host some services and some databases later on for learning purposes. For the Win10 VM here is the XML settings: <domain type='kvm' id='8'> <name>Apps</name> <uuid>8ad559d1-4831-d65c-493f-4baaa9094b41</uuid> <description>Windows Applications</description> <metadata> <vmtemplate name="Custom" icon="windows.png" os="windows"/> </metadata> <memory unit='KiB'>2097152</memory> <currentMemory unit='KiB'>2097152</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>1</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type> <loader type='pflash'>/usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd</loader> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> </hyperv> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='1' threads='1'/> </cpu> <clock offset='localtime'> <timer name='hypervclock' present='yes'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/user/VMs/Apps/vdisk1.img'/> <backingStore/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <alias name='virtio-disk2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/Applications/System/Windows Server/Windows Server 2012/en_windows_server_2012_r2_vl_x64_dvd_3319595.iso'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <boot order='2'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/Applications/unRAID/virtio-win-0.1.112.iso'/> <backingStore/> <target dev='hdb' bus='ide'/> <readonly/> <alias name='ide0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:72:8d:a8'/> <source bridge='br0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/Apps.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='tablet' bus='usb'> <alias name='input0'/> </input> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='5900' autoport='yes' websocket='5700' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='cirrus' vram='16384' heads='1'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> </domain> Someone (http://lime-technology.com/forum/index.php?topic=46601.0) said that the problem was solved when googling and finding out the latest OVMF file. I haven't tried that yet, but it seems like an unlikely solution as I downloaded and installed the latest unRAID version (6.1.7) a week ago, which already had support for Win10 and WinServer2012. Any idea what I am doing wrong?
February 16, 201610 yr I'm having the same problem. It seems like OVMF doesn't support multiple VMs at the moment because of it's boot file. (ovmf-pure-efi.FD) Each VM needs it's own as far as I understand. Some people have gotten it working by creating copies and manually pointing the XML at them.. version 6.2 is going to have default support for it apparently https://lime-technology.com/forum/index.php?topic=41769.msg434932#msg434932 so I'm just waiting for 6.2 to come out since I couldn't get it working by copying the files and editing the xml. If you're just using VNC why not use seabios? it doesn't have the same problem.
February 16, 201610 yr Double check your virtual drives.. There was an error in .7 that swapped them around.. It could be that your VM is trying to boot from its second drive.. If your VM's do not have secundary drive then this is not the issue..
February 16, 201610 yr Author I'm having the same problem. It seems like OVMF doesn't support multiple VMs at the moment because of it's boot file. (ovmf-pure-efi.FD) Each VM needs it's own as far as I understand. Some people have gotten it working by creating copies and manually pointing the XML at them.. version 6.2 is going to have default support for it apparently https://lime-technology.com/forum/index.php?topic=41769.msg434932#msg434932 so I'm just waiting for 6.2 to come out since I couldn't get it working by copying the files and editing the xml. If you're just using VNC why not use seabios? it doesn't have the same problem. Yes, seems like this is the problem. Don't know if I can get around it, I 'll give it a go but it's getting late here so I may pass for tonigh. I opted for the OVFM BIOS as in the guides they make it clear that its better. Even if I am just RDPing to the VMs, taking into consideration that you can't change the BIOS later on, I went with this to be on the safe side. There was no mention anywhere that you could create only one VM. Double check your virtual drives.. There was an error in .7 that swapped them around.. It could be that your VM is trying to boot from its second drive.. If your VM's do not have secundary drive then this is not the issue.. Unless I am mistaken, form the XML contents on my first post, there are 3 drivers, one VIRTIO with boot order = 1 (the formated HDD), one IDE with boot order = 2 (the installation media) and one IDE with the virtio tools. It somehow misses both bootable devices, which could be explained from the post mention from superfluke. I wonder if there is actually data in the img HDDs to be recovered with some tricky configuration or I have to setup both VMs from scratch...
February 16, 201610 yr Author Made 2 copies of the original /usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd as /boot/config/vm-ovmfs/OVMF-pure-efi-Apps.fd and /boot/config/vm-ovmfs/OVMF-pure-efi-MySQL.fd Changed both VM XMLs to match the new fd files. No boot from the WinServer2012 VM. Booted from its media CD, loaded the virtio drivers, show that the img file was partitioned after the initial installation so everything should be there. Cancelled the installation option, went to the first screen, went into the repair options, couldn't find anything of interest, tried the "continue" option from the same repair menu, continued booting into the existing Server installation. Now each time I do a VM reboot it boots directly into the OS without any issues. No boot from the Win10 VM. Tried to do the same as above but the repair options in Win10 setup did not have a "continue" option like the Server 2012 media ISO. After the first try, each time I rebooted the VM the ISO media does not get a chance to load the setup, while showing the windows logo the VM powers off. The log shows: 2016-02-16T23:18:28.441706Z qemu-system-x86_64: Guest moved used index from 14 to 65516 2016-02-16 23:18:28.492+0000: shutting down I have seen the "Guest moved used index" error before, and I have read an article about it (http://lime-technology.com/forum/index.php?topic=45127.0) but my NIC settings and br0 are correct and my memory values are the same and at 2GB. Again, like last time I got this error message in order to get through it I change the RAM value a bit (+/- 500MBs) and it gets sorted out somehow. It 's not a RAM thing though, as it can work if I remove 500MBs of RAM (from 2 to 2.5, from 2.5 to 2). Retried, the VM now boots into the CD media. Was about to do a new installation, and then it hit me : "let's see if I try to do a new installation, and I load the virtio drivers so I see the partitions in the img file, if I then cancel and I go to repairs, will I have the continue option?" And so I did, and guess what, now an additional option existed, "continue to Windows 10". So i click that, the VM reboots, and like a miracle the MBR (or whatever) is rebuilt somehow and now the Win10 VM loads directly into the original installation 2 days ago (see attachment). Also: If I edit the VMs details from the GUI, when I save it the <os> area gets overwritten with the default values (<loader type='pflash'>/usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd</loader>) and I have to remember to edit the XML after editing the details to change the location to the new one in /boot/config/. As the BIOS option is grayed out, each time the GUI saves it probably checks the GUI values against the XML values and updates whatever is different (I haven't tried to remove or add something extra to see if it just re-writes the whole thing the GUI shows. As now its 0200 in the morning and I have to get up again in 5 hours, tomorrow and after the parity calculations have finished I will do an unRAID restart to see what happens with the VMs...
Archived
This topic is now archived and is closed to further replies.