La pregunta no es sobre Solidworks en realidad , así que continúe leyendo.
La idea general de la virtualización es ser independiente del hardware. Ante nuestros ojos se está creando un nivel de dependencia completamente nuevo: la fijación al hipervisor.
Hasta donde sé, buscar una manera de encontrar una solución a este problema no es una violación de la licencia de Solidworks y la ley local en mi país.
Mi cliente y yo queremos activar Solidworks Products en la máquina virtual KVM. Por algunas razones extrañas (se supone que Hyper-V y VMware están bien probados :) ellos (desarrolladores) de Solidworks 2015 PDM no quieren que sus productos se activen (la última versión de 2014 funcionó bien) en Qemu-KVM.
http://www.solidworks.com/sw/support/11168_ENU_HTML.htm
Estoy usando:
Como puede ver, es una VM basada en KVM con Windows 2012 y la instalación de Solidworks PDM.
Pregunta : ¿Qué más pueden verificar si estoy ejecutando mi VM en Qemu-KVM además de verificar:
- Dirección (es) MAC del adaptador Ethernet de VM,
- Etiquetas de controlador de dispositivo,
- Modelo de CPU,
- Tablas ACPI.
Voy a descartar las cosas mencionadas anteriormente en las próximas horas, pero me gustaría saber si tiene alguna otra idea.
Solución :
Resulta que validan dos cosas:
- Como Michael Hampton señaló correctamente, hay una
-cpu,kvm=off
opción
para deshabilitar la hoja CPUID 0x40000000.
- Tablas ACPI en el invitado.
Partes relevantes de los parámetros de la línea de comando qemu:
-cpu host,kvm=off -smbios type=0,vendor=LENOVO,version=FBKTB4AUS,date=07/01/2015,release=1.180 -smbios type=1,manufacturer=LENOVO,product=30AH001GPB,version=ThinkStation P300,serial=S4M88119,uuid=cecf333d-6603-e511-97d5-6c0b843f98ba,sku=LENOVO_MT_30AH,family=P300
Sintaxis del archivo de configuración de Libvirtd:
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
# Please notice there is xmlns definition in <domain> tag. Without it
# <qemu:commandline> and <qemu:arg> tags won't work.
<name>acm-server</name>
<uuid>d0e14081-b4a0-23b5-ae39-110a686b0e55</uuid>
<memory unit='KiB'>81920000</memory>
<currentMemory unit='KiB'>81920000</currentMemory>
<vcpu placement='static'>4</vcpu>
<os>
<type arch='x86_64' machine='pc-1.1'>hvm</type>
<boot dev='hd'/>
<bootmenu enable='yes'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
# Please notice there is no CPU definition on the top.
<qemu:commandline>
<qemu:arg value='-cpu'/>
<qemu:arg value='host,kvm=off'/>
<qemu:arg value='-smbios'/>
<qemu:arg value='type=0,vendor=LENOVO,version=FBKTB4AUS,date=07/01/2015,release=1.180'/>
<qemu:arg value='-smbios'/>
<qemu:arg value='type=1,manufacturer=LENOVO,product=30AH001GPB,version=ThinkStation P300,serial=S4M88119,uuid=cecf333d-6603-e511-97d5-6c0b843f98ba,sku=LENOVO_MT_30AH,family=P3'/>
</qemu:commandline>
</domain>
Como prueba, ahora quiere activar:
Actualización 21.04.2017r. DS Justice mencionó que el modo de disco Qemu (utilicé virtio en este ejemplo) también puede ser relevante.