Solidworks: सक्रियण लाइसेंस मोड इस आभासी वातावरण (Qemu-KVM) में समर्थित नहीं है


12

सवाल वास्तव में सॉलिडवर्क्स के आसपास नहीं है , इसलिए कृपया पढ़ना जारी रखें।

वर्चुअलाइजेशन का पूरा विचार हार्डवेयर स्वतंत्र होना है। हमारी आंखों के सामने एक पूरी नई निर्भरता का स्तर बनाया जा रहा है - हाइपरवाइजर के प्रति समर्पण।

जहां तक ​​मुझे पता है कि इस समस्या का समाधान खोजने के लिए एक तरह से खोज करना मेरे देश में सॉलिडवर्क्स लाइसेंस और स्थानीय कानून का उल्लंघन नहीं है।

मैं और मेरे ग्राहक KVM वर्चुअल मशीन पर सॉलिडवर्क्स प्रोडक्ट्स को सक्रिय करना चाहते हैं। कुछ अजीब कारणों के लिए (हाइपर-वी और वीएमवेयर का अच्छी तरह से परीक्षण किया जाना चाहिए :)) वे (डेवलपर्स) सॉलिडवर्क्स 2015 पीडीएम अपने उत्पादों को सक्रिय नहीं करना चाहते हैं (पिछले 2014 संस्करण ने ठीक काम किया था) क्यूमू-केवीएम पर।

http://www.solidworks.com/sw/support/11168_ENU_HTML.htm http://www.solidworks.com/sw/support/11168_ENU_HTML.htm

मै इस्तेमाल कर रहा हूँ:

सेट अप

जैसा कि आप देख सकते हैं कि यह केवीएम-आधारित वीएम विंडोज 2012 और सॉलिडवर्क्स पीडीएम इंस्टॉलेशन के साथ है।

प्रश्न : अगर मैं जाँच के अलावा Qemu-KVM में अपना VM चला रहा हूँ तो वे और क्या जाँच कर सकते हैं:

  • VM के ईथरनेट एडॉप्टर का MAC पता (तों)
  • डिवाइस ड्राइवर लेबल,
  • सीपीयू मॉडल,
  • ACPI टेबल।

मैं अगले कुछ घंटों में उपर्युक्त बातों को खारिज करने जा रहा हूं, लेकिन मैं जानना चाहता हूं कि क्या आपके पास कोई अन्य विचार है।

समाधान :

यह पता चला है कि वे दो चीजों को मान्य करते हैं:

  1. जैसा कि माइकल हैम्पटन ने सही ढंग से बताया कि -cpu,kvm=offविकल्प है

CPUID 0x40000000 पत्ती को निष्क्रिय करने के लिए।

  1. अतिथि पर ACPI टेबल्स।

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

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>

प्रमाण के रूप में, अब यह सक्रिय करना चाहता है: हैक के साथ

अपडेट 21.04.2017r। डीएस जस्टिस ने उल्लेख किया कि क्यूमू (मैंने इस उदाहरण में गुण का इस्तेमाल किया) डिस्क मोड प्रासंगिक भी हो सकता है।


यह साइट पेशेवर sysadmins के लिए है जो स्वाभाविक रूप से समर्थन / समर्थन योग्य समाधानों में रुचि रखते हैं, हम वास्तव में 'लाइनों के भीतर' काम करने की बहुत कोशिश करते हैं।
चॉपर 3

8
जब तक कुछ मानक समाधान नहीं है, इसका मतलब यह नहीं है कि यह असमर्थनीय है, जैसा कि आप देख सकते हैं कि यह है। क्या आप वास्तव में यहाँ समस्या नहीं देखते हैं? वे किसी को वाणिज्यिक उपकरण चुनने और पीछे छिपाने के लिए मजबूर करते हैं - क्योंकि यह अच्छी तरह से परीक्षण किया गया है। जब यह हाइपरविजर चुनने की बात आती है तो यह एक बकवास है। ओएस को रेखांकित करने के लिए - हां, लेकिन एक आवेदन के लिए नहीं।
मिशाल सोकोलोव्स्की

यदि पर्याप्त भुगतान करने वाले ग्राहक KVM का समर्थन करने के लिए सॉलिडवर्क्स की मांग करते हैं, तो उन्हें मजबूर किया जाएगा। यह पहले से ही हुआ जब ओरेकल ने ओईएल को जारी किया और आरएचईएल पर स्थापना को अवरुद्ध करने की कोशिश की, बस दबाव का मामला और आपके व्यवसाय को कहीं और ले जाने की क्षमता।
dyasny

उन्होंने पहले ही कर दिया। वे इसका समर्थन करते हैं, उदाहरण के लिए उनके पास आज लाइसेंस स्थापित करने का कार्य था।
मिशाल सोकोलोस्की 15

