我有一个带有 2TB HDD 的廉价 2 盘位 NAS。为了防止磁盘故障,我正在考虑购买第二个 2TB HDD 并将其放入带有 Linux mdadm 的 RAID1。文件系统是ext4。
这会提高还是降低 NAS 的性能?仅读取或写入性能如何?
网上似乎有很多关于这个的意见,但没有达成共识。
谢谢。
编辑:
所以我已经得到了三个不同的答案:“快一点”、“你不会注意到”和“如果有的话会降低性能”。(我主要对读取性能感兴趣。)维基百科说“读取性能可以大致上升为副本数量的线性倍数”。哪一个?
编辑2:
我发现越来越多的证据支持 RAID1 提高读取性能,包括 MD 联机帮助页:
更改并行写入所有设备。从任何一台设备读取数据。驱动程序尝试在所有设备之间分配读取请求以最大化性能。
我还发现了 MD 的 RAID10 with --layout=f2
,它提供了 RAID1 的冗余和 RAID0 的读取性能,并且可以使用两个驱动器。然而,写入性能会降低,因为顺序写入涉及两个驱动器在驱动器的远处部分之间来回寻找。man md
详情。
使用SSD和普通硬盘构建Linux软件RAID-1(镜像)有意义吗?我想将 SSD 的优势(传输速度快、访问时间快)与硬盘的优势(便宜、不同的故障模型)结合起来,并获得一个非常快速但可靠的 RAID...
我在 Ubuntu 12.04 LTS Precise Pangolin 上调用using的RAID 1阵列中创建了两个 2TB HDD 分区(/dev/sdb1
和/dev/sdc1
)。/dev/md0
mdadm
该命令sudo mdadm --detail /dev/md0
用于将两个驱动器指示为活动同步。
然后,为了测试,我失败了/dev/sdb1
,将其删除,然后使用命令再次添加它sudo mdadm /dev/md0 --add /dev/sdb1
watch cat /proc/mdstat
显示了阵列重建的进度条,但我不会花几个小时看它,所以我假设软件知道它在做什么。
进度条不再显示后,cat /proc/mdstat
显示:
md0 : active raid1 sdb1[2](S) sdc1[1]
1953511288 blocks super 1.2 [2/1] [U_]
Run Code Online (Sandbox Code Playgroud)
并sudo mdadm --detail /dev/md0
显示:
/dev/md0:
Version : 1.2
Creation Time : Sun May 27 11:26:05 2012
Raid Level : raid1
Array …
Run Code Online (Sandbox Code Playgroud) 如果我在 RAID-1 阵列中有磁盘,我可以取出其中一个并将其插入不同的系统进行读取吗?
这意味着,在目标系统上,将 RAID 阵列中的磁盘就像普通磁盘一样处理,无论是否支持任何控制器/驱动程序,也无需进行任何重建。
这个想法是,如果我的阵列(2 个磁盘)降级,我可以将其插入不同的系统,而不必获得另一个相同容量的磁盘(随着时间的推移会变得更难)并且(希望)即使没有访问到原始系统,以防控制器或主板损坏而不是其中一个磁盘。
Windows 7 中的软件 RAID 1(镜像)是否可以提高读取速度?
我想设置 RAID 1 来帮助保护我的重要文件(是的,是的,我知道它不是备份),但性能对我来说也很重要。据我了解,RAID 1 理论上应该能够将我的读取速度提高n倍,其中n是磁盘数量。
Windows 7 能否获得这种提升?我一直无法在任何地方找到这些信息。
我有一个 Synology 2-bay 211j NAS,带有 2x1TB HDD 作为单个 RAID 1 卷安装。我的空间用完了,所以我想用 2x3TB 的 HDD 升级我的 NAS。有没有什么简单的方法可以将所有数据从早期的 1TB 卷复制到新的 3TB RAID1 配置,而无需使用额外的备份设备或额外的 NAS?
Raid 1 是否可以防止数据损坏?例如,假设我将所有重要文件保存在使用 RAID 1 中的 2 个磁盘的 NAS 上。如果一个硬盘驱动器出现某种内部问题并且数据损坏,RAID 是否会自动识别并纠正它使用来自其他好磁盘的数据吗?
它甚至可以知道哪个副本是好的吗?
RAID 5 是否可以防止损坏?
我知道 RAID 不是备份解决方案。我想弄清楚如何确保我没有备份损坏的数据!
我刚刚为我的主桌面订购了两个新硬盘驱动器和一个 Windows 7 Professional 64 位副本。我想将 Windows 7 全新安装到新驱动器上(将旧的 Windows XP Professional 引导分区保留一段时间,以防出现灾难性错误等)。我想让它们设置为镜像(RAID 1)模式。
我的理解是 Windows 7 Pro 可以做软件镜像,但是我可以在安装时直接设置吗?如果是这样,如何?请注意,我希望将磁盘分成三个分区(操作系统、应用程序和数据以及批量数据),所有这些分区都应该被镜像。
使用我的主板的硬件 RAID 支持会更好(更可靠或更快速)吗?我的主板是较旧的 nVidia nForce 680i SLI,它不是最稳定的主板,我不确定它的 RAID 1 配置是否值得信赖(或者 Windows 7 是否甚至可以检测并安装到硬件镜像卷上) . 此外,RAID 1 的性能特征与 RAID 0 或 RAID 5 有很大不同,我想知道 Windows 7 的软件镜像是否实际上可能比硬件 RAID 1更快(例如,当我在必须戴上系统管理员的帽子,我在部署ZFS方面取得了巨大的成功; 大多数硬件 RAID 1 实现必须读取两个磁盘并比较结果以查找数据错误,但 ZFS 只能从镜像中的一个磁盘读取,并且只使用内置校验和,这意味着它可以有多达 2 倍的读取次数飞行中,只要没有数据损坏)。
编辑:好的,我关于 Windows 7 是否可以进行软件镜像的问题已经回答,并且可以。不过,我仍然不确定 Windows 软件 RAID 或我主板的硬件“假 RAID”功能是否是更好的选择。请记住,我只对镜像感兴趣——而不是更复杂的条带化或奇偶校验操作,这些操作通常显示糟糕的主板 RAID 解决方案的性能不佳。
最近我和我的一位老师进行了讨论。他声称您可以使用五个驱动器设置 RAID 1,并且数据将在所有这些驱动器上进行镜像。
我告诉他带有 5 个驱动器的 RAID 1 不会这样工作。这将是一个带有两个驱动器的 RAID 1,并将使用其他三个驱动器作为热备用。
他还说 RAID 6 与 RAID 5 相同,但您可以将所有奇偶校验放在同一个驱动器上。我认为 RAID 6 是一种类似于 RAID 5 的解决方案,其中两个驱动器用于奇偶校验。
那谁是对的?
我遇到了大多数人遇到的相同问题:如何创建可靠的个人存储解决方案,因为:
因此,在将我的头撞到这个问题上几天之后(并且在我的脑后多年),我提出了以下解决方案。我将描述一个基于本地 linux ZFS 测试过的解决方案,它在 Ubuntu PPA 中可用,但 LVM、MD 和 btrfs 可用于实现相同的目标。为此,我将使用 RAID1(ZFS 镜像 vdevs)。
例如,考虑一组新的 2TB 驱动器、一个旧的 750GB 驱动器、2 个旧的 400GB 驱动器和一个旧的 500GB 驱动器。最佳镜像分区有 2TB 的可用空间,如下图所示,其中“:”分隔分区,“|”分隔 分离磁盘:
+------------------------------------------------------------------+
| 2TB (sda1) : (sda2) : (sda3) : (sda4) |
+------------------------------------------------------------------+--+
| 750 GB (sdb) | 400 GB (sdc) | 400 GB (sdd) | 500 GB (sde1) :XX|
+---------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
创建您的 zpool 作为
zpool create archive mirror /dev/sda1 …
Run Code Online (Sandbox Code Playgroud)