在 Windows 和 Linux 之间共享英特尔 RST

Dav*_*lix 3 linux raid windows-7 software-raid

我有一个英特尔 z68 主板,它使用了英特尔快速存储技术 (RST) -- 版本 10.5。如果可能,我想在 Linux 和 Windows 安装之间平均分配我的 RAID 1+0 RST 驱动器,没有其他设备(除了热备用)。我知道 Linux 使用带有 dm-raid/md-raid 的 RST 驱动器,并且 Windows 7 将 RST 驱动器识别为一个设备,但我不确定在一个操作系统中分区/使用该设备是否会使其在其他。

传统上,我使用 mdadm 在 Linux 中创建软件 RAID(没有基于固件的解决方案),但是让 Windows 在不使用固件的情况下运行似乎是徒劳的。

  • 是否可以共享固件 RAID?
  • 我应该先安装哪个操作系统?
  • 我需要在 Linux 中使用哪些实用程序来完成这项工作?

我将使用 Arch Linux(虽然它不应该有什么不同)。

Dav*_*lix 7

我做了一些研究并且确实解决了这个问题——我讨厌人们把问题悬而未决,所以为了后代,我会解释一下。我阅读了英特尔的RST 文档。本质上,以下适用于我的情况:

  • Linux 和 Windows 只能在 RAID 是硬件 RAID 或固件 RAID(“FAKE RAID”)时一起占用一个 RAID
  • 完全基于硬件的通常作为单个设备出现在两个操作系统中,尽管有些允许基于固件的配置,因此其行为类似于“FAKE RAID”
  • Windows 的软件 RAID 在正常启动中似乎是不可能的。
  • Windows 软件 RAID 导致磁盘成为“动态磁盘”——这对 linux 来说也很困难,因为这是一些 BS 状态——在得知它与 linux 不兼容后我没有读太多书。

这是我如何完成我的工作:

  1. 因此,我使用 BIOS/UEFI 将 SATA 设备配置为 RAID,这会导致 Intel RST 或 Intel Matrix 出现在引导过程中。
  2. 我在英特尔引导程序中配置了驱动器(RAID 1+0,4 个驱动器)。

    • Windows 7 包含这些设备的(单一)驱动程序,并在启动时将其作为单个驱动器处理(同时不使其成为动态磁盘)。
    • Linux 包含用于这些设备的 2 个驱动程序,dmraid以及mdraid( mdadm)。dmraid是传统的,实际上非常糟糕,但是除了mdraid. 两者都可以,但请记住,如果一个给您带来问题,另一个可能不会。
  3. 我将 RAID 分成两半。(一半用于 Linux,一半用于 Windows)。如果您使用 (G)Parted,您可能需要确保 RAID 是 MBR,否则 Windows 可能无法在设备上安装系统保留分区。有很多方法可以解决这个问题,我不会进入。我使用 GPT 并将系统保留在单独的 MBR 设备上。

  4. 安装 Windows。首先使用 Windows 可以更轻松地设置双引导,因为 Windows 引导加载程序可能会出于多种原因选择忽略您的 linux 安装。
  5. 开始安装linux。使用 Arch linux,我必须确保设备已加载,使用mdadmdmraid. 这是我使用的指南。通常设备是/dev/mapper/[FAKE RAID BRANDING]_[FAKE RAID ID]_[FAKE RAID NAME],其中品牌反映了假突袭的品牌,在我的情况下,id 是生成的字符串(看起来像垃圾),突袭名称是您分配的名称(ex volume0)。如果您使用的是双层 RAID 级别 (RAID 1+0),则映射器中可能还会列出“子 RAID”。
  6. 在您确定 Linux 找到了正确的驱动器后,您可以像安装普通磁盘一样安装到另一半。Arch 和其他“动手”安装可能需要向fstab文件或 GRUB添加一些额外的 RAID 信息。
  7. 您现在可以使用 RST 工具从 Windows 管理 RAID 或使用mdadm. (dmraid也可以用......但它没有很多管理工具......只是创建工具。)