如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

时间:2024-04-07 11:18:36

Intel主板集成RAID一直被认为是比较鸡肋的功能,企业级服务器、工作站通常采用阵列卡来做RAID,一般的工作站也有板载的LSI芯片提供RAID支持,还轮不到集成RAID,至于入门级工作站(如C216\C226\C236)、中高端的商用机(如Q57\Q67\Q77)也有集成RAID,但是定位尴尬,很少有人去用,大家似乎也不愿意在RAID上费心思或投入精力,笔者出于好奇测试了一下这个功能,还是有一点收获的,先说结论:基于Intel RST的板载集成RAID0,可以有效的提升硬盘性能,提升硬盘读写速度;集成RAID1也可以实现硬盘数据恢复,是提升系统稳定性、数据安全性的有效手段,重建硬盘的操作也会给出具体的演示步骤。

这次我们还尝试从RAID上安装系统,如果做RAID 0,就测试硬盘提速多少,如果做RAID 1,就测试硬盘损坏修复重建。
实验机器依然是Z820,主板上有三种存储控制器,以下简称SAS、AHCI、SCU,具体信息如下:

如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

SCU控制器上次已经说过了,和AHCI控制器一起被封装在Intel PCH里,内部名称叫SCU option ROM,基本上是个弱化版的SATA2.0,该系列唯一不支持SAS的接口,但既然支持RAID,就可以参与这次的实验。
测试用的硬盘是两块完全相同的SSD,单盘速度读取500MB/S,写入200MB/S,两块盘做RAID0,速度会倍增吗?实际上会提高多少呢?主板集成的RAID和第三方阵列卡的性能有差距吗?我们拭目以待。

一、如何确定自己的主板支持集成(板载)RAID

在实验之前,还是要关注一下各种不同型号的主板,本文的Z820是非常好的一个实验工具,同时具足了Intel集成RAID控制器,还有第三方的LSI阵列卡芯片,至于你的电脑是否支持,可以看一下主板芯片组是否包含Intel RST技术,也就是英特尔® 快速存储技术,在Intel官网上可以查到,官方是这样描述的:
英特尔® 快速存储技术
英特尔® 快速存储技术为台式机和移动平台提供保护、性能和可扩展性。无论是使用一个还是多个硬盘,用户都能享受到更强的性能表现和更低的能耗。如果使用多个硬盘,在某个硬盘发生故障时用户可获得额外的保护,从而避免数据丢失。
从“多个硬盘,在某个硬盘发生故障时用户可获得额外的保护”可以看出,凡是有Intel RST的芯片,理论上都支持板载集成RAID,除非有的主板厂家阉割了这个功能,不过考虑到Intel RST大多数出现在:
1、工作站主板
2、中高端商用机主板
3、X系高端主板
这些主板是不太可能阉割的,也就是支持集成RAID功能,通过官网就可以方便查询:
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

这是X79的查询结果,包含英特尔® 快速存储技术即可。
当然也可以通过主板说明书、用户手册查询。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

图片来自Z200工作站的手册,这个型号的SFF版(迷你机型,类似于ITX)都没有把板载集成RAID功能阉割掉,可见这个功能并没有大家想象中的那么鸡肋。

【注】集成RAID在英文手册上叫做Factory integrated RAID on motherboard for SATA drives,对应的硬件控制器叫做Integrated SATA Controller,通常会注明不支持Linux系统,笔者测试用的都是Windows系统,通过后面的测试,也明白了为什么RAID还需要Windows支持。

二、Intel集成RAID 0对硬盘性能的提升

首先分别在主板集成AHCI、SCU上配置RAID0,然后测试安装系统、测试硬盘速度,然后用同样的方法测试LSI SAS2308,看看第三方芯片是否比集成的要强。

1、准备工作:BIOS设置
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
Z820的默认这里是RAID+AHCI,就不要再改了,硬盘模式包含RAID是做集成RAID的前提,如果你是别的主板,可能会只有一个RAID选项,但这样一来可能所有的接口都成RAID模式了,建议大家先用两块空硬盘测试。

