मैं एक कच्ची डिस्क छवि का विस्तार कैसे करूं?


13

आपूर्ति की जाने वाली आधिकारिक छवियां कच्ची डिस्क छवियां हैं, जिनका उपयोग करके बनाया जा सकता था dd

मैं एक छवि को कैसे बड़ा करूं? मुझे लगता है कि मैं पहले से ही जवाब दिया गया है कि मैं अपने / (रूट) विभाजन का आकार कैसे बदल सकता हूं, जैसा कि मैंने कहा है कि मैं छवि को पुन: प्रस्तुत करने में दिलचस्पी नहीं रखता हूं


विस्तार से आपका क्या मतलब है यह बिल्कुल सुनिश्चित नहीं है। क्या आप डिस्क पर dd'ing करने से पहले छवि पर 'विभाजन का आकार बदलना' देख रहे हैं ?
जोस्त

यह एक लक्ष्य है, लेकिन ऐसा करने के लिए, किसी को डिस्क छवि का विस्तार करना होगा।
एलेक्स चैम्बरलेन

जवाबों:


13

जैसा कि इस सवाल में बताया गया है कि छवि के विस्तार के दो तरीके हैं। नीचे 1 किलोबाइट द्वारा फ़ाइल का विस्तार करने के दो उदाहरण हैं।

DD एक गैर-विरल फ़ाइल बनाता है

dd if=/dev/zero bs=1k count=1 >> myimage.img

Truncate एक विरल फ़ाइल बनाता है

truncate -s +1024 myimage

आप शायद ट्रंकट का उपयोग करना चाहते हैं। एक विरल फ़ाइल केवल उन ब्लॉकों के मेटाडेटा को लिखती है जो वास्तव में ब्लॉकों को लिखने के बजाय, इसका उपयोग करती है। यह फ़ाइल को तेज़ बनाता है (क्योंकि इसमें डिस्क पर वास्तविक शून्य लिखना नहीं है) और यह आपकी डिस्क पर स्थान बचाता है।

नोट Apple का HFS + फ़ाइल सिस्टम विरल फ़ाइलों का समर्थन नहीं करता है।


HFS + POSIX के अनुरूप नहीं है? linux.die.net/man/2/truncate
एलेक्स चेम्बरलेन

यदि स्पार्स फ़ाइलों का समर्थन POSIX के लिए एक आवश्यकता है, तो मुझे लगता है कि नहीं। यहाँ HFS + और कुछ ext (i अनुमान) stackoverflow.com/a/193015/689893 के बीच अंतर का अच्छा प्रदर्शन है । स्पष्ट रूप से यह फ़ाइल बनाता है, लेकिन यह डिस्क स्थान का उपयोग करता है जैसे कि यह एक विरल फ़ाइल के बजाय एक सामान्य फ़ाइल है।
Joost

नहीं, मुझे लगता है कि मुझे गलत समझा गया था!
एलेक्स चैम्बरलेन

यदि आप ddएक विरल फाइल करते हैं, तो क्या यह अभी भी सही होगा?
एलेक्स चैम्बरलेन

एक विरल फ़ाइल में डेटा नहीं होता है, इसलिए मुझे लगता है कि आप सिर्फ शून्य जोड़ सकते हैं। यह गैर-विरल के रूप में उस हिस्से को संभाल लेगा।
Joost

10

छवि को आकार देने का एक अविश्वसनीय रूप से आसान तरीका है qemuजिसे बुलाया उपकरणों में से एक का उपयोग करना है qemu-img। यह निश्चित रूप से इस तथ्य पर निर्भर करता है कि आपने qemuस्थापित किया है (जो मुझे पता है कि आप पहले से ही एलेक्स करते हैं)।

आदेश इस तरह दिखता है:

qemu-img resize filename [+|-]size[K|M|G|T]

filenameछवि फ़ाइल कहां है, और आकार वह आकार है जिसे आप छवि को बढ़ाना (या सिकोड़ना) चाहते हैं।

उदाहरण के लिए, यदि आप छवि archarm.imgको 2GB तक बढ़ाना चाहते हैं तो आप निष्पादित करेंगे:

qemu-img resize archarm.img +2G

मैनपेज का संदर्भ लेते हुए, एक डिस्क छवि को सिकोड़ने के लिए इस कमांड का उपयोग करने से पहले, आप आवंटित फ़ाइल सिस्टम और विभाजन के आकार को कम करने के लिए VM के अंदर फ़ाइल सिस्टम और पार्टीशनिंग टूल का उपयोग करें। ऐसा करने में विफलता के परिणामस्वरूप डेटा हानि होगी!
एंटोनियोके
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.