对于小主机而言,受到空间的限制,不可能通过PCIE阵列卡来直通,那只能RDM直通Sata接口上的硬盘,然后给我们的NAS用,这样会既保证存储的安全又提高了我们的传输速度,那下面我们就一步一步操作一下,如何在ESXI8.0中RDM硬盘 ,vmware官网地址:https://www.vmware.com/
一,重要前提与注意事项
- 直通对象:ESXi 的“直通”功能通常是直通整个 SATA 控制器,而不是单个 SATA 硬盘。这意味着连接到该控制器的所有硬盘都会一起被直通给虚拟机,ESXi 主机本身将无法再看到或使用这些硬盘。
- 兼容性:并非所有主板的 SATA 控制器都支持直通。Intel 平台的芯片组通常支持较好(VT-d),AMD 平台也需要支持 AMD-Vi。请在 BIOS 中确认已开启 VT-d 或 AMD-Vi 功能。
- ESXi 系统盘:请务必确保您的 ESXi 系统不是安装在你准备直通的这个 SATA 控制器所连接的硬盘上! 否则直通后 ESXi 系统将无法启动。系统盘最好安装在独立的 USB 闪存盘、SD 卡或另一个独立的控制器(如 NVMe 硬盘)上。
- 数据备份:在进行任何硬件配置更改前,请确保虚拟机和其他重要数据已备份。

二,操作步骤
第一步:在 BIOS/UEFI 中开启虚拟化支持
- 重启服务器/主机,进入 BIOS/UEFI 设置。
- 找到以下选项并确保它们处于 Enabled 状态:
- Intel Virtualization Technology (VT-x)
- Intel VT-d 或 AMD-Vi (这是 IOMMU,直通所必需的)
- 保存设置并退出。
第二步:在 ESXi 主机上启用 PCIe 设备直通
- 使用 vSphere Client (HTML5) 登录到您的 ESXi 主机。
- 进入 管理 -> 硬件 -> PCI 设备。
- 在列表中找到您的 SATA 控制器。识别方法:
- 通常名称包含
SATA,AHCI,芯片组品牌如Intel Corporation等。 - 一个简单的方法是:记下当前连接了 500G 硬盘的控制器名称,或者根据 PCI 地址来判断。
- 通常名称包含
- 找到对应的 SATA 控制器后,点击其右侧的 切换直通 按钮。
https://docs.vmware.com/en/VMware-vSphere/8.0/com.vmware.vsphere.hostclient.doc/images/GUID-5ED2C2D2-35F5-4BF3-9B0F-729A30060A47-default.png - 状态会从 已禁用 变为 活动。
第三步:重启 ESXi 主机
- 这是必须的一步。更改直通设置后,系统会提示您需要重启才能使配置生效。
- 对主机进行正常的重启操作。
第四步:将直通设备添加到虚拟机
现在,您可以将这个已直通的 SATA 控制器分配给一个虚拟机。
- 关闭您要添加硬盘的虚拟机(虚拟机运行时无法添加直通设备)。
- 右键单击虚拟机,选择 编辑设置。
- 在“虚拟硬件”选项卡中,点击 添加其他设备 -> PCI 设备。
- 在新出现的“新 PCI 设备”下拉列表中,选择您刚刚启用直通的 SATA 控制器。
https://docs.vmware.com/en/VMware-vSphere/8.0/com.vmware.vsphere.hostclient.doc/images/GUID-9A2B4360-7C0D-4A23-8E0D-7A0D4A6E6A0B-default.png - 点击 保存。
第五步:在虚拟机操作系统中识别硬盘
- 启动该虚拟机。
- 进入虚拟机的操作系统(例如 Windows 或 Linux)。
- 现在,您的虚拟机应该能像在物理机上一样直接识别到连接到该 SATA 控制器的 500G 硬盘。
- 在 Windows 中:
- 打开“磁盘管理”(直接在开始菜单搜索即可)。
- 通常会提示需要初始化新磁盘(选择 MBR 或 GPT)。
- 初始化后,就可以对其进行分区和格式化操作了。
- 在 Linux 中:
- 使用
lsblk或fdisk -l命令查看新磁盘。 - 新的磁盘设备会出现在列表中(例如
/dev/sdb)。 - 然后您可以使用
fdisk/parted进行分区,用mkfs创建文件系统,并挂载使用。
- 使用
- 在 Windows 中:
三,替代方案:如果不支持或不想直通整个控制器
如果您的 SATA 控制器不支持直通,或者您只想直通单个硬盘而不是整个控制器,可以使用 RDM (Raw Device Mapping) 模式。
RDM 步骤简介:
- 在 ESXi 主机上,启用 SSH 服务(管理 -> 服务 -> 启用 TSM-SSH)。
- 使用 SSH 客户端(如 PuTTY)登录到 ESXi 命令行。
- 找到 500G 硬盘的设备标识符:
ls -l /vmfs/devices/disks/
找到对应大小的硬盘,名称类似于 t10.ATA_____SAMSUNG_HD502HJ_______________________________S28YJ9FB604016。

- 创建 RDM 映射文件:
vmkfstools -z /vmfs/devices/disks/[硬盘标识符] /vmfs/volumes/[数据存储名称]/[您的虚拟机名称]/[映射文件名].vmdk
例如:
vmkfstools -z /vmfs/devices/disks/naa.50014ee20b0c3f34 /vmfs/volumes/datastore1/MyVM/MyRawDisk.vmdk
- 或者也可以这样写(实操):
输入命令,回车无任何提示说明已经配置成功
vmkfstools -z /vmfs/devices/disks/未格式化硬盘标识符空格 /vmfs/volumes/ESXI系统盘路径/自定义名称.vmdk
实例中的把RDM的名称自定义为truenas.vmdk,具体如下:
vmkfstools -z /vmfs/devices/disks/t10.ATA_____SAMSUNG_HD502HJ_______________________________S28YJ9FB604016 //vmfs/volumes/68ff3f62-f4f52003-c7d7-8ca682705d0a/SamSung500G.vmdk

总结
- 首选方案:直通整个 SATA 控制器,性能最好,虚拟机直接控制硬件。
- 备选方案:使用 RDM,灵活性高,可以直通单个硬盘,且硬盘数据存储可以在 ESXi 的数据存储之间迁移。性能略低于直接直通,但通常足够使用。
对于您的 500G SATA 硬盘,根据您的具体需求和环境,选择以上任一方法即可成功让虚拟机直接使用它。
ESXI7.0如何通过RDM直通硬盘图文详解:https://www.hao0564.com/1642.html