2、开机进入RAID配置
Z820开机时右上角有一个OROM的小窗口,按任意键即可全屏,会发现是Intel和SAS控制器自检的界面,有短暂的几秒提示是否要进入RAID配置,如果我们的硬盘接在SCU的口上,出现的就是SCU Option ROM的设置界面,如果是接在SATA(AHCI控制器)上,就出现SATA Option ROM,如果两个都接了硬盘,就都出现,如下图:
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

这张是网上找的图,为了演示两个Option ROM同时出现。
在此界面下,按组合键CTRL+I进入RAID配置,先从ACHI控制器的SATA Option ROM开始。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
第一个界面,可以看到当前的硬盘设备,当前RAID的配置情况,所有的物理设备都会列在这里,分别是:
Device Model设备型号,即硬盘型号,建议用完全相同的硬盘做阵列(注:经过测试,即使不同厂家、不同型号的硬盘也可以做RAID,建议还是尽量保持相同)
Serial硬盘***,硬盘的唯一识别号,控制器以此来识别硬盘,避免搞混
Type/Status硬盘当前的状态,是否在RAID控制之下。Non-RAID指的是目前此盘不在RAID状态。
可控制的都在上面的菜单,用键盘即可控制,↑↓光标选择,ENTER回车进入,操作这方面就不详细来讲了,屏幕下方都给出了当前可用的按键。
Creat RAID Volume——建立RAID卷,“卷”这个说法是官方翻译给的,很莫名其妙的一个词,可以理解为虚拟盘,逻辑盘
进入后开始RAID配置,这里我们先做RAID0
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
Strip Size是单元条带大小,条带就是RAID0、RAID10、RAID5的最小分配单元,这涉及到RAID的基本原理。根据建议,RAID0通常是128KB,RAID10和RAID5是64KB

控制器是允许你做多个不同的“卷”的,只要把Capacity调小即可,默认RAID0是所有盘的总和容量。
RAID设置好后回到主菜单:
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

新建的RAID卷为test1-raid0,状态为绿色Normal,所属的两个物理设备即成为Member Disk(0)这里0的意思是此卷的ID是0,如果有多个卷,Member Disk也会显示出不同的数值
右上角Bootable说明此卷是可以用来启动操作系统的,事实操作系统也装了一遍,完全成功,和单盘安装完全一样的,方法参考:Z820安装WIN7系统出现0X0000007B蓝屏报错无限重启的解决方法与相关问题

【注】在新建RAID卷时,会提示“硬盘上所有数据会丢失”,这只是逻辑上删除而已,类似快速格式化,你看不到任何“删除”的动作,瞬间完成,Intel集成RAID不会像阵列卡那样有一段自检、校验时间。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

装好后可以进入PE测一下硬盘速度,这里显示的结果是718.7MB/S,是原始速度的143.60%

3、其他控制器的RAID配置与测速结果

接下来分别测试SCU和SAS2308控制器的RAID0,统计出各个测速数据。SCU的界面和SATA option ROM差不多,操作也是完全相同的,这里就不单独贴图了。
板载的LSI SAS2308控制器的RAID界面如下,关于这个芯片还有很多有趣的测试,特别是RAID1硬盘数据恢复,坏硬盘更换如何操作,准备另外开一篇文章。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

至此,我们三个控制器的RAID0实验都做完了,先上一下统计数据:
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

——两张sata盘做RAID0可以将读写提高四到七成,这里我们测的是是SSD,500 MB/S以下似乎是可以翻倍的(根据SCU的结果200%),在500 MB/S以上遇到了瓶颈,增速有所下降。总之,基础速度越小,提升空间越大。
——第三方控制器芯片显然比Intel主板集成RAID要快的多,相同的测试环境下,LSI SAS2308读速是提高了68.8%,写速几乎翻倍,而Intel主板集成的只有43.6%和73.5%
——单论RAID对性能的提升,SCU似乎比AHCI还要强一点,从写速提升可以看出来,不亏是阉割版的SAS控制器。
——RAID0的性能提升受到控制器影响,考虑采用更好的阵列卡,是否能有更好的性能表现,特别是在500 MB/S以上能否实现翻倍。

