diff options
Diffstat (limited to 'documentation/content/zh-cn/books/handbook/geom/_index.adoc')
-rw-r--r-- | documentation/content/zh-cn/books/handbook/geom/_index.adoc | 78 |
1 files changed, 39 insertions, 39 deletions
diff --git a/documentation/content/zh-cn/books/handbook/geom/_index.adoc b/documentation/content/zh-cn/books/handbook/geom/_index.adoc index f8f0c1bdae..7f48a3e3d7 100644 --- a/documentation/content/zh-cn/books/handbook/geom/_index.adoc +++ b/documentation/content/zh-cn/books/handbook/geom/_index.adoc @@ -84,21 +84,21 @@ image::striping.png[磁盘条带图] . 加载 [.filename]#geom_stripe.ko# 模块: + -[source,bash] +[source,shell] .... # kldload geom_stripe .... + . 确信存在合适的挂接点 (mount point)。 如果这个卷将成为根分区, 那么暂时把它挂接到其他位置i, 如 [.filename]#/mnt#: + -[source,bash] +[source,shell] .... # mkdir /mnt .... + . 确定将被做成条带卷的磁盘的设备名, 并创建新的条带设备。 举例而言, 要将两个未用的、 尚未分区的 ATA 磁盘 [.filename]#/dev/ad2# 和 [.filename]#/dev/ad3# 做成一个条带设备: + -[source,bash] +[source,shell] .... # gstripe label -v st0 /dev/ad2 /dev/ad3 Metadata value stored on /dev/ad2. @@ -108,14 +108,14 @@ Done. + . 接着需要写标准的 label, 也就是通常所说的分区表到新卷上, 并安装标准的引导代码: + -[source,bash] +[source,shell] .... # bsdlabel -wB /dev/stripe/st0 .... + . 上述过程将在 [.filename]#/dev/stripe# 目录中的 [.filename]#st0# 设备基础上建立两个新设备。 这包括 [.filename]#st0a# 和 [.filename]#st0c#。 这时, 就可以在 [.filename]#st0a# 设备上用下述 `newfs` 命令来建立文件系统了: + -[source,bash] +[source,shell] .... # newfs -U /dev/stripe/st0a .... @@ -125,14 +125,14 @@ Done. 要挂接刚创建的条带盘: -[source,bash] +[source,shell] .... # mount /dev/stripe/st0a /mnt .... 要在启动过程中自动挂接这个条带上的文件系统, 需要把关于卷的信息放到 [.filename]#/etc/fstab# 文件中。为达到此目的, 需要创建一个叫 [.filename]#stripe# 的永久的挂载点: -[source,bash] +[source,shell] .... # mkdir /stripe # echo "/dev/stripe/st0a /stripe ufs rw 2 2" \ @@ -141,7 +141,7 @@ Done. 此外, [.filename]#geom_stripe.ko# 模块也必须通过在 [.filename]#/boot/loader.conf# 中增加下述设置, 以便在系统初始化过程中自动加载: -[source,bash] +[source,shell] .... # echo 'geom_stripe_load="YES"' >> /boot/loader.conf .... @@ -159,7 +159,7 @@ Done. 在开始构建镜像卷之前, 可以启用更多的调试信息, 并应开放对设备的完全访问。 这可以通过将 man:sysctl[8] 变量 `kern.geom.debugflags` 设置为下面的值来实现: -[source,bash] +[source,shell] .... # sysctl kern.geom.debugflags=17 .... @@ -172,14 +172,14 @@ Done. 在引导用的设备基础上新建镜像时, 有可能会导致保存在磁盘上最后一个扇区的数据丢失。 在新安装 FreeBSD 之后立即创建镜像可以减低此风险。 下面的操作与默认的 FreeBSD 9._X_ 安装过程不兼容, 因为它采用了新的 GPT 分区格式。 GEOM 会覆盖 GPT 元数据, 这会导致数据丢失, 并有可能导致系统无法引导。 ==== -[source,bash] +[source,shell] .... # gmirror label -vb round-robin gm0 /dev/da0 .... 系统应给出下面的回应: -[source,bash] +[source,shell] .... Metadata value stored on /dev/da0. Done. @@ -187,7 +187,7 @@ Done. 初始化 GEOM, 这步操作会加载内核模块 [.filename]#/boot/kernel/geom_mirror.ko#: -[source,bash] +[source,shell] .... # gmirror load .... @@ -199,7 +199,7 @@ Done. 配置在系统初始化过程中自动加载 [.filename]#geom_mirror.ko#: -[source,bash] +[source,shell] .... # echo 'geom_mirror_load="YES"' >> /boot/loader.conf .... @@ -210,7 +210,7 @@ Done. ==== 如果 man:vi[1] 是你喜欢的编辑器, 以下则是完成此项任务的一个简便方法: -[source,bash] +[source,shell] .... # vi /etc/fstab .... @@ -234,14 +234,14 @@ Done. 重启系统: -[source,bash] +[source,shell] .... # shutdown -r now .... 在系统初始化过程中, 新建的 [.filename]#gm0# 会代替 [.filename]#da0# 设备工作。 系统完成初始化之后, 可以通过检查 `mount` 命令的输出来查看效果: -[source,bash] +[source,shell] .... # mount Filesystem 1K-blocks Used Avail Capacity Mounted on @@ -255,21 +255,21 @@ devfs 1 1 0 100% /var/named/dev 这个输出是正常的。 最后, 使用下面的命令将 [.filename]#da1# 磁盘加到镜像卷中, 以开始同步过程: -[source,bash] +[source,shell] .... # gmirror insert gm0 /dev/da1 .... 在构建镜像卷的过程中, 可以用下面的命令查看状态: -[source,bash] +[source,shell] .... # gmirror status .... 一旦镜像卷的构建操作完成, 这个命令的输出就会变成这样: -[source,bash] +[source,shell] .... Name Status Components mirror/gm0 COMPLETE da0 @@ -293,7 +293,7 @@ mountroot> 这种情况应使用电源或复位按钮重启机器。 在引导菜单中, 选择第六 (6) 个选项。 这将让系统进入 man:loader[8] 提示符。 在此处手工加载内核模块: -[source,bash] +[source,shell] .... OK? load geom_mirror OK? boot @@ -314,12 +314,12 @@ options GEOM_MIRROR 考虑前面的 RAID1 配置, 假设 [.filename]#da1# 出现了故障并需要替换, 要替换它, 首先确定哪个磁盘出现了故障, 并关闭系统。 此时, 可以用换上新的磁盘, 并重新启动系统。 这之后可以用下面的命令来完成磁盘的替换操作: -[source,bash] +[source,shell] .... # gmirror forget gm0 .... -[source,bash] +[source,shell] .... # gmirror insert gm0 /dev/da1 .... @@ -347,28 +347,28 @@ RAID3 是一种将多个磁盘组成一个卷的技术, 在这个配置中包 . 首先, 在引导加载器中用下面的命令加载 [.filename]#geom_raid3.ko# 内核模块: + -[source,bash] +[source,shell] .... # graid3 load .... + 此外, 也可以通过命令行手工加载 [.filename]#geom_raid3.ko# 模块: + -[source,bash] +[source,shell] .... # kldload geom_raid3.ko .... + . 创建用于挂载卷的挂点目录: + -[source,bash] +[source,shell] .... # mkdir /multimedia/ .... + . 确定将要加入阵列的磁盘设备名, 并创建新的 RAID3 设备。 最终, 这个设备将代表整个阵列。 下面的例子使用三个未经分区的 ATA 磁盘: [.filename]#ada1# 和 [.filename]#ada2# 保存数据, 而 [.filename]#ada3# 用于校验。 + -[source,bash] +[source,shell] .... # graid3 label -v gr0 /dev/ada1 /dev/ada2 /dev/ada3 Metadata value stored on /dev/ada1. @@ -379,7 +379,7 @@ Done. + . 为新建的 [.filename]#gr0# 设备分区, 并在其上创建 UFS 文件系统: + -[source,bash] +[source,shell] .... # gpart create -s GPT /dev/raid3/gr0 # gpart add -t freebsd-ufs /dev/raid3/gr0 @@ -389,7 +389,7 @@ Done. 屏幕上会滚过许多数字, 这个过程需要一段时间才能完成。 此后, 您就完成了创建卷的全部操作, 可以挂载它了。 . 最后一步是挂载文件系统: + -[source,bash] +[source,shell] .... # mount /dev/raid3/gr0p1 /multimedia/ .... @@ -432,14 +432,14 @@ geom_raid3_load="YES" 要导出这个设备, 首先请确认它没有被挂接, 然后是启动 man:ggated[8] 服务: -[source,bash] +[source,shell] .... # ggated .... 现在我们将在客户机上 `mount` 该设备, 使用下面的命令: -[source,bash] +[source,shell] .... # ggatec create -o rw 192.168.1.1 /dev/da0s4d ggate0 @@ -477,7 +477,7 @@ ggate0 要为一个 UFS2 文件系统创建永久性标签, 而不破坏其上的数据,可以使用下面的命令: -[source,bash] +[source,shell] .... # tunefs -L home /dev/da3 .... @@ -502,7 +502,7 @@ ggate0 现在可以像平时一样挂接文件系统了: -[source,bash] +[source,shell] .... # mount /home .... @@ -513,7 +513,7 @@ ggate0 下列命令可以清除标签: -[source,bash] +[source,shell] .... # glabel destroy home .... @@ -527,7 +527,7 @@ ggate0 重启系统,在 man:loader[8] 提示符下键入 kbd:[4] 启动到单用户模式。 然后输入以下的命令: -[source,bash] +[source,shell] .... # glabel label rootfs /dev/ad0s1a GEOM_LABEL: Label for provider /dev/ad0s1a is label/rootfs @@ -556,7 +556,7 @@ GEOM_LABEL: Label for provider /dev/ad0s1b is label/swap 现在可以重启系统了。 如果一切顺利的话, 系统可以正常启动并且 `mount` 命令显示: -[source,bash] +[source,shell] .... # mount /dev/label/rootfs on / (ufs, local) @@ -570,7 +570,7 @@ devfs on /dev (devfs, local) 从 FreeBSD 7.2 开始, man:glabel[8] class 新增了一种用于 UFS 文件系统唯一标识符, `ufsid` 的标签支持。 这些标签可以在 [.filename]#/dev/ufsid# 目录中找到, 它们会在系统引导时自动创建。 在 [.filename]#/etc/fstab# 机制中, 也可以使用 `ufsid` 标签。 您可以使用 `glabel status` 命令来获得与文件系统对应的 `ufsid` 标签列表: -[source,bash] +[source,shell] .... % glabel status Name Status Components @@ -622,7 +622,7 @@ options GEOM_JOURNAL 现在, 可以为空闲的文件系统创建日志了。 对于新增的 SCSI 磁盘 [.filename]#da4#, 具体的操作步骤为: -[source,bash] +[source,shell] .... # gjournal load # gjournal label /dev/da4 @@ -630,7 +630,7 @@ options GEOM_JOURNAL 这样, 就会出现一个与 [.filename]#/dev/da4# 设备节点对应的 [.filename]#/dev/da4.journal# 设备节点。 接下来, 可以在这个设备上建立文件系统: -[source,bash] +[source,shell] .... # newfs -O 2 -J /dev/da4.journal .... @@ -639,7 +639,7 @@ options GEOM_JOURNAL 然后就可以用 `mount` 命令来挂接设备了: -[source,bash] +[source,shell] .... # mount /dev/da4.journal /mnt .... |