VERR_ACCESS_DENIED เมื่อพยายามเพิ่มดิสก์ดิบลงในกล่องเสมือน


20

ฉันสร้าง virtualbox ดิบ disk ที่ชี้ไปที่การทำงานบูตไดรฟ์ USB ด้วย distro linux ขนาดเล็ก

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

เมื่อฉันพยายามเพิ่มลงใน virtualbox 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)

ฉันเห็นว่าไฟล์ raw disk vmdk เป็นของ root ฉัน chown'ed ให้กับผู้ใช้ของฉันเอง

ยังคงได้รับข้อผิดพลาดเดียวกัน ฉันสงสัยว่ามันจะทำงานได้ถ้าฉันใช้ virtualbox ในฐานะ root แต่ฉันไม่ต้องการทำเช่นนั้น อย่างไรก็ตามมีเพื่อให้งานนี้


VirtualBox ต้องการการเข้าถึงรูทสำหรับสิ่งต่างๆมากมายและคุณใช้ sudo อยู่แล้วดังนั้นคุณอาจจะทำการรูทที่เหมาะสมเพื่อรับสภาพแวดล้อมและคุณสมบัติของผู้ใช้ที่เหมาะสม
Julie Pelletier

อาจเกี่ยวข้องกับ "วิธีการ" ที่คุณใช้ในการสร้างดิสก์ คุณกำลังพยายามเข้าถึงดิสก์ USB แต่ข้อผิดพลาดคือการอ้างอิงตำแหน่งไฟล์ภาพก่อนหน้า
ILMostro_7

ปัญหาเดียวกันสำหรับฉัน เมื่อฉันพยายามที่จะดำเนินการในฐานะ sudo มันไม่อนุญาตให้ใช้เครื่อง x64 นั่นเป็นกรณีของฉันและจากนั้นก็ไม่มีวิธีแก้ปัญหาสำหรับฉัน ... : '(- usind บน linux
kokbira

คำตอบ:


13

ผู้ใช้ควรอยู่ในdiskกลุ่มเพื่อเข้าถึงพาร์ติชั่นดิบ (ตามที่ Gilles พูดถึงโดยอ้างอิงล่าสุดในคำตอบของเขา)

sudo usermod -a -G disk $USER

6
ใช้งานได้สำหรับฉันเช่นกัน - โปรดทราบว่าคุณต้องออกจากระบบหลังจากเพิ่มตัวเองในกลุ่มมิฉะนั้นการเปลี่ยนแปลงนี้จะไม่ถูกนำไปใช้ นั่นคือการปรับเปลี่ยนกลุ่มใด ๆ จริง ๆ แล้ว
Cybex

การใช้คำสั่งนั้นก็เพียงพอแล้วสำหรับฉัน
kokbira

นี่คือสิ่งที่ฉันต้องการ ขอบคุณมาก!
Theodore R. Smith

10

ตรวจสอบได้รับอนุญาตในทุก~/VirtualBox VMsไฟล์ที่เกี่ยวข้องรวมทั้งไดเรกทอรี: ~/VirtualBox VMs/MyTinyLinux, ~/VirtualBox VMs/MyTinyLinux/rawdiskonusb.vmdk, /dev/disk2, ไดเรกทอรีจะต้องสามารถอ่านและผ่านได้โดยผู้ใช้ของคุณ ( chmod +rx) และไฟล์รูปภาพและดิสก์ดิบจะต้องสามารถอ่านและเขียนได้ ( chmod +rw)

คุณจะต้องอนุญาตให้ผู้ใช้ของคุณเข้าถึงดิสก์ เนื่องจาก/devมีการเติมข้อมูลโดยอัตโนมัติในการบู๊ตแต่ละครั้งคุณจะต้องเพิ่ม udev เพื่อทำสิ่งนี้ ดูให้สิทธิ์ผู้ใช้เฉพาะกับอุปกรณ์โดยไม่ให้สิทธิ์การเข้าถึงแก่ผู้ใช้รายอื่น


8

โปสเตอร์ใช้ linux บนเครื่องโฮสต์ หากคุณมาที่นี่และใช้Windowsเป็นโฮสต์ (เช่นฉัน) มีวิธีแก้ไขข้อผิดพลาดนี้ได้อย่างง่ายดาย Windows ไม่อนุญาตให้มีการเข้าถึงดิสก์ดิบถ้าคุณไม่เริ่มต้น VirtualBox กับสิทธิ์ของผู้ดูแลระบบ


2
ฉันมีปัญหานี้ในขณะนี้แม้ในขณะที่ใช้ VB กับ priveleges ที่ยกระดับ
Euri Pinhollow

คุณเริ่ม VirtualBox จากบัญชีผู้ดูแลระบบหรือโดยเรียกใช้ในฐานะผู้ดูแลระบบหรือไม่ ถ้าไม่คุณสามารถลองด้วยสิทธิพิเศษสูงสุดและลองน้อยลงเมื่อคุณได้ทำงาน
Pascal