三、Intel集成RAID 1测试硬盘数据恢复

现在我们开始配置RAID1,接下来的实验,比之前要复杂一些,需要模拟硬盘损坏、数据丢失的情形,然后尝试修复硬盘,这也是RAID的本质意义(除了RAID0,所有的RAID都包含数据备份与修复的功能)。测试的设备还是两张硬盘,RAID1即两张盘互为镜像。

1、删除RAID0 配置RAID 1 如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

这里接续我们的上一步,还是重启回到Option ROM主菜单,要配置一个完全不同的RAID,需要先把原来的卷删掉。
选项2.Delete RAID Volume删掉当前的卷
选项3.Reset Disks to Non-RAID解除物理设备的RAID状态,回到单盘状态

有人可能会奇怪,2和3有什么区别?
前者是针对逻辑卷的,卷没了对应的设备自动就回到单盘状态;后者是针对物理设备的,可分别选择哪个设备回到单盘状态。由于我们只有两个物理盘,一个逻辑卷,这种情况下2和3确实没什么区别,如果是有多个盘组多个卷,需要的操作就复杂一些了。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

我们选择3解除掉一个盘的RAID状态,RAID卷自动变为Failed,这正是RAID0的特性,一损俱损,下面要配置的RAID1,就是最高安全级别,双盘镜像备份。
【注】删除卷,则该卷的数据消失;解除RAID的盘,则该盘的数据消失,且该盘参与的卷的数据也消失(RAID1除外)
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

创建RAID1操作大体相同,你会发现单元条带是灰色的,不可选,这是因为RAID1就是纯粹的镜像,不存在条带的问题。
配置好RAID1之后,还是一如既往的安装系统,别忘记加载驱动,否则找不到硬盘驱动器,这部分也直接跳过了,我们真正要解决的问题是,如果一个盘坏了会怎么样?换硬盘到底是怎样操作的?RAID1的数据是怎么恢复的?

2、Intel RST实用程序和管理软件

RAID通常都有专门的管理软件,也就是Windows环境下能查看磁盘状态,图形界面也更加人性化,我们板载集成的Intel 控制器也有对应的管理软件,在HP官网上可以找到。
Windows7平台的软件包SP65820,适用于 Microsoft Windows 的 Intel 快速存储技术实用程序,该软件包可为支持的工作站和操作系统中的 SATA 和 SATA RAID 驱动器提供 Intel 快速存储技术企业软件、实用程序和驱动程序。和一般驱动包不同,带有“实用程序”字样的都包含exe的软件,点击RSTe_4.0.0.1040_Install安装。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

这个界面下可以操作的有:更改RAID卷名称,更改RAID类型(显然会丢失数据,作为系统盘是不可操作的),增加卷的大小(按说目前已经是最大了,可能还有预留的空间),验证(即RAID1的镜像校验,检查两个盘现在是否完全镜像)。
【注】这里笔者把硬盘改插在了SCU口上,使用的SCU Option ROM所以显示的是Intel® C600 Series Chipset SAS RAID(Sata Mode),两个控制器是可以互换的,没有任何影响。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

RAID1的两块物理设备和对应的Volume卷,都显示的清清楚楚。有一点不太专业的是,做RAID1应该是有主从盘的,也就是Primary和Secondary这样的标识,不然两张盘就真的完全一样了。

3、模拟硬盘损坏与重建

硬盘损坏,最坏的情况就可以认为是完全识别不到了,这里我们直接把一块盘拔掉,看看会怎样。
系统是建立在RAID卷上的,按理说这时系统应该也受点影响,但由于有一块盘是好的,系统还是从这张盘上正常启动了,只是,启动速度似乎要满一些。
小结论:丢失1张盘,RAID1卷上的数据仍然可以完好无损,如果有系统在卷上,此时系统仍然可以正常启动。
开机还是来到这个界面:

