VERR_ACCESS_DENIED ketika mencoba menambahkan disk mentah ke kotak virtual

20

Saya membuat disk virtualbox menunjuk ke sebuah fungsi, boot USB drive dengan distro linux kecil di atasnya.

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

Ketika saya mencoba menambahkannya ke VM virtualbox, saya mendapatkan kesalahan ini:

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)

Saya melihat bahwa file vmdk disk mentah dimiliki oleh root. Saya chown'ed ke pengguna saya sendiri.

Masih mendapatkan kesalahan yang sama. Saya curiga ini akan berhasil jika saya menjalankan virtualbox sebagai root, tetapi saya benar-benar tidak ingin melakukan itu. Apakah ada cara untuk membuat ini bekerja?

adapt-dev
sumber
VirtualBox membutuhkan akses root untuk banyak hal, dan Anda sudah menggunakan sudo sehingga Anda bisa melakukan root startup yang tepat untuk mendapatkan lingkungan dan properti pengguna yang tepat.
Julie Pelletier
Itu mungkin terkait dengan "metode" yang Anda gunakan untuk membuat disk. Jadi, Anda mencoba mengakses disk USB, tetapi Error merujuk pada lokasi file gambar sebelumnya.
ILMostro_7
Masalah yang sama bagi saya. Ketika saya mencoba mengeksekusi sebagai sudo, itu tidak memungkinkan mesin x64, itu adalah kasus saya, dan kemudian tidak ada solusi untuk saya ...: '(- usind di linux
kokbira

Jawaban:

13

Pengguna harus dalam diskgrup untuk mengakses partisi mentah (seperti yang disebutkan Gilles oleh referensi terakhir dalam jawabannya).

sudo usermod -a -G disk $USER
ASten
sumber
6
ini juga berfungsi untuk saya - perhatikan bahwa Anda harus keluar setelah menambahkan diri ke grup, atau perubahan ini tidak akan diterapkan. Itu berlaku untuk setiap modifikasi grup sebenarnya
Cybex
Hanya menggunakan perintah itu sudah cukup bagi saya
kokbira
Inilah yang saya butuhkan. Terima kasih banyak!
Theodore R. Smith
10

Periksa izin pada semua file yang terlibat, termasuk direktori: ~/VirtualBox VMs, ~/VirtualBox VMs/MyTinyLinux, ~/VirtualBox VMs/MyTinyLinux/rawdiskonusb.vmdk, /dev/disk2. Direktori harus dapat dibaca dan dilalui oleh pengguna Anda ( chmod +rx) dan file gambar dan disk mentah harus dapat dibaca dan ditulis ( chmod +rw).

Anda harus mengizinkan pengguna untuk mengakses disk; karena /devdiisi secara otomatis pada setiap boot, Anda harus menambahkan udev untuk melakukan ini. Lihat Memberikan izin pengguna khusus ke perangkat tanpa memberikan akses ke pengguna lain

Gilles 'SANGAT berhenti menjadi jahat'
sumber
8

Poster itu menggunakan linux di mesin host. Jika Anda datang ke sini dan menggunakan Windows sebagai tuan rumah (seperti saya) ada solusi mudah untuk kesalahan ini. Windows tidak mengizinkan akses disk mentah jika Anda tidak memulai VirtualBox dengan hak administrator .

Pascal
sumber
2
Saya memiliki masalah ini sekarang bahkan ketika menjalankan VB dengan priveleges tinggi.
Euri Pinhollow
Apakah Anda memulai VirtualBox dari akun administrator atau dengan menjalankan sebagai administrator? Jika tidak, Anda dapat mencoba dengan hak istimewa tertinggi dan mencoba dengan lebih sedikit setelah Anda membuatnya berfungsi.
Pascal
Terima kasih atas balasannya Saya mencobanya dan lebih dari itu, ternyata lebih rumit dari yang saya kira. Saya hanya ingin menunjukkan bahwa tidak ada satu pun sumber kesalahan ini.
Euri Pinhollow
@EuriPinhollow Sudah menyelesaikan masalah? Saya mendapatkan kesalahan yang sama om Windows (bahkan menjalankan VBox manager sebagai admin)
CF
3

Bergantung pada distribusinya, Anda mungkin harus menambahkan nama pengguna ke grup VirtualBox.

usermod -a -G vboxusers myusername

Selain itu, menurut T&J yang sama pada askubunt , Anda mungkin memiliki ISO yang korup. Dalam kasus Anda, saya kira itu berarti konversi yang gagal ke disk mentah. Coba cari cara melakukan prosedur itu dengan benar dan ulangi, kalau-kalau konversi entah bagaimana gagal selama prosedur pertama.


Jika itu masih bukan solusi, maka ikuti saran dalam Manual VirtualBox dan tambahkan -relativeopsi:

Membuat gambar memerlukan akses baca / tulis untuk perangkat yang diberikan. Akses baca / tulis juga dibutuhkan saat menggunakan gambar dari mesin virtual. Jika ini tidak layak, ada varian khusus untuk akses partisi mentah (saat ini hanya tersedia di host Linux) yang menghindari keharusan memberikan akses pengguna saat ini ke seluruh disk. Untuk mengatur gambar seperti itu, gunakan

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk / dev / sda -partitions 1,5-relatif

Ketika digunakan dari mesin virtual, gambar kemudian akan merujuk tidak ke seluruh disk, tetapi hanya ke partisi individu (dalam contoh / dev / sda1 dan / dev / sda5). Akibatnya, akses baca / tulis hanya diperlukan untuk partisi yang terpengaruh, bukan untuk seluruh disk. Namun selama pembuatan, akses hanya baca ke seluruh disk diperlukan untuk mendapatkan informasi partisi.

ILMostro_7
sumber
2

Karena tidak ada jawaban yang diterima, saya akan memposting ini sebagai jawaban untuk saat ini. Selain memastikan Anda berada di grup yang tepat, seperti yang telah diposting orang lain di atas:

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

Jika Anda masih mendapatkan VERR_ACCESS_DENIEDkesalahan, Anda harus, sesuai komentar oleh @Cybex, keluar dan masuk kembali agar penambahan grup di atas berlaku.

pergi
sumber
"vboxusers" tidak diperlukan untuk kasus saya, hanya "disk" (fedora29). Pada mint19, saya tidak bisa menjalankan VM itu dengan rawdisk, kecuali menggunakan sudo.
kokbira
0

Saya memiliki masalah yang sama tetapi masalahnya adalah saya menjalankan perintah sudo sementara di finder saya berada di volume rumah saya, saya akan ke Volume / Pengguna / Pemilik di mana profil saya disebut pemilik dan kemudian bekerja dengan sempurna.

Jesus Jones
sumber
0

Masalahnya (bagi saya) adalah Untuk hanya menampilkan nama file tanpa seluruh jalur direktori. ... Hanya nama file yang diperlukan-

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

bekerja dengan baik.

Hariyanto Hariyanto
sumber