在服务器安装程序中找不到 RAID 1 阵列

Tio*_*Tio 7 server raid 11.10

所以我试图在我的服务器上安装最新版本的Ubuntu Server 11.10 64bits(完全替换 Windows Server 2008)。

由于我需要更多的Sata端口,我买了一个基于芯片组SiI3114的PCI Sata RAID控制器。

问题是,当我将阵列配置为 RAID 1 时,当安装程序到达我对磁盘进行分区时,RAID 阵列根本不会出现在列表中。

安装程序问我是否要“激活 Serial Ata RAID 设备”,我选择是,但没有列出任何内容。

如果我不是创建 RAID 1 阵列,而是创建一个 Raid 0 阵列,它会出现在对磁盘进行分区的列表中。

最后一部分是我不明白的,当它是 RAID 0 阵列时会被识别,但如果它是 RAID 1 阵列则不会。

我读过FakeRaid维基上Ubuntu的wiki,而且这个帖子:RAID 10没有被发现安装程序

在 RAID 1 中运行,并在安装程序上执行 shell 并运行命令 dmraid -r,我得到:

/dev/sdb: sil, "sil_bhbgdfdcfdfc", mirror, ok, 976771072 sectors, data@ 0
/dev/sda: sil, "sil_bhbgdfdcfdfc", mirror, ok, 976771072 sectors, data@ 0 
Run Code Online (Sandbox Code Playgroud)

看起来不错我觉得。

在 RAID 0 中,使用相同的命令,我得到:

/dev/sdb: sil, "sil_bhbgdfdcfdfc", stripe, ok, 976771072 sectors, data@ 0
/dev/sda: sil, "sil_bhbgdfdcfdfc", stripe, ok, 976771072 sectors, data@ 0 
Run Code Online (Sandbox Code Playgroud)

一切看起来都不错,我想,这是我第一次真正安装 Ubuntu Server,我已经在 VMPlayer 上安装了 4 到 5 次,看看一切是如何工作的。

如果我不配置阵列,磁盘被识别没有任何问题,如果没有正确检测到 PCI 卡,在我认为的任何情况下都不会显示连接到卡的任何磁盘。该卡还支持 RAID 5 和 RAID 10,但我还没有测试过,等我回家后,我会看看安装程序是否检测到这些 RAID 阵列。

编辑:所以我回到家,再次开始谷歌搜索,我找到了这个,所以我运行了命令 dmraid -ay:

ERROR: device-mapper target type "mirror" is not in the kernel.
RAID set "sil_bhbgdgaaaaba" was not activated.
Run Code Online (Sandbox Code Playgroud)

然后,我用Google搜索这个错误,而且我发现了什么样的吓死我了,这个,基本上所有我需要做的就是重新编译内核与镜像支持,我不能重新编译内核我根本就没有知识做.. 但我的意思是..

谁能给我一个不涉及重新编译内核的解决方案?

第二次编辑:我刚刚下载并刻录了一张 Ubuntu Live CD,你猜怎么着?当场检测到 RAID 阵列(我目前正在 RAID 阵列中安装 Ubuntu)。现在我很困惑,我认为 Ubuntu Server 是一个 Ubuntu 版本但没有 Windows 管理器。

第三次编辑:刚刚保存了系统日志,以显示更多信息:

