使用 fakeRAID10 引发灾难(双启动 Win7、Ubuntu14.10)

使用 fakeRAID10 引发灾难(双启动 Win7、Ubuntu14.10)

过去几周(!),我一直在尝试设置 Windows 7 Enterprise 和 Ubuntu Desktop 14.10 的双启动。主板是剑齿虎 x79,我想把所有东西都安装在RAID10由四个 2TB HDD 组成的阵列。


背景/我的过程/描述:

x79 支持某种 RAID,我最初以为是基于硬件的。通过更改 BIOS 中的开关,您可以从 AHCI 更改为 RAID。然后,您可以CTRL+I在启动时按下 来设置 RAID 阵列(计算机的前任所有者已调整 BIOS 中的超频设置,这导致无法显示此菜单;重置为默认值可解决此问题。此外,您需要选择 BIOS 的 RAID 选项)。

安装Windows 7:

Windows 没有 RAID 配置的驱动程序,因此在启动时找不到任何磁盘。将主板的驱动程序复制到 USB 记忆棒上(或使用较新的这里) 并让 Windows 在安装过程中使用这些驱动程序(您必须直接导航到目录;Windows 不会递归搜索文件夹中的驱动程序)允许 Windows 将 RAID10 阵列识别为单个驱动器并顺利安装。

安装 Ubuntu 桌面:

设置 Ubuntu 更加麻烦。虽然我可以从闪存驱动器映像启动,但 Ubuntu 识别出该阵列——但不是单个磁盘:而是两个 RAID1(我认为;可能是 RAID0,尽管这不太合理)磁盘,具有多个分区。因此,Ubuntu 只能识别递归 RAID 的一个级别。

进一步的研究表明,这意味着 RAID 实际上并不是一个硬件 RAID,而是更高级的:一个假 RAID,它不像软件 RAID 那样由操作系统管理,也不像硬件 RAID 那样由(完全)专用硬件管理。

在多次尝试失败后,我终于找到了此 stackexchange 帖子。本质上,您连接到互联网,禁用dmraid,然后安装mdadm。然后调用mdadm --assemble --scan让系统将 fakeRAID 识别为单个驱动器。然后,您使用gparted对其进行分区。经过几次尝试,我成功了,在 Windows 创建的两个 NTFS 分区(其中较大的一个我缩小了)之后立即放置了一个小的 EXT4 和一个交换分区。

当真正到了安装然而,Ubuntu 的安装程序在中途就崩溃了(我查看了日志,发现它与 GRUB 有关)。我再次尝试,结果还是一样。

由于 Ubuntu USB 显然不保存状态,重新启动会再次将 RAID10 阵列显示为单独的 RAID 阵列(因为mdadm不再存在)。作为最后的努力(这是关键部分),然后我安装 Ubuntu 到EXT4 分区。安装已成功完成。

现在,系统可以顺利启动到 Windows 或 Ubuntu。


然而,我认为这是自找麻烦。

问题是我(认为我)仅将 Ubuntu 安装在 RAID10 阵列中的一个阵列上。

  • 如果确实是两个暴露给操作系统的 RAID1,那么看起来好像我在一半的条带上安装了 Ubuntu好像它们是连续的. 注意:开机仍可能成功如果 Ubuntu 在启动后立即认为 RAID10 是单独的 RAID1。
  • 如果是两个暴露给操作系统的 RAID0(即控制器翻转了视图,因此看起来像 RAID01),那么我只将 Ubuntu 安装在一个镜像上(因此,Ubuntu 是不是确实备份了,并且无论如何如果从未写入的 RAID0 进行读取,那么就会发生一些令人讨厌的事情)。

在将任何真实数据放在上面之前,我需要知道发生了什么,以及操作系统是否设置正确。我的问题(优先级依次递增):

  1. 我的分析正确吗?我是否只在 fakeRAID 阵列的一半上安装了 Ubuntu?或者,即使操作系统(在本例中为 LiveCD)不够智能,写入 fakeRAID 阵列的一半是否会导致硬件自动写入另一半?
  2. 如果确实存在问题,有没有办法解决它(以便将数据也写入另一半)?
  3. 我可以运行某种类型的 [假] RAID 一致性检查吗?

相关内容