在FreeBSD系统里,怎么配置VirtualBox的直通硬盘。宿主机是FreeBSD,虚拟机是windows10

📅 2026/7/27 23:59:57 👁️ 阅读次数 📝 编程学习
在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