在FreeBSD上使用软RAID-1
http://tech.ddvip.com 2008年01月21日 社区交流
内容摘要:镜像/双工 -- RAID 1 保持两块硬盘的数据一致。换句话说,它将一块硬盘的数据镜射到另一块硬盘。若两块硬盘同接在一根 IDE 数据线上,则称为镜像;若两块硬盘接在不同的数据线上,则称为双工。因为单一数据线易造成单点故障,所以采用双工的占大多数。
不过,当回到 sysinstall 主菜单时,不要急于重启系统。按下 Alt-F4,进入命令提示行。我们首先键入 csh 命令,这样就得到一个带历史记录的 shell (默认的 shell 是 Bourne)。
创建镜像/双工很简单,只要键入:
# gmirror label -v -b round-robin gm0 /dev/ad0
其中,gmirror label 创建镜像;-v 开启冗长模式;-b round-robin 选用平衡算法(目前 round-robin 算法性能最佳);gm0 即镜像/双工的名称(该名称代表第一个 GEOM 镜像);/dev/ad0 代表用以镜射的源盘。
然而,若现在便键入命令会使你失望。
# gmirror label -v -b round-robin gm0 /dev/ad0
Can't store metadata on /dev/ad0: Operation not permitted
(无法将元数据保存于 /dev/ad0 上:禁止操作)
这是一种安全特性,表示磁盘已被加载以便写入;因此不可用。不过,你可通过 sysctl MIB,暂时让 gmirror 绕过这个特性,从而创建镜像/双工。
# sysctl kern.geom.debugflags=16
kern.geom.debugflags: 0 -> 16
不用担心,系统重启后(数分钟后的事),该 MIB 将复位为 0。再来一次:
# gmirror label -v -b round-robin gm0 /dev/ad0
Metadata value stored on /dev/ad0
就这样,RAID 1 配置告成。
我们有必要让操作系统每次重启时自动装载 RAID。这需要修改两个文件。第一个文件当前是空的,用 echo 创建即可:
# echo geom_mirror_load="YES" >/boot/loader.conf
第二个文件 /etc/fstab 不是空的,所以我建议在修改前做个备份:
# cp /etc/fstab /etc/fstab.orig
# vi /etc/fstab
责编:豆豆技术应用