如何将本机 SATA 驱动器直通至 ESXi 上的客户机?

如何将本机 SATA 驱动器直通至 ESXi 上的客户机?

我在配备 Intel Core i7 930 处理器的 Intel DX58S0 Mothboardboard 上运行了 ESXi 4.0。VT-d 也已启用。

我的系统中有三个驱动器,驱动器 0 用于 ESXi。驱动器 1 和 2 包含来自旧机器的数据,并显示在配置中的“存储适配器”部分下。

我想允许客户机访问这些驱动器上的数据(尽可能本地化)。我已启用主板内置 SATA 控制器(Intel/Marvell 88SE6121)的直通。此控制器显示在我的客户机操作系统中,但客户机除了正常的虚拟驱动器外没有显示任何驱动器。我尝试了 Linux 客户机和 Windows7。我还配置了主机以尝试 SATA 控制器的 IDE/RAID/ACHI 模式。

有什么想法我可以如何配置我的一位客人来获取这些驱动器上的原始数据?

答案1

我遇到了类似的问题,服务器上的一些驱动器出现故障,我在此页面上找到了答案。http://www.vm-help.com/esx40i/SATA_RDMs.php

它比控制器直通或我想到的任何其他技巧都要容易得多,但你确实需要能够使用服务控制台(google esxi 不支持的模式 ssh)

概括:

步骤1)fdisk -l查找设备名称

步骤2)ls /dev/disks -l查找VML标识符

步骤3)vmkfstools -r VMLid aVMDKName.vmdk

步骤4)添加aVMDKName.VMDK到虚拟机。

例如:vmkfstools -r /vmfs/devices/disks/naa.5000c5003010054f /vmfs/volumes/hdd/lanparty.vmdk

我无法像我希望的那样从磁盘启动(P2V 无需通过网络复制 500GB),但我能够将它们连接到另一台虚拟机并获取数据。

答案2

另一个解决方案是执行以下操作:

步骤 1) 确保远程技术支持 (SSH) 已启用并正在运行。步骤 2) 通过 SSH 连接到主机步骤 3) fdisk -l | grep -B4 '不包含有效分区表'

注意:这将显示所有尚未分区的物理磁盘,例如新配置的 SAN LUN。它看起来应该像这样:

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000000:42.9 GB,42949672960 字节 255 个磁头,63 个扇区/磁道,5221 个磁柱 单位 = 16065 * 512 = 8225280 字节的磁柱

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000000 不包含有效的分区表

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000001:42.9 GB,42949672960 字节 255 个磁头,63 个扇区/磁道,5221 个磁柱 单位 = 16065 * 512 的磁柱 = 8225280 字节

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000001 不包含有效的分区表

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000002:42.9 GB,42949672960 字节 255 个磁头,63 个扇区/磁道,5221 个磁柱 单位 = 16065 * 512 = 8225280 字节的磁柱

磁盘 /dev/disks/naa.60060e801004eb90052fab6900000002 不包含有效的分区表

如果此命令未显示任何设备,则我的程序可能不适合您,因为我与之前的海报一样,假设您的 VC“原始设备映射”单选按钮变灰的原因是因为 LUN 没有分区。

步骤 4) 创建一个新分区,“fdisk /dev/disks/naa.60060e801004eb90052fab6900000000” 注意:您必须在此处使用自己的设备名称。步骤 5) 如果您对 fdisk 不太熟悉,可以执行以下操作:

a) “p” 打印现有分区。如果您没有看到任何分区,那么继续操作可能是安全的。

b)“n”创建一个新的分区。

c) “p” 代表主要

d) “1” 代表分区 1

e) 选择默认起始扇区

f) 选择默认结束扇区

g)“w”写

h)“q”退出

步骤6)现在您应该能够在VirtualCenter中分配原始磁盘。

答案3

最后一个答案是正确的,但需要对命令进行一些修改,例如这些

  1. fdisk -l查找设备名称
  2. ls /dev/disks -l查找 VML 标识符
  3. vmkfstools VMDKName-withFullPath.vmdk(即 /vmfs/volumes/disk2/somename.vmdk)-a adaptertype -z /vmfs/devices/disks/vml.0200000000600508b1001037383941424344450d004c4f47494341
  4. 将 VMDKName-withFullPath.vmdk 添加到虚拟机。

笔记:在步骤 3 中,您可以使用-r开关代替-z。这些开关取决于您的磁盘控制器。另一个重要问题是,此解决方案适用于对磁盘的原始访问。要以物理方式访问分区,也许您必须使用-r开关。

相关内容