1
यह मेरे लिए वर्चुअल आईडीई बूट डिस्क के साथ काम नहीं करता था, संभवतः एएचसीआई डिस्क विवरण जिसमें "क्यूईएमयू" शब्द है, के कारण। मेरे बूट डिस्क को अपने स्क्रीनशॉट में दिखाए अनुसार VirtIO होने के लिए बदल दिया है, और मैं सुनहरा हूं। धन्यवाद!
शरद ऋतु

जवाबों:


13

इंटेल हार्डवेयर पर चलने वाले अधिकांश वर्तमान हाइपरविजर सीपीयूआईडी 0x40000000 एट seq का उपयोग करते हैं। मेजबान से अतिथि तक हाइपरविजर के बारे में जानकारी देने के लिए।

KVM , Xen , VMware और Hyper-V सभी इस पद्धति का उपयोग करते हैं।

यह CPUID पत्ती 0x1 में हाइपरविजर फीचर फ्लैग सेट के अतिरिक्त है, जो बताता है कि मशीन एक वर्चुअल मशीन है।

इसलिए यह एक कार्यक्रम के लिए तुच्छ है जो सीपीयूआईडी अनुदेश को यह निर्धारित करने के लिए कह सकता है कि क्या यह इन हाइपरविजरों में से एक के तहत चल रहा है।

KVM के हाल के संस्करणों में CPUID 0x40000000 पत्ती को निष्क्रिय करने के लिए कमांड लाइन विकल्प शामिल है -cpu kvm=off


1
और यह विधि पहले से ही NVIDIA ड्राइवरों के खिलाफ प्रभावी साबित हुई है जो केवीएम वीएम को पैशट्रॉज पर भी रोकते हैं।
dyasny 13

5

KVM पर सॉलिडवर्क्स सर्वर को सक्रिय करने का आधिकारिक तरीका "सॉलिडवर्क्स के लिए सक्रियण छूट लाइसेंस" के लिए आवेदन करना है। हम इसे पुनर्विक्रेता के माध्यम से करते हैं, लेकिन संभवतः सॉलिडवर्क्स समर्थन के माध्यम से सीधे किया जा सकता है।

सॉलिडवर्क्स एक लाइसेंस फ़ाइल भेजता है जो सॉलिडवर्क्स लाइसेंस प्रबंधक सर्वर प्रशासन टैब के उन्नत विकल्पों के माध्यम से लोड करता है।

यह देखते हुए कि पिछले दो वर्षों में सॉलिडवर्क्स को लाइसेंस फ़ाइल भेजने में 2 सप्ताह से अधिक का समय लगा है, अच्छा होगा कि वे केवीएम को ब्लैकलिस्ट न करें।

सॉलिडवर्क्स में शीर्षक के साथ एक "एन्हांसमेंट रिक्वेस्ट" खुली होती है: "वीएम केवीएम केमू लिबेरेट के लिए एसएनएल सर्वर समर्थन प्रदान करें।" ईआर # 1-9482749288 मैंने इसे सॉलिडवर्क्स पोर्टल में लॉग इन करके, एन्हांसमेंट रिक्वेस्ट लिंक को ढूंढकर, और टाइपिंग एमएमएम द्वारा पाया।

कृपया इस एन्हांसमेंट अनुरोध पर एक टिप्पणी छोड़ दें! उम्मीद है कि वे तय करेंगे कि KVM एक वैध वर्चुअलाइजेशन वातावरण है।


AWS KVM का उपयोग कर रहा है!
FreeSoftwareServers

1
@FreeSoftwareServers AWS ने हाल ही में कुछ मशीन प्रकारों के लिए KVM पर स्विच किया है। वहाँ अभी भी बहुत से एक्सईएन है।
माइकल हैम्पटन

सच है, सिर्फ यह कह रहा है कि यह एक है legitimate virtualization environment
FreeSoftwareServers

इसे मुझे मत बताओ, इसे सॉलिडवर्क्स को बताओ! :)
lickdragon

5

मैं अपने अनुभव को यहाँ भी साझा करना चाहता था, यदि अन्य लोग भी ऐसी ही स्थिति में हों (एक वर्चुअलबॉक्स वीएम पर सॉलिडवर्क्स लगाने की कोशिश कर रहे हों)

मेरा प्रयास सेटअप:

xubuntu 16.04 होस्ट ओएस, वर्चुअलबॉक्स, विंडोज 10 और सॉलिडवर्क्स 2015। मैं वही त्रुटि देख रहा था जो ऊपर चर्चा की गई थी।

समाधान:

आखिरकार मुझे जो समाधान मिला, वह था hidevm.batसोलिडक्वाड क्रैक में शामिल स्क्रिप्ट का उपयोग करने के लिए, सॉलिडवर्क्स को यह सोचने के लिए धोखा देने के लिए कि यह एक वीएम में नहीं चल रहा है। भले ही आपके पास वैध लाइसेंस हो (जैसा कि मुझे आशा है कि आप ऐसा करेंगे) .bat फ़ाइल का उपयोग कर सकते हैं। .bat का उपयोग उन उपयोगकर्ताओं के लिए किया जाता है, जो एक वर्चुअलबॉक्स VM के अंदर सॉलिडवर्क्स को होस्ट ओएस के रूप में विंडोज के साथ चला रहे हैं, हालाँकि यदि आप मेरे जैसे हैं, तो होस्ट ओएस के रूप में लिनक्स चलाने की कोशिश कर रहे हैं, फिर भी आप .bat फ़ाइल को खोल सकते हैं, चुनें। संबंधित आदेशों को, उन्हें लिनक्स के लिए समायोजित करें, और उन्हें चलाएं। संशोधित प्रासंगिक आदेश हैं:

