小さな Linux ディストリビューションが入った、正常に機能する起動可能な USB ドライブを指す VirtualBox RAW ディスクを作成しました。
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)
生のディスクの vmdk ファイルが root によって所有されていることがわかりました。それを自分のユーザーに chown しました。
まだ同じエラーが発生します。virtualbox を root として実行すれば動作すると思いますが、本当にそうしたくありません。これを動作させる方法はありますか?
答え1
RAW パーティションにアクセスするには、ユーザーはdisk
グループに属している必要があります (Gilles が回答の最後の参照で言及しているとおり)。
sudo usermod -a -G disk $USER
答え2
投稿者はホストマシンでLinuxを使用しました。ここに来て使用した場合ウィンドウズホスト(私のような)の場合、このエラーには簡単な解決策があります。Windowsでは、以下の手順を実行しないとrawディスクへのアクセスが許可されません。管理者権限でVirtualBoxを起動する。
答え3
2020年からはこちら:
- バーチャルボックスを実行するサービス管理者として(VBoxSVC.exe) を実行している場合は、まずそれを強制終了します。
- 仮想ボックスのメイン実行ファイルを実行する(仮想ボックスデスクトップにあるものはすべて管理者として
答え4
受け入れられた回答がないので、とりあえずこれを回答として投稿します。他の人が上に投稿したように、適切なグループにいることを確認することに加えて、
sudo usermod -a -G disk $USER
sudo usermod -a -G vboxusers $USER
それでもVERR_ACCESS_DENIED
エラーが発生する場合は、@Cybexのコメントに従って、ログアウトして再度ログインする上記のグループの追加が有効になります。