क्या शून्य भरने से वर्चुअलबॉक्स डायनेमिक डिस्क छवि का आकार बढ़ जाएगा


10

मैं ज्यादातर ओरेकल वर्चुअलबॉक्स के लिए निश्चित आकार की डिस्क छवियों का उपयोग कर रहा हूं, लेकिन मैं डायनामिक डिस्क छवियों पर स्विच करने पर विचार कर रहा हूं क्योंकि मैंने सुना है कि विस्तार करते समय डायनेमिक छवियां निश्चित-आकार की छवियों के प्रदर्शन के समान हैं।

एक ऑपरेशन मैं बहुत कुछ करता हूं, हालांकि एक ज़िप प्रोग्राम का उपयोग करके (ज़िप संग्रह के आकार को कम करने के लिए) एक निश्चित आकार की डिस्क छवि को शून्य से भरना है। मेरा प्रश्न यह है कि जब मैं डायनेमिक डिस्क को शून्य-फिल करता हूं, तो क्या डिस्क का आकार उसके अधिकतम घोषित मूल्य तक बढ़ जाएगा? (मेरे विशिष्ट मामले के लिए, मैं sdelete -zविंडोज़ विभाजन का उपयोग कर रहा हूँ ।)

एक अतिरिक्त प्रश्न यह है कि क्या डिस्क आकार को बढ़ाए बिना विभाजन को शून्य-भरने का एक तरीका है?

धन्यवाद।

- संपादित करें -

स्पष्ट करने के लिए, मेरे द्वारा पूछे जाने का कारण यह है कि मैं कम से कम वर्चुअल बॉक्स छवियों का आकार रखना चाहता हूं। शून्य-आकार वाली छवि को शून्य-भरने वाला कार्य करता है क्योंकि शून्य-भरा भाग संपीड़ित छवि में लगभग कुछ भी योगदान नहीं करता है। हालाँकि, अगर मैं डायनेमिक डिस्क पर स्विच करता हूँ, तो जीरो-फिलिंग डायनामिक रूप से आकार की छवियों के उपयोग के उद्देश्य को पराजित करता है।

मेरे सवाल का दूसरा हिस्सा वास्तव में पूछ रहा है कि क्या शून्य-भरने से बेहतर कोई विकल्प है जो डिस्क आकार का विस्तार किए बिना अप्रयुक्त क्षेत्रों को हटा सकता है।


1
हाँ, एक पूरी तरह से गतिशील रूप से आवंटित डिस्क, पूरी तरह से आवंटित आकार होगा। मुझे पूरा यकीन नहीं है कि भ्रम यहाँ है, और न ही मैं ऐसा कोई कारण बता सकता हूँ कि आप क्या वर्णन करते हैं, लेकिन नहीं, आप डेटा का एक गुच्छा (सभी 0 के) को एक फ़ाइल में नहीं भर सकते हैं और इसके आकार की उम्मीद नहीं कर सकते हैं बदलने के लिए।
फ्रैंक थॉमस

@FrankThomas जीरो-फिलिंग करने के लिए कृपया मेरा अपडेट देखें।
टिनिलेक्स

1
@tinlyx मैंने अभी उत्तर दिया है और ऐसा लगता है कि मैंने आपके उत्तर में भी आपके संपादन का उत्तर दिया है, आप वास्तव में वर्चुअलाइजेशन टूल का उपयोग करके डायनामिक डिस्क छवियों को कॉम्पैक्ट कर सकते हैं। तो एक कॉम्पैक्ट के बाद एक ज़ोर्फिल अभिलेखीय उद्देश्यों के लिए एक आदर्श छवि बनाएगा।
Mokubai

जवाबों:


12

मैंने अभी-अभी इसका परीक्षण किया है ( sdelete -zVM में उपयोग करके ) और डिस्क को शून्य करने से गतिशील डिस्क की छवि का आकार नहीं बढ़ेगा। वर्चुअलबॉक्स यह पहचानने में काफी स्मार्ट है कि जब आप पहले से खाली ब्लॉक को शून्य लिख रहे हैं तो डिस्क को फिर से ब्लॉक करने की आवश्यकता नहीं है।

लेकिन फिर भी अगर ऐसा हुआ है तो यह बहुत बुरा नहीं है, क्योंकि डिस्क को भरने से शून्य भी आपको अपने होस्ट में वर्चुअलबॉक्स टूल का उपयोग करके इसे फिर से कॉम्पैक्ट करने की अनुमति देगा: वर्चुअलबॉक्स के VDI फ़ाइल आकार को कैसे कॉम्पैक्ट करें?

जब मैंने अपने वीएम को शून्य किया तो यह छवि का आकार ~ 14.5GB से ~ 15.5GB तक हो गया, लेकिन सभी डिस्क स्थान को पूरी तरह से आवंटित नहीं किया, जो लगभग 48GB होता।

वास्तव में डिस्क को भरने के माध्यम से शून्य (के माध्यम से sdelete -z) आपको लिखी गई किसी भी जगह को ठीक से मुक्त करने की अनुमति देगा लेकिन तब से आपके वीएम ऑपरेटिंग सिस्टम द्वारा मुक्त कर दिया गया है, तो आप VBoxManage.exe modifyhd c:\path\to\thedisk.vdi --compactडायनामिक डिस्क छवि को ठीक से कॉम्पैक्ट करने के लिए अपने होस्ट मशीन पर कमांड चला सकते हैं वापस अपने न्यूनतम आकार के लिए।


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