VMNAME=[whatever your VM name is]
rand9="abcdefghi" #any 9 character string
rand20="abdcefghijklmnopqrst" #any 20 character string
rand8="abcdefgh" #any 8 character string

VBoxManage setextradata $VMNAME "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVendor" "American Megatrends Inc"
VBoxManage setextradata $VMNAME "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVersion" "2.1.0"
VBoxManage setextradata $VMNAME "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor" "ASUSTek Computer"

VBoxManage setextradata $VMNAME "VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" $rand9

VBoxManage setextradata $VMNAME "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" $rand20

VBoxManage setextradata $VMNAME "VBoxInternal/Devices/ahci/0/Config/Port0/FirmwareRevision" $rand8
VBoxManage setextradata $VMNAME "VBoxInternal/Devices/ahci/0/Config/Port0/ModelNumber" "SEAGATE ST3750525AS"

यदि आपका वीएम ईएफआई फर्मवेयर का उपयोग करने के लिए कॉन्फ़िगर किया pcbiosगया है efi, तो आपको कुंजी में बदलना होगा । 9.12 देखें BIOS DMI जानकारी को कॉन्फ़िगर करना


यह मेरे लिए विफल रहा। हो सकता है क्योंकि मेरा सिस्टम यूईएफआई के साथ है।
kyb

लेकिन मुझे VBox डॉक्स $ 9.12 में समाधान मिला । > यदि आपके वीएम को EFI फर्मवेयर का उपयोग करने के लिए कॉन्फ़िगर किया pcbiosगया है efi, तो आपको कुंजियों में बदलना होगा । मैं संदेश संपादित करने का सुझाव देता हूं।
kyb

4

'/>ईओएल पर लापता होने के <qemu:arg value='type=1,manufacturer=LENOVOकारण यहां पूरी तरह से काम करने की अनुमति है।

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
 (...)

... 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>
 (...)

आपके उत्तर के लिए धन्यवाद, इसने मुझे मेरा बनाने में मदद की, मैंने सिर्फ अनावश्यक कोड हटा दिया।
FreeSoftwareServers

1

मुझे लगा कि मैं अपना तरीका साझा करूंगा जिसने वीएम को विंडोज / टास्क एमजीआर से छुपाने का काम किया (यह भी कम अनावश्यक सामान है और पढ़ने में आसान है)। मैं सॉलिडवर्क्स को सक्रिय करने की कोशिश नहीं कर रहा था, लेकिन आईएमओ यह धागा एक वीएम में आपके रनिंग को छिपाने के बारे में है और शायद इसे इस तरह संपादित किया जाना चाहिए। वैसे भी ...

अपने domain.xml में निम्नलिखित जोड़ें और CPU सेक्शन को पूरा करना सुनिश्चित करें

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
#Regaular Stuff
#No CPU Type Set
 <features>
    <acpi/>
    <apic/>
    <kvm>
      <hidden state='on'/>
    </kvm>
    <vmport state='off'/>
  </features>
#Add to Bottom of Domain.xml
  </devices>
  <qemu:commandline>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='host,hv_time,kvm=off,hv_vendor_id=null,-hypervisor'/>
  </qemu:commandline>
</domain>

VM को बंद करें और वापस परीक्षण करें!


1
मुझे इस विन्यास के साथ Ubuntu 19.04 पर qemu पर काम करने वाले smbiosसॉलिडवॉर्क्स मिले, डिस्क और इथर दोनों के लिए ड्राइवर के रूप में तर्क और VirtIO।
अवामंदर Av

1
@ अवामंदर यह कमाल है, जैसा कि मैंने कहा कि मैं भी सॉलिडवर्क्स के साथ काम नहीं कर रहा था, लेकिन लगता है कि मैंने ओपी के सवाल को हल करने में मदद की! मैं भूल गया कि मैं क्या काम कर रहा था, लेकिन यह मेरे लिए काम करने के साथ-साथ कुछ और के लिए मिला, मुझे लगता है कि यह गेमिंग से संबंधित था, एक वीएम में गेम नहीं चलाएगा। मेरे वीएम अधिक शक्तिशाली हैं तो अधिकांश लोग गेमिंग लैपटॉप हैं: पी
फ्रीसवर्सरवियर्स

@Avander मैं बस उत्सुक हूं, क्या आपने smbiosतर्कों के बिना कोशिश की ?
FreeSoftwareServers

मैंने बिना जाली के कोशिश नहीं की smbios
अवामंदर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.