वर्चुअल बॉक्स में एक कच्ची डिस्क जोड़ने की कोशिश करते समय VERR_ACCESS_DENIED


20

मैंने एक वर्चुअलबॉक्स कच्ची डिस्क बनाई, जो कि एक कार्यप्रणाली की ओर इशारा करती है, उस पर एक छोटे से लिनक्स डिस्ट्रो के साथ यूएसबी ड्राइव को बूट करता है।

sudo ./VBoxManage internalcommands createrawvmdk -filename ~/VirtualBox\ VMs/MyTinyLinux/rawdiskonusb.vmdk -rawdisk /dev/disk2 -partitions 2

जब मैं इसे एक वर्चुअलबॉक्स VM में जोड़ने का प्रयास करता हूं, तो मुझे यह त्रुटि मिलती है:

Failed to open the disk image file ~/VirtualBox VMs/MyTinyLinux/rawdiskonusb.vmdk.

Permission problem accessing the file for the medium '~/VirtualBox VMs/MyTinyLinux/rawdiskonusb.vmdk' (VERR_ACCESS_DENIED).

Result Code: VBOX_E_FILE_ERROR (0x80BB0004)
Component: MediumWrap
Interface: IMedium {4afe423b-43e0-e9d0-82e8-ceb307940dda}
Callee: IVirtualBox {0169423f-46b4-cde9-91af-1e9d5b6cd945}
Callee RC: VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)

मैंने देखा कि कच्ची डिस्क vmdk फ़ाइल रूट के स्वामित्व में थी। मैंने इसे अपने स्वयं के उपयोगकर्ता के लिए चुना।

फिर भी वही त्रुटि मिलती है। मुझे संदेह है कि अगर मैंने वर्चुअलबॉक्स को रूट के रूप में चलाया तो यह काम करेगा, लेकिन मैं वास्तव में ऐसा नहीं करना चाहता। वहाँ वैसे भी यह काम करने के लिए है?


VirtualBox को चीजों के एक समूह के लिए रूट एक्सेस की आवश्यकता होती है, और आप पहले से ही sudo का उपयोग करते हैं ताकि आप उचित पर्यावरण और उपयोगकर्ता गुणों को प्राप्त करने के लिए एक उचित रूट स्टार्टअप कर सकें।
जूली पेलेटियर

यह संभवतः उस "विधि" से संबंधित है जिसका उपयोग आपने डिस्क बनाने के लिए किया था। इसलिए, आप USB डिस्क तक पहुंचने का प्रयास कर रहे हैं, लेकिन त्रुटि पिछले छवि फ़ाइल स्थान को संदर्भित कर रही है।
ILMostro_7

मेरे लिए भी यही मुद्दा है। जब मैं सूडो के रूप में निष्पादित करने की कोशिश करता हूं, तो यह x64 मशीनों की अनुमति नहीं देता है, यह मेरा मामला था, और फिर मेरे लिए कोई समाधान नहीं है ...: '(
usux

जवाबों:


13

उपयोगकर्ता को diskकच्चे विभाजन का उपयोग करने के लिए एक समूह में होना चाहिए (जैसा कि गिल्स ने अपने उत्तर में अंतिम संदर्भ में बताया है)।

sudo usermod -a -G disk $USER

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

केवल उस आदेश का उपयोग करना मेरे लिए पर्याप्त था
कोकबीरा

यह वही था जो मुझे चाहिए था। आपको बहुत - बहुत धन्यवाद!
थियोडोर आर। स्मिथ

10

पर अनुमति की जाँच करें सभी निर्देशिकाओं सहित शामिल फ़ाइलें,: ~/VirtualBox VMs, ~/VirtualBox VMs/MyTinyLinux, ~/VirtualBox VMs/MyTinyLinux/rawdiskonusb.vmdk, /dev/disk2। निर्देशिका को आपके उपयोगकर्ता ( chmod +rx) और छवि फ़ाइल द्वारा पठनीय और ट्रैवर्सेबल होना चाहिए और कच्ची डिस्क को पठनीय और लिखने योग्य ( chmod +rw) होने की आवश्यकता है ।

आपको अपने उपयोगकर्ता को डिस्क तक पहुंचने की अनुमति देने की आवश्यकता होगी; चूंकि /devप्रत्येक बूट पर स्वचालित रूप से आबादी होती है, इसलिए आपको ऐसा करने के लिए एक udv जोड़ना होगा। अन्य उपयोगकर्ताओं को एक्सेस दिए बिना किसी डिवाइस को एक विशिष्ट उपयोगकर्ता अनुमति दें देखें


8

पोस्टर में मेजबान मशीन पर लाइनक्स का इस्तेमाल किया गया था। यदि आप यहां आए और एक होस्ट (मेरी तरह) के रूप में विंडोज का उपयोग करें तो इस त्रुटि का एक आसान समाधान है। यदि आप VirtualBox को व्यवस्थापक निजीकृत के साथ प्रारंभ नहीं करते हैं तो Windows कच्ची डिस्क एक्सेस की अनुमति नहीं देता है ।


