在FreeBSD系统里,怎么配置VirtualBox的直通硬盘。宿主机是FreeBSD,虚拟机是windows10
在FreeBSD系统里,怎么配置VirtualBox的直通硬盘。宿主机是FreeBSD,虚拟机是windows10
具体步骤如下
先查看是哪块硬盘
skywalk@fb98:~ $ gpart show => 40 3907029088 ada0 GPT (1.8T) 40 532480 1 efi (260M) 532520 1024 2 freebsd-boot (512K) 533544 984 - free - (492K) 534528 4194304 3 freebsd-swap (2.0G) 4728832 3902300160 4 freebsd-zfs (1.8T) 3907028992 136 - free - (68K) => 34 976773101 ada1 GPT (466G) 34 32734 1 ms-reserved (16M) 32768 976738304 2 ms-basic-data (466G) 976771072 2063 - free - (1.0M)系统是挂载到ada0的,这是一快2T的硬盘。那么我们直通的就是ada1 这块硬盘
创建原始磁盘映射文件 (VMDK)
文心给的命令格式:
# 语法格式 # VBoxManage internalcommands createrawvmdk -filename <输出vmdk路径> -rawdisk <物理设备路径> # 示例:将物理硬盘 /dev/ada1 映射为 raw_disk.vmdk sudo VBoxManage internalcommands createrawvmdk \ -filename "/home/youruser/VirtualBox VMs/Win10/raw_disk.vmdk" \ -rawdisk /dev/ada1实际运行命令:
sudo VBoxManage internalcommands createrawvmdk \ -filename "/home/skywalk/VirtualBox VMs/win10/raw_disk.vmdk" \ -rawdisk /dev/ada1成功执行
skywalk@fb98:~ $ sudo VBoxManage internalcommands createrawvmdk \ -filename "/home/skywalk/VirtualBox VMs/win10/raw_disk.vmdk" \ -rawdisk /dev/ada1 The 'createrawvdk' subcommand is deprecated. The equivalent functionality is available using the 'VBoxManage createmedium' command and should be used instead. See 'VBoxManage help createmedium' for details. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% Medium created. UUID: 0ecadbc3-e55e-47ac-b83e-257461d2ba99 skywalk@fb98:~ $给权限
sudo chown skywalk:skywalk "/home/skywalk/VirtualBox VMs/win10/raw_disk.vmdk" # 确保用户能读取物理设备,可能需要: sudo chmod o+rw /dev/ada1 # 注意:这会开放所有用户访问该磁盘,仅用于测试,生产环境请配置 devfs 规则其实还需要给用户组的rw权限:
sudo chmod 666 /dev/ada1当然已经给了当前用户组,已经是operator组成员
skywalk@fb98:~/VirtualBox VMs/win10 $ id uid=1001(skywalk) gid=1001(skywalk) groups=0(wheel),5(operator),44(video),920(vboxusers),1001(skywalk)这样个人用户就可以读写ada1这个磁盘了!
挂载硬盘
在虚拟机设置里,挂载直通硬盘
启动虚拟机
哈哈,看到硬盘啦,就是那个AI E盘
创建了一个文件,没问题!
调试,启动win10看到这个报错
虚拟电脑名称: win10
Failed to open image '/home/skywalk/VirtualBox VMs/win10/raw_disk.vmdk' for writing due to wrong permissions (VERR_VD_IMAGE_READ_ONLY).
AHCI: Failed to attach drive to Port2 (VERR_VD_IMAGE_READ_ONLY).
返回 代码: | NS_ERROR_FAILURE (0x80004005) |
组件: | ConsoleWrap |
界面: | IConsole {6ac83d89-6ee7-4e33-8ae6-b257b2e81be8} |
权限有问题啊
skywalk@fb98:~/VirtualBox VMs/win10 $ ls -la /dev/ada1
crw-r--rw- 1 root operator 0x79 7月 27 23:04 /dev/ada1
修改权限,搞定
skywalk@fb98:~/VirtualBox VMs/win10 $ sudo chmod 666 /dev/ada1
skywalk@fb98:~/VirtualBox VMs/win10 $ ls -la /dev/ada1
crw-rw-rw- 1 root operator 0x79 7月 27 23:04 /dev/ada1
