zar, पहली बात पहली ... कभी भी एक ऐसी मशीन न चलाएं जो सहेजे हुए राज्य में हो, इससे पहले कि आप अतिथि को बंद करें, न कि केवल राज्य को बचाएं।
यह भी सुनिश्चित करें कि आप दोनों होस्ट पर वर्चुअलबॉक्स के एक ही संस्करण का उपयोग करें, लेकिन न केवल वर्चुअलबॉक्स संस्करण, बल्कि एक्सटेंशन पैक वेशन ... या कम से कम नए होस्ट का उच्च संस्करण है, लेकिन कभी भी दो में से किसी पर भी कम संस्करण का उपयोग न करें।
और अंत में, मैंने इसे कठिन तरीके से सीखा, मशीन को स्थानांतरित करने से पहले VirtualBOX पर SHARED फ़ोल्डर कॉन्फ़िगरेशन को हटाएं, फिर इसे एक सही तरीके से बनाएं ... बहुत महत्वपूर्ण है जब होस्ट अलग-अलग ओएस (विंडोज / लिनक्स होस्ट) हैं।
और बस एक साइड नोट के रूप में ... मैं allways, allways उपयोग करने के लिए OS के साथ-साथ डेटा VDI के लिए inmutable हार्ड डिस्क VDI फ़ाइलों का उपयोग करता हूं (इस तरह एक ही DATA VDI का उपयोग अतिथि से अधिक के लिए किया जा सकता है), विशेष रूप से 4GiP Pagefile.sys के लिए ट्रिक
पिछले भाग में, एक अयोग्य VDI फ़ाइल को फिर से उपयोग करने से चीजें थोड़ी कठिन हो जाती हैं, VirtualBOX में BIG BUG होता है।
बग को कार्रवाई में देखने के लिए:
- एक अयोग्य VDI बनाएँ (जैसे मैं पेजफाइल.साइस के लिए उपयोग करता हूं)
- VirtualBOX पर दो या तीन वीएम बनाएं
- उनमें से एक को सूची के शीर्ष पर ले जाएं (बस किसी एक को क्षतिग्रस्त करने से बचने के लिए)
- आपके द्वारा बनाई गई प्रत्येक थोज़ोज़ मशीनों की .vbox फ़ाइलों की बैकअप (तुलना करने के बाद BUG होता है)
- उस अयोग्य VDI को उस मशीन में से एक से अधिक में संलग्न करें (सूची के शीर्ष पर छोड़कर)
- अब सूची के शीर्ष पर स्थित मशीन का .vbox देखें
उस मशीन को संपादित कर दिया गया है, इसमें अन्य मशीनों के लिए अक्षम्य VDI का संदर्भ है।
तो BUG है: एक अयोग्य VDI को जोड़ने वाली एक मशीन को संपादित करें जो दूसरे द्वारा उपयोग की जाती है जो सूची के शीर्ष पर स्थित मशीन को प्रभावित करती है।
मैं सभी विंडोज मशीनों पर एक ही 4GiB VDI का फिर से उपयोग क्यों कर रहा हूं? आसान, यह एक FAT32 विभाजन के साथ एक एमबीआर डिस्क है जहां मैं पेजफाइल.एसआईएस डाल देता हूं, क्योंकि यह अयोग्य है सभी आभासी मशीनें अपने स्नैपशॉट फ़ोल्डर पर एक फ़ाइल बनाएंगी जहां वे परिवर्तन संग्रहीत करते हैं, और जो अगले बूट पर खो जाता है, इसलिए मैं करता हूं मेजबान डिस्क पर संग्रहीत प्रत्येक अतिथि के लिए 4GiB की आवश्यकता नहीं है, सिर्फ एक ... इस तरह से मैं बहुत सारे GiB को बचाता हूं क्योंकि मेरे पास अपने स्वयं के लिए विकसित होने वाले सभी ऐप, (XP, Vista) के संयोजन के लिए 20 से अधिक विभिन्न विंडो हैं। , 7, 8, 8.1, 10) * (32 बिट्स, 64 बिट्स) * (जैसा कि पहली सर्विस पर है, प्रत्येक सर्विसपैक के बाद, पूर्ण विंडोज़ अपडेट के बाद), मुझे बहुत कुछ मिलता है, बहुत सारे गेस्ट ... इसलिए उन सभी पर मैं आभासी राम (pagefile.sys) के लिए अयोग्य 4GiB VDI साझा करता हूं।
और अगर आप BUG को और आगे जाने देते हैं, तो थोज़ोज़ मशीनों में से एक को किसी अन्य VirtualBOX होस्ट पर ले जाने का प्रयास करें (याद रखें कि वे केवल वर्चुअल मशीन हैं, जो उन पर एक कॉन्फ़िगरेशन के साथ हैं और उन पर कोई अतिथि अभी तक स्थापित नहीं है), आप देखेंगे कि VirtualBox आपको अनुमति नहीं देता है कुछ VDI के गायब होने के बाद से उन्हें जोड़ दें (यह FALSE और TRUE है, यह है कि ऐसी पहली मशीन सही मशीन पर मधुमक्खी पालन के ऐसे VDIs के संदर्भ रखती है)।
अब उन सभी की .VBOX फ़ाइलों की तुलना प्रीविओस बैकअप के साथ करें ... ध्यान दें कि कैसे गलत तरीके से संशोधित किया जाता है? ... हाँ, यह सूची में सबसे ऊपर है।
खैर, इस BUG को कुछ साल पहले VirtualBOX को सूचित किया गया था, वे अभी भी इसे ठीक नहीं कर सकते हैं ... और यह बहुत, बहुत सारी समस्याएं पैदा कर रहा है।
इसके अलावा, यदि आप वर्चुअल मशीनों पर शीर्ष एक को निचले स्थान पर ले जाते हैं, तो VirtualBox को बंद करें और इसे फिर से लॉन्च करें ... आपको बताएगा कि कुछ मशीनें क्षतिग्रस्त हैं और शुरू नहीं की जा सकती हैं ... हाँ सूची में पहला एक यदि आप बहुत परेशानी नहीं उठाना चाहते हैं तो एक अलग रूप में इलाज किया जाना चाहिए।
यह वास्तव में बुरा है कि मुझे खोज करने में बहुत दिन लग गए (कुछ साल पहले) मैंने इसे कठिन तरीका सीखा!
मैंने एक मशीन जिसे मैंने बुलाया था, उस पर काबू पाया:
इसका एक खाली कॉन्फ़िगरेशन है और केवल एक VDI है, हाँ, आप सही हैं, आपको यह अनुमान है, सभी शेष वर्चुअल मशीनों के लिए अयोग्य VDI मैं साझा करता हूं।
अच्छी तरह से जब मैं .VBOX फ़ाइल खोलता हूं, तो मैं इसे <MediaRegistry>
<HardDisks>
अनुभाग पर बहुत सी पंक्तियों के अंदर देखता हूं , प्रत्येक मशीन में से एक जहां मैं उस अयोग्य VDI का उपयोग करता हूं ... सिर्फ एक नमूने के रूप में (मैं निजी डेटा हटाता हूं):
<MediaRegistry>
<HardDisks>
<HardDisk uuid="...UUID..." location="D:\VDIs\_Virtual_Memory_.vdi" format="VDI" type="Immutable">
<HardDisk uuid="{...UUID...}" location="Snapshots\{...UUID...}.vdi" format="VDI" autoReset="true"/>
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows001 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows002 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows003 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows004 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows005 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows006 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows007 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows008 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows009 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows010 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows011 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows012 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows013 ... // This belongs to other virtual Machine
... and so on ... // This belongs to other virtual Machine
</HardDisk>
</HardDisks>
</MediaRegistry>
सुंदर बग, वर्षों से हल नहीं हुआ है।
अच्छी तरह से, ऐसी मशीनों को स्थानांतरित करने के लिए ... आपको .VBOX को जोड़ने से पहले नई मशीन पर (जैसे कि सूची के शीर्ष पर है) पर इस तरह के सभी डिस्क संदर्भों को डालने के लिए .VBOX फ़ाइलों को मैन्युअल रूप से संपादित करना होगा। सूची में फ़ाइलें, इसलिए उन्हें जोड़ते समय VirtualBOX में गायब VDI (बड़े बग के कारण गायब) के संदर्भ हैं।
यह तब होता है क्योंकि हर बार जब आप एक VDI कनेक्ट करते हैं जो किसी अन्य मशीन पर उपयोग की जाती है VirtualBOX दो मशीनों को अद्यतन करता है। VBOX फाइलें (वह जो आपके द्वारा उपयोग की जा रही मशीन से संबंधित है) और सूची में पहले एक पर।
मुझे पूरी तरह से यकीन नहीं है कि सूची में होने पर क्या होगा, पहले वाले के पास इस तरह के आम वीडीआई नहीं हैं ... बेहतर यह कोशिश करने के लिए नहीं है, मैंने जो देखा है उसे देखा।
इसलिए एक अन्य HOST पर माइग्रेट करना बहुत अधिक जटिल है जितना कि यह एक बहुत खराब कार्यान्वयन के कारण होता है। VBOX आंतरिक संरचना को फाइल करता है और जब वर्चुअलबॉक्स उन्हें संपादित करता है तो वास्तव में बड़े BUG के कारण।
विफल रहता है:
- आंतरिक संरचना (एक्सएमएल) HOST (विंडोज या लिनक्स) पर निर्भर करती है
- एक मशीन को संपादित करें दूसरे को बदल सकते हैं, न कि केवल एक मधुमक्खी द्वारा संपादित
- ... और क्या ?
और अधिक की जरूरत है ... मैं ऐसा करने वाली मशीनों को माइग्रेट करता हूं (और कोई समस्या नहीं थी, कभी नहीं):
- सभी मशीनों की सूची पर ध्यान दें (आदेश, समूहन, आदि)
- सूची पर पहले एक का ध्यान रखें (इसके सभी विन्यास)
- उन मशीनों के सभी गुणों पर ध्यान दें जिन्हें मैं दूसरे होस्ट में ले जाना चाहता हूं
- .Vbox फ़ाइलों को .txt फ़ाइलों की तरह कॉपी करें (सूची के शीर्ष पर एक + सभी मशीनें जिन्हें मैं माइग्रेट करना चाहता हूं)
- नए होस्ट पर VirtualBox के अंदर सभी मशीनों (और सूची के शीर्ष पर एक विशेष एक है) को फिर से बनाएँ
- नए होस्ट पर VirtualBox को बंद करें
- नई .vbox फ़ाइलों के साथ पुराने .txt की तुलना करें और .txt से .vbox के कुछ हिस्सों को मानव तरीके से कॉपी करें, न कि केवल कॉपी और पेस्ट करें।
- वर्चुअलबॉक्स खोलें और सभी VDI को सही क्रम में संलग्न करें
- नए होस्ट पर फिर से VirtualBox को बंद करें
- नई .vbox फ़ाइलों के साथ पुराने .txt की तुलना करना मुश्किल है और .txt से .vxt के कुछ हिस्सों को मानव तरीके से, केवल कॉपी और पेस्ट न करें।
सभी शेष (स्नैपशॉट फ़ोल्डर और VDI फ़ाइलें) मैं उन्हें सामान्य तरीके से कॉपी करता हूं (फाइल सिस्टम कॉपी और पेस्ट)।
बिग बीयूजी वर्चुअलबॉक्स के कारण यह सभी हार्ड मैनुअल काम होता है: यह एक मशीन को संशोधित / संशोधित नहीं करता है जब आप एक अयोग्य वीडीआई संलग्न करते हैं जो एक से अधिक मशीनों पर उपयोग किया जाता है, अन्यथा एक साधारण कॉपी और पेस्ट .VBOX फ़ाइल पर्याप्त होगी (बाद में) साझा किए गए फ़ोल्डर पथ को ठीक करना, आदि)।