Oct 24 22:46:43 anna-install: Installing dmraid-udeb
Oct 24 22:46:43 anna[10984]: DEBUG: retrieving dmraid-udeb 1.0.0.rc16-4.1ubuntu4
Oct 24 22:46:43 anna[10984]: DEBUG: retrieving libdmraid1.0.0.rc16-udeb 1.0.0.rc16-4.1ubuntu4
Oct 24 22:46:43 disk-detect: Serial ATA RAID disk(s) detected.
Oct 24 22:46:44 disk-detect: Enabling dmraid support.
Oct 24 22:46:44 kernel: [   76.836245] device-mapper: table: 253:0: mirror: unknown target type
Oct 24 22:46:44 kernel: [   76.836248] device-mapper: ioctl: error adding target to table
Oct 24 22:46:44 disk-detect: ERROR: 
Oct 24 22:46:44 disk-detect: device-mapper target type "mirror" is not in the kernel
Oct 24 22:46:44 disk-detect: 
Oct 24 22:46:44 disk-detect: RAID set "sil_bhbgdgdefacd" was not activated
Oct 24 22:46:44 udevd[9332]: inotify_add_watch(6, /dev/dm-0, 10) failed: No such file or directory
Oct 24 22:46:44 kernel: [   76.931742] device-mapper: table: 253:0: mirror: unknown target type
Oct 24 22:46:44 kernel: [   76.931745] device-mapper: ioctl: error adding target to table
Oct 24 22:46:44 disk-detect: ERROR: 
Oct 24 22:46:44 disk-detect: device-mapper target type "mirror" is not in the kernel
Oct 24 22:46:44 disk-detect: 
Oct 24 22:46:44 disk-detect: RAID set "sil_bhbgdgdefacd" was not activated
Oct 24 22:46:44 udevd[9332]: inotify_add_watch(6, /dev/dm-0, 10) failed: No such file or directory
Run Code Online (Sandbox Code Playgroud)

谢谢

Tio*_*Tio 3

问题解决了,所需要的只是我的葡萄牙语聪明才智或“Desenrascan\xc3\xa7o”。代代相传的神奇能力,只需一分钱和一根绳子就能解决任何问题。(我没有用一分钱和一根绳子解决问题,但你明白了)。

\n\n

所以这是解决方案:

\n\n
    \n
  1. 将其中一张磁盘连接到主板,从现在开始我们调用源。
  2. \n
  3. 在源磁盘上安装 Ubuntu Server 。
  4. \n
  5. 运行sudo apt-get update
  6. \n
  7. 运行sudo apt-get 升级
  8. \n
  9. 通过运行sudo apt-get install dmraid安装 dmraid
  10. \n
  11. 将模块 dm-mod 和 dm-mirror 放入 /etc/modules 文件中,只需sudo nano /etc/modules
  12. \n
  13. 将源磁盘连接到第一个 SATA 端口上的 PCI 卡,将另一个磁盘连接到任何其他端口上
  14. \n
  15. 创建 RAID 1 阵列。然后使用 RAID 阵列启动计算机,它会启动,因为其中一个磁盘是可启动的。
  16. \n
  17. 通过发出以下命令确认 raid 正在运行:sudo dmraid -ay,应出现以下内容:“*sil_bhbgdjddagcc: 0 976771072 mirror core 2 131072 nosync 2 /dev/sdd 0 /dev/sde 0 1 handle_errors.*”
  18. \n
  19. 断开第二个磁盘(不是磁盘的磁盘)。
  20. \n
  21. 再次从阵列启动,并对任意文件进行更改。然后关机。
  22. \n
  23. 连接断开的驱动器并重建阵列。
  24. \n
  25. 等了好久...
  26. \n
\n\n

...如果一切顺利,您的服务器上现在应该有一个正在运行的 RAID 1 阵列。

\n\n

如何检查 RAID 1 阵列是否正常工作?只需从分别连接到主板的每个驱动器启动,如果启动,则意味着重建已正确完成。

\n\n

检查重建是否正确完成后,您必须再次重建。完成此引导和重建后,您只需在使用 RAID 1 阵列时更改一个磁盘上的一个文件,然后关闭并断开磁盘与阵列的连接。

\n\n

然后分别从它们启动并检查两个磁盘上对该文件所做的更改,如果有更改,则意味着 RAID 1 阵列正在工作。然后就可以进行另一次重建,系统就可以使用了。

\n\n

为什么我每次从一个或另一个启动时都必须重建阵列,因为每次服务器启动时磁盘上都会发生变化,这就是原因。

\n\n

此解决方案不适用于其他类型的 RAID 阵列,RAID 5 不适用,因为数据分布在磁盘上,RAID 10 也不适用,因为数据被剥离和镜像,RAID 0不是问题,因为它是由安装检测到的。

\n