RAID3 是一种将多个磁盘组成一个卷的技术, 在这个配置中包含一个专用于校验的盘。 在 RAID3 系统中, 数据会以字节为单位拆分并写入除校验盘之外的全部驱动器中。 这意味着从 RAID3 中读取数据时将会访问所有的驱动器。 采用多个磁盘控制器可以进一步改善性能。 RAID3 阵列最多可以容忍其中的 1 个驱动器出现故障, 它可以提供全部驱动器总容量的 1 - 1/n, 此处 n 是阵列中的磁盘数量。 这类配置比较适合保存大容量的数据, 例如多媒体文件。
在建立 RAID3 阵列时, 至少需要 3 块磁盘。 所有的盘的尺寸必须一致, 因为 I/O 请求会并发分派到不同的盘上。 另外, 由于 RAID3 本身的设计, 盘的数量必须恰好是 3, 5, 9, 17, 等等 (2^n + 1)。
在 FreeBSD 中, RAID3 是通过 graid3(8) GEOM class 实现的。 在 FreeBSD 中建立专用的 RAID3 阵列需要下述步骤。
虽然理论上从 RAID3 阵列启动 FreeBSD 是可行的, 但这并不常见, 也不推荐您这样做。
首先, 在引导加载器中用下面的命令加载 geom_raid3.ko
内核模块:
#
graid3 load
此外, 也可以通过命令行手工加载
geom_raid3.ko
模块:
#
kldload geom_raid3.ko
创建用于挂载卷的挂点目录:
#
mkdir /multimedia/
确定将要加入阵列的磁盘设备名, 并创建新的
RAID3 设备。 最终, 这个设备将代表整个阵列。
下面的例子使用三个未经分区的
ATA 磁盘:
和 ada1
保存数据, 而
ada2
用于校验。ada3
#
graid3 label -v gr0 /dev/ada1 /dev/ada2 /dev/ada3
Metadata value stored on /dev/ada1.
Metadata value stored on /dev/ada2.
Metadata value stored on /dev/ada3.
Done.为新建的
gr0
设备分区,
并在其上创建 UFS 文件系统:
#
gpart create -s GPT /dev/raid3/gr0
#
gpart add -t freebsd-ufs /dev/raid3/gr0
#
newfs -j /dev/raid3/gr0p1
屏幕上会滚过许多数字, 这个过程需要一段时间才能完成。 此后, 您就完成了创建卷的全部操作, 可以挂载它了。
最后一步是挂载文件系统:
#
mount /dev/raid3/gr0p1 /multimedia/
现在可以使用 RAID3 阵列了。
为了让上述配置在系统重启后继续可用, 还需要进行一些额外的配置操作。
在挂载卷之前必须首先加载 geom_raid3.ko
模块。
将下面的配置添加到
/boot/loader.conf
文件中,
可以让系统在引导过程中自动加载这个模块:
您需要在
/etc/fstab
文件中加入下列配置,
以便让系统引导时自动挂载阵列上的文件系统:
本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
如果对于FreeBSD有问题,请先阅读
文档,如不能解决再联系
<questions@FreeBSD.org>.
关于本文档的问题请发信联系
<doc@FreeBSD.org>.