मैं libvirt में डिस्क छवि कैसे आयात करूं?


12

क्या कोई उचित वाक्यविन्यास पोस्ट कर सकता है? मैंने chmod कमांड का उपयोग करने की कोशिश की है, लेकिन मैं कुछ गलत कर रहा हूं। मैं सिर्फ एक सेंटो आइसो फाइल / छवियों को स्थानांतरित करने की कोशिश कर रहा हूं ताकि एक परीक्षण वीएम स्थापित किया जा सके


क्या आप उन कमांड को पोस्ट कर सकते हैं जिन्हें आप चलाने की कोशिश कर रहे हैं? और त्रुटि संदेश क्या है?
एरिक कार्वाल्हो

जवाबों:


16

आप वास्तव में "माना" नहीं कर रहे हैं इसे इस तरह से करें, क्योंकि libvirt अपने वॉल्यूम पूल का ध्यान रखता है। उपयोग:

size=$(stat -Lc%s centos.iso)
virsh vol-create-as default centos $size --format raw
virsh vol-upload --pool default centos centos.iso

यह centosसामग्री की सामग्री के साथ डिफ़ॉल्ट पूल में एक वायरश वॉल्यूम कहलाएगा centos.iso

इस तरह, libvirt स्वयं सभी आवश्यक अनुमतियों और स्वामित्व का ध्यान रखता है।


1
पहली बार मैंने मंच का उपयोग किया है। बहुत बढ़िया सलाह।
फमोव

2

मैं मानता हूं कि दो चीजें हैं: /var/lib/libvirt/images/जिनके स्वामित्व में rootआप हैं और आप नहीं हैं root। यह ठीक है लेकिन आपको सम्मान देना होगा कि समस्या क्या है।

इसका उपयोग करके संभवतः फ़ाइल को रूट के रूप में कॉपी करना सबसे अधिक समझ में आएगा sudo:

sudo cp my-image /var/lib/libvirt/images/

वैकल्पिक रूप से, आप इसे संभाल सकते हैं /var/lib/libvirt/images/:

sudo chown $USER /var/lib/libvirt/images/

या (कम से कम अच्छा) आप इसे विश्व स्तर पर बना सकते हैं:

sudo chmod 755 $USER /var/lib/libvirt/images/

मैं तर्क का पालन करूंगा कि यह एक कारण के लिए है, लेकिन अगर आप बस के आसपास खेल रहे हैं और यह कभी भी उत्पादन मशीन नहीं बनने जा रहा है, तो आपको शायद इतना सावधान रहने की आवश्यकता नहीं है।


मैं शायद आखिरी कमांड के साथ जाता हूं क्योंकि मैं इसे समझता हूं और यह एक परीक्षण का माहौल है।
फमोव

2

मुझे पता है कि यह एक पुरानी पोस्ट है लेकिन मैं जो करना चाहता था उसे साझा करना चाहता था।

मेरे मामले में, मुझे एक मात्रा में qcow2 छवि आयात करने की आवश्यकता थी। मैंने jq, qemu-img और bash का उपयोग किया है:

# export IMGSIZE=$(qemu-img info --output json /data/myfile.qcow2 | jq -r .[\"virtual-size\"])
# export IMGFMT=$(qemu-img info --output json /data/myfile.qcow2 | jq -r .format)

पूल की सूची बनाएं और जिसे आप चाहते हैं उसका चयन करें:

# virsh pool-list --all
 Name                 State      Autostart
-------------------------------------------
 default              active     yes

# export IMGPOOL=default

मात्रा बनाएँ:

# virsh vol-create-as $IMGPOOL myvolume $IMGSIZE --format $IMGFMT
Vol myvolume created

और चित्र अपलोड करें:

# virsh vol-upload --pool $IMGPOOL myvolume /data/myfile.qcow2

मुझे नहीं पता कि क्या आप qemu-img को वायरल कर सकते हैं, 'qemu-img dd ... की तरह | virsh vol-upload ... 'लेकिन यह सुविधाजनक होगा :-)

धन्यवाद @ रॉबी बसाक अपनी पोस्ट के लिए, मैंने इसका उपयोग उपरोक्त जानकारी लिखने के लिए किया है।


1

आप इसे नॉटिलस में टाइप करने की कोशिश कर सकते हैं

sudo -i nautilus

और उसके बाद फ़ाइल को कॉपी करें जैसा कि आप सामान्य रूप से करते हैं।


क्या मुझे लगता है कि नॉटिलस लोड हो गया है?
फमोव

नॉटिलस उबंटू के लिए डिफ़ॉल्ट फ़ाइल प्रबंधक है। मुझे नहीं लगता कि मैं वास्तव में आपके प्रश्न को समझता हूं।
मिहाई


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