Sharing an Intel RST between Windows and Linux

12,139

I did some research and did figure this out -- I hate it when people leave questions hanging, so for posterity, I'll explain. I read Intel's documentation for RST. In essence the following holds true to my situation:

  • Linux and Windows can only occupy a RAID together when the RAID is a hardware RAID or a Firmware RAID ("FAKE RAID")
  • Full hardware-based usually appears to both operating systems as a single device, although some allow for a firmware based configuration and therefore act similarly to a "FAKE RAID"
  • Software RAID for Windows seems to be impossible in a normal boot.
  • Windows Software RAID causes the disk to become a "dynamic disk" - aka difficult for linux, as this is some BS state -- I didn't read up much after learning it didn't play nice with linux.

Here's how I made mine work:

  1. So using BIOS/UEFI I configured the SATA devices to RAID, which causes the Intel RST or Intel Matrix to appear in the boot process.
  2. I configured the drive in the Intel boot program (RAID 1+0, 4 drives).

    • Windows 7 includes a(singular) driver for these devices, and handles it as a single drive in boot (while not making it a dynamic disk).
    • Linux contains 2 drivers for these devices, dmraid and mdraid (mdadm). dmraid is legacy and is actually pretty bad, but Intel was nice enough to support it in addition to mdraid, as it has older kernel support and is used solely by many other FAKE RAID makers. Either will work, but keep in mind that if one gives you issues, the other may not.
  3. I partitioned the RAID in half. (half for Linux, half for Windows). If you use (G)Parted you may want to make sure that the RAID is MBR, or Windows may be unable to install the system reserved partition on the device. There are ways around this, which I won't get into. I used GPT and put the system reserved on a separate MBR device.

  4. Install Windows. Doing Windows first makes it easier to set up dual booting, as Windows bootloader may choose to ignore your linux install for a number of reasons.
  5. Begin installing linux. With Arch linux, I had to ensure that the device was loaded, using mdadm and dmraid. Here's the guide that I used. Normally the device is /dev/mapper/[FAKE RAID BRANDING]_[FAKE RAID ID]_[FAKE RAID NAME], where the branding reflects the brand of fake raid, in my case intel, id is a generated string (looks like garbage) and raid name is the name that you assigned (ex volume0). There may also be "sub RAIDs" listed in mapper if you did a dual-layer RAID level (RAID 1+0).
  6. After you're sure Linux has found the correct drive, you can install to the other half as if it were a normal disk. Arch and other "hands on" installs might require adding some additional RAID information to the fstab file or GRUB.
  7. You can now manage the RAID from windows using the RST tool or from Linux using mdadm. (dmraid works too... but it doesn't have many management tools... just creation tools.)
Share:
12,139

Related videos on Youtube

DavidJFelix
Author by

DavidJFelix

Updated on September 18, 2022

Comments

  • DavidJFelix
    DavidJFelix over 1 year

    I have an Intel z68 motherboard, which makes use of Intel Rapid Storage Technology (RST) -- Version 10.5. If possible, I'd like to split my RAID 1+0 RST drive equally between a Linux and Windows installation with no other devices (aside from a hot spare). I know that Linux uses RST drives with the dm-raid/md-raid, and that Windows 7 recognizes the RST drive as one device, but I'm not sure if partitioning/using the device in one OS will make it unusable in the other.

    Traditionally, I've used mdadm for creating software RAID in Linux (without a firmware-based solution) but getting Windows to play along without using firmware seems to be futile.

    • Is it possible to share a firmware RAID?
    • Which operating system should I install first?
    • What utilities will I need to use in Linux to make this work?

    I'll be using Arch Linux (although it shouldn't make a difference).