我安装了 HighPoint RocketRAID 2720SGL 卡,并连接了 3 个 1.5 TB 硬盘。使用这 3 个磁盘在 RocketRAID BIOS 中创建 RAID 5 后,我尝试在阵列上安装 Ubuntu Server 12.04。但是,安装程序在此Detecting hardware
阶段被锁定。
采取的步骤:
我使用的是标准的 Ubuntu Server 12.04 64 位安装 CD。为了安装 RocketRAID 驱动程序以便安装程序可以识别 RAID 阵列,我使用了 HighPoint 网站的两个驱动程序包。
rr272x_1x-ubuntu-11.10-x86_64-v1.4.12.0502.tgz
(适用于 Ubuntu 11.10 的驱动程序;最新的 Ubuntu 专用驱动程序)RR272x_1x-Linux-Src-v1.4-120424-1752.tar.gz
(Linux 开源驱动程序,需要针对内核构建)
该rr272x_1x-ubuntu-11.10-x86_64-v1.4.12.0502.tgz
驱动程序有一个preinst.sh
脚本,用于在 Ubuntu 安装程序“加载其他组件”时加载驱动程序。此时,您使用ALT+F2进入控制台,安装已提取驱动程序包的 USB 闪存驱动器,然后运行 preinst.sh 脚本。这“按原样”失败,因为此包中包含的驱动程序适用于 Linux 3.0.0-12-(generic/server) 内核,而 12.04 具有 3.2.0-29 内核。
为了解决这个问题,我使用了上面列出的开源驱动程序,根据 3.2.0-29-generic 内核构建了一个驱动程序,该内核安装在 Ubuntu Server 12.04 VirtualBox VM 上。我提取了存档,导航到../rr272x_1x-linux-src-v1.4/product/rr272x/linux
3.2.0-29-generic 内核,并按照开源驱动程序 README 中的说明使用以下命令对其进行了 make sudo make KERNELDIR=/lib/modules/3.2.0-29-generic/build
。这样就成功构建了以下内容rr272x_1x.ko
。
我将生成的驱动程序通过 GZIP 压缩到具有正确命名约定的存档中,以便 preinst.sh 脚本能够识别它rr272x_1x3.2.0-29-genericx86_64.ko.gz
。然后,我将它放在解压包的启动文件夹中rr272x_1x-ubuntu-11.10-x86_64-v1.4.12.0502.tgz
,这也是它应该在的位置。
在 Ubuntu 安装过程中启动控制台时,这次 preinst.sh 脚本成功运行。然后我按ALT+F1返回安装程序并继续,直到到达“检测硬件”阶段,此时整个操作被锁定。
我已经测试了 Ubuntu 安装 CD,没有任何错误。我还尝试了这个过程多次,以防它是一次性锁定,但它继续在同一个地方锁定。有人能告诉我我可能做错了什么吗?
注意:如果未加载 RocketRAID 驱动器,安装程序将跳过检测硬件阶段,所以我知道是驱动程序出了问题。
答案1
建议:首先不要使用 RocketRAID - 或者至少不要将其用作 SATA 控制器。对于几乎任何可以想到的设置,mdraid 的性能都远胜于它……而且不会让您依赖于古怪的专有设置。
(我之所以这么说,是因为我实际上已经使用 RocketRAID 控制器多年,因为它们对 FreeBSD 的支持非常好,而且非常直接。但它们对 Linux 的支持就不是那么好了,而且性能也不是很高。)
如果您想了解如何使用内核 raid () 设置服务器的一些提示mdraid
,请随时回来提出相关问题。:)
答案2
完全不是这样(也许就 SATA 而言)我的 0、1、5、SAS 阵列性能非常好。如果您希望在 10 阵列上获得更好的性能,那么您可能应该购买更好的卡。就我而言,只要 2720SGL 能满足您的需求,它就是一款出色的硬件。从未遇到过任何问题。Highpoint 也提供非常好的支持,每次我与他们打交道时,他们的支持都是一流的。