2
उन्नत प्राध्यापकों के साथ VB चलाते समय भी मुझे यह समस्या है।
यूरी पिनहोल

क्या आपने VirtualBox को व्यवस्थापक खाते से या व्यवस्थापक के रूप में चलाकर शुरू किया था? यदि नहीं, तो आप उच्चतम विशेषाधिकारों के साथ प्रयास कर सकते हैं और कम से कम एक बार काम करने के साथ प्रयास करें।
पास्कल

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

@EuriPinhollow ने समस्या हल कर दी है? मैं एक ही त्रुटि om विंडोज (यहां तक ​​कि व्यवस्थापक के रूप में VBox प्रबंधक चल रहा है) मिलता है
CF

3

वितरण के आधार पर, आपको अपने उपयोगकर्ता नाम को VirtualBox समूह में जोड़ना पड़ सकता है।

usermod -a -G vboxusers myusername

इसके अतिरिक्त, Askubunt पर समान Q & A के अनुसार , आपके पास एक भ्रष्ट ISO हो सकता है। आपके मामले में, मुझे लगता है कि इसका मतलब कच्ची डिस्क में परिवर्तित रूपांतरण होगा। उस प्रक्रिया को सही ढंग से करने के तरीके पर खोज करने का प्रयास करें और इसे दोहराएं, यदि पहली प्रक्रिया के दौरान रूपांतरण किसी तरह से बॉट गया।


यदि यह अभी भी समाधान नहीं है, तो वर्चुअलबॉक्स मैनुअल में सलाह का पालन करें और -relativeविकल्प जोड़ें :

छवि बनाने के लिए दिए गए डिवाइस के लिए पढ़ने / लिखने की आवश्यकता होती है। वर्चुअल मशीन से छवि का उपयोग करते समय रीड / राइट एक्सेस भी बाद में आवश्यक है। यदि यह संभव नहीं है, तो कच्चे विभाजन पहुंच के लिए एक विशेष संस्करण है (वर्तमान में केवल लिनक्स होस्ट पर उपलब्ध है) जो वर्तमान उपयोगकर्ता को संपूर्ण डिस्क तक पहुंच देने से बचता है। ऐसी छवि स्थापित करने के लिए, उपयोग करें

VBoxManage इंटर्नलैंड्स craitawvmdk -filename /path/to/file.vmdk -rawdisk / dev / sda -partitions 1,5 -relative

जब एक वर्चुअल मशीन से उपयोग किया जाता है, तो छवि तब संपूर्ण डिस्क को नहीं, बल्कि केवल व्यक्तिगत विभाजन (उदाहरण / देव / sda1 और / देव / sda5 में) को संदर्भित करेगी। परिणामस्वरूप, प्रभावित विभाजन के लिए रीड / राइट एक्सेस केवल आवश्यक है, संपूर्ण डिस्क के लिए नहीं। हालांकि निर्माण के दौरान, विभाजन की जानकारी प्राप्त करने के लिए संपूर्ण डिस्क तक केवल-पढ़ने की आवश्यकता होती है।


2

चूंकि कोई स्वीकृत उत्तर नहीं है, इसलिए मैं इस समय के उत्तर के रूप में पोस्ट करूंगा। यह सुनिश्चित करने के अलावा कि आप सही समूहों में हैं, जैसा कि अन्य ने ऊपर पोस्ट किया है:

sudo usermod -a -G disk $USER
sudo usermod -a -G vboxusers $USER

यदि आपको अभी भी VERR_ACCESS_DENIEDत्रुटि हो रही है , तो आपको ऊपर दिए गए समूह जोड़ के लिए @Cybex की टिप्पणी के अनुसार लॉगआउट करना होगा और लॉग इन करना होगा।


मेरे मामले के लिए "vboxusers" की आवश्यकता नहीं थी, केवल "डिस्क" (fedora29)। टकसाल 19 पर, मैं उस वीएम को रॉडीस्क के साथ नहीं चला सकता था, सिदो का उपयोग करने के अलावा।
कोकबीरा

0

मुझे भी इसी तरह की समस्या थी लेकिन मुद्दा यह था कि मैं sudo कमांड चला रहा था जबकि खोजक में मैं अपने होम वॉल्यूम में था, मैं वॉल्यूम / यूजर्स / ओनर को बताता था जहां मेरी प्रोफाइल को मालिक कहा जाता है और फिर यह पूरी तरह से काम करता है।


0

समस्या (मेरे लिए) संपूर्ण निर्देशिका पथ के बिना केवल फ़ाइल नाम दिखाने के लिए थी। ... केवल नाम की जरूरत है-

VBoxManage internalcommands createrawvmdk -filename rawdiskonusb.vmdk -rawdisk \। \ PhysicalDrive #

अच्छी तरह से काम किया।

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