KVM छवि वायरल के साथ शुरू करने में विफल रही, अनुमति से इनकार कर दिया


12

मेरा होस्ट ओएस उबंटू सर्वर 11.04 (नेट्टी) है

उबंटू की मदद से विस्तृत निर्देशों का पालन करने के बाद , मैंने उपयोग करके एक केवीएम छवि बनाई

sudo ubuntu-vm-builder kvm hardy --libvirt qemu:///system

छवि फ़ाइल के रूप में बनाया गया था

-rw-r--r-- 1 root root 438M 2011-06-17 14:39 ubuntu-kvm/tmpK9hbU5.qcow2

मैं इसे sudo virsh -c qemu द्वारा वायरश के साथ सूचीबद्ध कर सकता हूं: /// सिस्टम "सूची --all"

Id   Name                 State
----------------------------------
  - ubuntu               shut off  

बुथ जब मैं बुलाता हूं

sudo virsh -c qemu:///system "start ubuntu"

त्रुटि को फेंक दिया गया था:

error: Failed to start domain ubuntu
error: internal error process exited while connecting to monitor: kvm: -drive file=/home/myuser/vmopt/ubuntu-kvm/tmpK9hbU5.qcow2,if=none,id=drive-ide0-0-0,format=qcow2: could not open disk image /home/myuser/vmopt/ubuntu-kvm/tmpK9hbU5.qcow2: Permission denied

उपयोगकर्ता "myuser" को समूह libvirt में जोड़ा गया था।

मैं अब तक छवि फ़ाइल को 777 तक अपनी निर्देशिका में बदलने के लिए गया हूं, लेकिन त्रुटि अभी भी है।

जवाबों:


9

KVM छवियों को सेलिनक्स द्वारा प्रतिबंधित किया जाता है। उन्हें / var / lib / libvirt / छवियों में डालना पर्याप्त होना चाहिए।

http://libvirt.org/drvqemu.html#securityselinux अधिक विवरण में जाता है।


आदमी!! इसने मेरे लिए काम किया। दोस्त बहुत - बहुत धन्यवाद। जाहिरा तौर पर आपके खाते की $ HOME निर्देशिका संरक्षित है जो कि डिफ़ॉल्ट रूप से चीजों को स्थापित करना पसंद करती है। अपनी vms स्थापित करने के बाद, मैंने mv $ HOME / vmfolder / var / lib / libvirt / images को चलाया। तब मैंने वायरल एडिट vmname भाग लिया और तदनुसार छवि फ़ाइल का स्थान बदल दिया।
एंटवान डब्ल्यू। ए-डब

मुझे अपने एक vms के मालिक को भी बदलना पड़ा। यह जड़ से संबंधित था जिसके कारण एक पहुंच से वंचित था। सुडो चाउन -R लिब्वर्ट-क्यूमू: केवीएम डबोस / उबंटु-केवीएम /। आप प्रत्येक स्तर पर अनुमतियों की जाँच करने के लिए ls -l को / अपने / vm / dir / और / / / उप-विभाजनों पर चला सकते हैं। सुनिश्चित करें कि उनमें से कोई भी रूट समूह और उपयोगकर्ता से संबंधित नहीं है।
एंटवान डब्ल्यू। ए-डब

मैंने पाया है कि अपनी vm बनाने का सबसे आसान और सुरक्षित तरीका यह सुनिश्चित करना है कि आप इस निर्देशिका / var / lib / libvirt / images को cd करें और वहां से अपना इंस्टॉल रन करें। इस तरह आपको फ़ोल्डर स्तर अनुमतियों के बारे में चिंता करने की आवश्यकता नहीं होगी। वे रूट के विपरीत वर्तमान उपयोगकर्ता के लिए बस डिफ़ॉल्ट होंगे।
एंटवान डब्ल्यू। ए-डब

4

एक आसान समाधान /etc/libvirt/qemu.conf फ़ाइल को संपादित करना और निम्नलिखित पंक्तियों को अनलिमिट करना होगा:

User = "root"
group = "root"

Libvirtd को पुनरारंभ करना न भूलें


4
यह आपको इसे चलाने दे सकता है, लेकिन सुरक्षा निहितार्थ क्या हैं?
cpast

1
शायद बेहतर करने के लिए अपने आप को जोड़ने के लिए kvmसमूह, तदनुसार छवि फ़ाइल अनुमतियों को समायोजित, और सेट user="<yourname>"में qemu.conf
मार्क.2377

1

आर्क लिनक्स में:

sudo usermod -a -G kvm username

में QEMU प्रक्रियाओं के लिए अनुमतियाँ सेट करें /etc/libvirt/qemu.conf

user = "username"
group = "kvm"

एक ही टर्मिनल में समूह सदस्यता को ताज़ा करने के लिए:

su - username

अपने लिए एक उपनाम जोड़ें ~/.bashrc

alias virsh='EDITOR=nano sudo virsh && cd /etc/libvirt/qemu'

आखिरकार

source ~/.bashrc
virsh
list --all
start mydomain

0

ऐसा लगता है कि यह अनुमति-त्रुटि भी दूषित qcow2 ओवरले / स्नैपशॉट से संबंधित हो सकती है!

इस सेटअप में था:

Baseimage> Overlay1>Overlay2

ओवरले को सीएमडी के साथ बनाया गया था virsh snapshot-create ...और Overlay1बनाने Overlay2(परीक्षण के लिए बनाया गया ) से पहले नया इस्तेमाल किया गया था (वीएम शुरू नहीं हुआ )।

IRL उपयोग के मामले में बहुत अधिक संभावना नहीं है, लेकिन फिर भी इसे यह त्रुटि मिली और यह मुझे पागल कर रहा था जब तक मुझे एहसास नहीं हुआ कि ओवरले चेन से संबंधित था और फाइल-सिस्टम एक्सेस अनुमतियों से संबंधित नहीं था।

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