如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

一块磁盘丢失,显示为“未知磁盘”,报警信息“性能下降”,命令排队NCQ显示“无”,奇怪的是拔掉的那张硬盘的***还显示出来了。
关机,插入一张新盘,再次打开Intel RST实用程序之后,发现重建自动进行了,无需任何操作。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
左下角就是重建状态,大约是全盘写一遍的速度。重建完成之后和原来一模一样。
现在你看出Intel RST实用程序的用意了,如果没有这个软件,压根就修复不了,Intel主板集成RAID本质上是属于Host RAID,依托于操作系统,脱离操作系统就无法完全发挥作用,而这个实用程序只有Windows版的,怪不得说明书上说“不支持Linux系统”,原来是这么回事……

如果先不重建,在插入新盘时开机进入Option ROM的那个界面是什么样的呢?
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
看到那个黄色的Rebuild了吗,CTRL+I进入之后……
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

Volumes with “Rebuild” status will be rebuilt within the operating system.

重建真的在进行了吗?没有百分比显示,没有进度条,我们无从得知,但这行黄字提示的看来,只有进入操作系统,修复才会继续进行,还是要依靠Intel RST实用程序才能修复完

为了进一步确认这件事,笔者又换了两块硬盘,重新做RAID1,装系统,然后拔掉一张盘,终于弄清了这个机制:RAID1的一块盘移除(损坏)时,不管移除的是主盘还是从盘,则剩下的一块盘在开机时自动标记为主盘,关机放入一张新盘,再开机之后则新盘自动识别为从盘,重建永远是主盘→从盘,即主盘镜像拷贝到从盘,这样避免了好盘被坏盘“还原”的尴尬
当然,你是看不到哪个是主盘的,没有标识,为了确保结论正确,这次我们选择拔除第一张盘(之前是第二张)。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
如图,ID3号位置是第二张盘,ID2号位置被拔掉了。Status此时显示为Degraded。
此时照样可以进入Windows,还是打开Intel RST实用程序,看到的报警和之前一样,也是性能下降,未知磁盘。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

关机,插入一张新的空盘,开机,进入Option ROM,这时弹出一个新的窗口
disk available for rebuilding detected检测到可重建的磁盘
Selecting a disk initiates a rebuild. Rebuild completes in the operating system.选择磁盘开始重建,重建将在操作系统内完成。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
回车开始重建,又回到了这个画面,还是没有百分比显示,没有进度条,等待了很长很长时间后仍然没有反应,Volumes with “Rebuild” status will be rebuilt within the operating system.应该是提示我们进入系统继续重建。

如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复

回到系统,这次系统开机的时间比原来要长很多,大概重建在系统加载过程中就已经开始了,第二次实验用的是机械硬盘,也难免变慢。打开Intel RST实用程序,果然这里已经在进行了。
如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
奇怪的是多了一个未知磁盘,和第一次实验不同。
在重建完成后,这个未知磁盘会消失,回到正常的两块盘的状态。至此,我们的关于RAID1硬盘修复、重建的实验就彻底完成了。

Volumes with “Rebuild” status will be rebuilt within the operating system.

如果看到这句话,需要进入Windows系统,通过Intel RST实用程序来完成整个硬盘的恢复。但还有一个小细节,其实在出现这句话的时候,新盘已经重建了一部分了,只是做了基本的分区,也是一瞬间完成的,还没有开始写入数据。

总而言之,RAID1操作需谨慎,换盘时一定要按照正确的步骤来操作,千万别把好的那张硬盘取下来(更别在这个时候开机),以免误还原,另外,强烈建议安装Intel RST实用程序

关于Intel集成RAID就说到这里,或许RST的功能比想象中还要强大,说明书上说支持RAID5和RAID10(注意Z820的SCU是4个口,别的主板就不知道了),连SAS2308都不支持RAID5,建议还是不要做这种尝试了,这种级别的需求还是直接上阵列卡,主板集成的RAID功能,用RAID0和RAID1足矣。