क्या QEMU डिस्क छवि का आकार बदलना संभव है?


12

जैसे शीर्षक कहता है: क्या लिनक्स में QEMU डिस्क छवि का आकार बदलना संभव है? और यदि हां, तो इसके भीतर विभाजन का क्या होता है? क्या वे स्वचालित रूप से (संदिग्ध) भी आकार ले चुके हैं या उनके बाद अप्रयुक्त स्थान का एक नया ब्लॉक है?

जवाबों:


12

से यहाँ :

!!! नीचे की कोशिश करने से पहले अपनी डिस्क छवि का बैकअप लें !!!

यदि आप एक विरल कच्ची छवि का उपयोग कर रहे हैं, तो करें

dd if=/dev/zero of=hdd.img seek=N obs=1MB count=0"

जहाँ hdd.img कच्ची प्रारूप की छवि है जिसे आप आकार देना चाहते हैं और N वह नया आकार है जो आप चाहते हैं कि छवि मेगाबाइट में हो। N की इकाइयों को बदलने के लिए, गीगाबाइट्स (1000x1000x1000) में इकाइयों के लिए 1GB जैसी किसी अन्य चीज़ के लिए अवलोकन बदलें।

यदि आप एक कच्ची छवि का आकार बदलना चाहते हैं, लेकिन आप इसे विरल नहीं बनना चाहते हैं (आप वास्तव में फ़ाइल में उन शून्य चाहते हैं) तो "dd if = / dev / zero of = image seek = S count = NS obs = 1" करें इसके बजाय, जहां एन नया आकार है और एस पुराने आकार (बाइट्स में) है।

यदि आप एक qcow2 छवि का आकार बदलना चाहते हैं, तो यह अभी तक समर्थित नहीं है।

यह ईमेल कुछ हेक्स संपादक के साथ qcow छवियों का आकार बदलने के साथ कुछ प्रयोग दिखाता है।

अन्य प्रारूपों (वीएमवेयर, बोक्स, गाय, या क्लूप) में छवियों का आकार बदलना या बढ़ना मेरे सर्वोत्तम ज्ञान के लिए समर्थित नहीं है।

विंडोज होस्ट पर 'कॉपी' कमांड का उपयोग करके एक कच्चे प्रारूप डिस्क छवि का आकार बदलना संभव है। यदि आवश्यक हो तो आप अपनी मौजूदा छवि को कच्चे स्वरूप में बदलने के लिए qemu-img का उपयोग कर सकते हैं। हम एक अस्थायी कच्चे प्रारूप डिस्क छवि का उपयोग करेंगे जो आपके मौजूदा कच्चे प्रारूप डिस्क छवि के अंत में जोड़ा जाएगा। इस अस्थायी छवि का आकार मौजूदा छवि द्वारा विस्तारित किया जाएगा आकार है:

qemu-img create -f raw temp.img 300M

फिर आपको नीचे कमांड जारी करनी चाहिए - Orig.img आपकी मौजूदा कच्ची प्रारूप छवि है जिसे आप बड़ा बनाना चाहते हैं, अस्थायी ।img पहले बनाई गई अस्थायी छवि फ़ाइल है, और new.img परिणामी छवि है:

copy /b orig.img+temp.img new.img

फिर आपको नई छवि पर मौजूदा विभाजन (फाइलों) और फाइलसिस्टम (एस) को पुन: विभाजन और आकार देने की आवश्यकता होगी। ऐसा करने का एक तरीका यह है कि QEMU में gparted livecd iso और नई डिस्क छवि के साथ बूट किया गया है।


अन्य लिंक जिन्हें आप जांचना चाहते हैं कि क्या ऊपर काम नहीं करेगा:

http://qemu-forum.ipi.fi/viewtopic.php?p=12362
http://kev.coolcavemen.com/2007/04/how-to-grow-any-qemu-system-image-
http: // /bryan-murdock.blogspot.com/2007/12/resize-qemukvm-windows-disk-image.html
http://www.larsen-b.com/Article/329.html
http://www.brabbel.net / WP / अभिलेखागार / 174


17

Qemu के एक नए / वर्तमान संस्करण के साथ बढ़ने के लिए एक qcow2 छवि का आकार बदला जा सकता है। उदाहरण के लिए, मेरे पास एक arch.qcow2 thats 2G है और मैं चाहता हूं कि यह 50G हो जाए, उस मामले में मैं टाइप करता हूं:

qemu-img resize arch.qcow2 50G

तब क्यूमू मुझसे कहता है:

image resized

यह, मैं बस आज यह किया है। रेडहैट वास्तव में qemu पर कुछ अच्छे डॉक्स हैं:


3
हालांकि, बढ़ा हुआ स्थान अनावश्यक रूप से बढ़ा दिया जाएगा। आपको कुछ विभाजन टूल का उपयोग करके अपनी वर्चुअल डिस्क का आकार बदलना होगा।
यमनकेओ

विलक्षण, समाधान!
RckLN

qemu-img संस्करण 1.0 मुझे बताता हैqemu-img: This image format does not support resize
एचडीवी

5

2017 के लिए संक्षिप्त उत्तर: एक मौजूदा कच्ची छवि में उदाहरण के लिए 30 जीबी जोड़ने के लिए मैंने इस कमांड का उपयोग किया:

qemu-img resize nameofimg.img +30G

यह आपकी मौजूदा छवि फ़ाइल में 30 जीबी जोड़ता है (नई फ़ाइल बनाने की कोई आवश्यकता नहीं है)। फिर अपने अतिथि वीएम में आप अपने मौजूदा विभाजन का विस्तार कर सकते हैं, विंडोज 10 जैसे "डिस्क प्रबंधन" के साथ, आसान।

अधिक जानकारी और विकल्प:

man qemu-img

इन्हें भी देखें: qemu wiki> qemu-img


1

हाँ तुम कर सकते हो। और नहीं यह विभाजन या तालिका को नहीं बदलेगा। विभाजन तालिका को पूर्ण डिस्क आकार के लिए अद्यतन करने की आवश्यकता हो सकती है, और यदि आप इसे बढ़ाते हैं तो अंत में खाली अप्रयुक्त स्थान होगा, और आप एक विभाजन को काट देंगे और इसे खो देंगे या यदि आप इसे सिकोड़ते हैं तो इसके डेटा का अंतिम भाग ।

यदि आप qemu मॉनिटर में हैं (या QMP का उपयोग शायद), और इंटरफ़ेस इसका समर्थन करता है (जैसे कि rbd के साथ virtio-scsi-pci जो मैंने यहां परीक्षण किया था), तो VM को रिबूट किए बिना, आप यह कर सकते हैं:

(qemu) info block -v disk1
disk1 (#block165): rbd:rbd/manjaro (raw)
    Cache mode:       writeback

Images:
image: rbd:rbd/manjaro
file format: raw
virtual size: 4.0G (4294967296 bytes)
[...]

(qemu) block_resize disk1 5120

और पूफ, छवि को आपके द्वारा MiB में निर्दिष्ट आकार से आकार दिया जाता है, और VM नया आकार दिखाएगा।

मैंने qemu 2.7.0 पर निम्नलिखित का परीक्षण किया:

  • सेफ से आरबीडी - काम करता है, तेज, बढ़ता है या सिकुड़ता है
  • qcow2 डिस्क फ़ाइल - काम करती है, धीमी है, केवल बढ़ती है
  • कच्चे डिस्क फ़ाइल - काम करता है, तेज, बढ़ता है या सिकुड़ता है
  • कच्ची LVM डिस्क - मॉनिटर में सामान्य दिखती है लेकिन इसका कोई प्रभाव नहीं है

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