ขอบคุณสำหรับการตอบ. ฉันลองมันมากกว่านั้นมันซับซ้อนกว่าที่ฉันคิด ฉันแค่อยากจะชี้ให้เห็นว่าไม่มีข้อผิดพลาดนี้ที่มาเดียว
Euri Pinhollow

@EuriPinhollow ได้แก้ไขปัญหาแล้วหรือยัง ฉันได้รับข้อผิดพลาดเดียวกันกับ Windows (แม้แต่ใช้งานผู้จัดการ VBox ในฐานะผู้ดูแลระบบ)
CF

3

คุณอาจต้องเพิ่มชื่อผู้ใช้ของคุณไปยังกลุ่ม VirtualBox ทั้งนี้ขึ้นอยู่กับการกระจาย

usermod -a -G vboxusers myusername

นอกจากนี้ตามคำถามและคำตอบที่คล้ายกันในAskubuntคุณอาจมี ISO ที่เสียหาย ในกรณีของคุณฉันคิดว่ามันหมายถึงการแปลงที่ไม่เรียบร้อยไปเป็นดิสก์ดิบ ลองค้นหาวิธีการทำขั้นตอนนั้นให้ถูกต้องและทำซ้ำในกรณีที่การแปลงไม่เรียบร้อยในระหว่างขั้นตอนแรก


หากยังไม่ได้แก้ปัญหาให้ทำตามคำแนะนำในคู่มือ VirtualBoxและเพิ่ม-relativeตัวเลือก:

การสร้างภาพต้องใช้สิทธิ์การอ่าน / เขียนสำหรับอุปกรณ์ที่กำหนด จำเป็นต้องมีสิทธิ์อ่าน / เขียนในภายหลังเมื่อใช้อิมเมจจากเครื่องเสมือน หากไม่สามารถทำได้มีตัวแปรพิเศษสำหรับการเข้าถึงพาร์ติชัน raw (ปัจจุบันมีเฉพาะในโฮสต์ Linux) ที่หลีกเลี่ยงไม่ให้ผู้ใช้ปัจจุบันเข้าถึงดิสก์ทั้งหมด ในการตั้งค่ารูปภาพให้ใช้

คำสั่งภายใน VBoxManage createrawvmdk -filename /path/to/file.vmdk -rawdisk / dev / sda - พาร์ติชัน 1,5 - สัมพันธ์

เมื่อใช้จากเครื่องเสมือนอิมเมจจะไม่อ้างอิงถึงดิสก์ทั้งหมด แต่เฉพาะกับแต่ละพาร์ติชัน (ในตัวอย่าง / dev / sda1 และ / dev / sda5) ดังนั้นการเข้าถึงการอ่าน / เขียนจึงเป็นสิ่งจำเป็นสำหรับพาร์ติชันที่ได้รับผลกระทบไม่ใช่สำหรับทั้งดิสก์ ในระหว่างการสร้างอย่างไรก็ตามจำเป็นต้องมีการเข้าถึงดิสก์ทั้งหมดแบบอ่านอย่างเดียวเพื่อรับข้อมูลการแบ่งพาร์ติชัน


2

เนื่องจากไม่มีคำตอบที่ยอมรับได้ฉันจะโพสต์สิ่งนี้เป็นคำตอบในขณะนี้ นอกเหนือจากการทำให้แน่ใจว่าคุณอยู่ในกลุ่มที่ถูกต้องตามที่คนอื่น ๆ โพสต์ไว้ด้านบน:

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

หากคุณยังคงได้รับVERR_ACCESS_DENIEDข้อผิดพลาดคุณต้องตามความคิดเห็นโดย @Cybex ออกจากระบบและกลับเข้าสู่ระบบเพื่อให้การเพิ่มกลุ่มข้างต้นมีผล


"vboxusers" ไม่จำเป็นสำหรับกรณีของฉันเฉพาะ "ดิสก์" (fedora29) ใน mint19 ฉันไม่สามารถเรียกใช้ VM นั้นด้วย rawdisk ยกเว้นการใช้ sudo
kokbira

0

ฉันมีปัญหาที่คล้ายกัน แต่ปัญหาคือว่าฉันกำลังเรียกใช้คำสั่ง sudo ในขณะที่ค้นหาฉันอยู่ในระดับเสียงที่บ้านของฉันฉันจะไปที่ไดรฟ์ข้อมูล / ผู้ใช้ / เจ้าของที่โปรไฟล์ของฉันเรียกว่าเจ้าของแล้วมันทำงานได้อย่างสมบูรณ์


0

ปัญหา (สำหรับฉัน) คือการแสดงชื่อไฟล์เท่านั้นโดยไม่มีเส้นทางไดเรกทอรีทั้งหมด ... ต้องการชื่อไฟล์เท่านั้น -

คำสั่งภายใน VBoxManage createrawvmdk -filename rawdiskonusb.vmdk -rawdisk \. \ PhysicalDrive #

ทำงานได้ดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.