使用此过程可以镜像根 (/) 文件系统。
成为节点的超级用户。
使用 metainit(1M) 命令将根盘片置于一个单盘片(单向)并置中。
指定该根盘片的物理磁盘名称 (cNtXdYsZ)。
# metainit -f submirror1 1 1 root-disk-slice |
创建第二个并置。
# metainit submirror2 1 1 submirror-disk-slice |
创建具有一个子镜像的单向镜像。
# metainit mirror -m submirror1 |
镜像的元设备名称或卷名在整个群集中必须是唯一的。
运行 metaroot(1M) 命令。
此命令编辑 /etc/vfstab 和 /etc/system 文件,以便可以通过元设备或卷上的根 (/) 文件系统来引导系统。
# metaroot mirror |
运行 lockfs(1M) 命令。
此命令清理日志中的所有事务,并将这些事务写入所有已装载 UFS 文件系统的主文件系统中。
# lockfs -fa |
从节点中清空任何资源组或设备组。
# scswitch -S -h from-node |
清空所有资源组和设备组
指定从中清空资源组或设备组的节点的名称
重新引导该节点。
此命令重新装载新镜像的根 (/) 文件系统。
# shutdown -g0 -y -i6 |
使用 metattach(1M) 命令将第二个子镜像连接到镜像。
# metattach mirror submirror2 |
如果不是,请继续执行步骤 11。
如果是,请执行以下步骤,为用于镜像无法安装的文件系统的磁盘启用原始设备组的 localonly 特性。 如果引导设备与多个节点连接,则必须启用 localonly 特性以防止意外地将节点与其引导设备隔开。
如果需要,可以使用 scdidadm(1M) -L 命令来显示原始磁盘设备组的完整设备 ID 路径名称。
在以下示例中,原始磁盘设备组名称 dsk/d2 是输出的第三列(即完整的设备 ID 路径名称)的一部分。
# scdidadm -L … 1 phys-schost-3:/dev/rdsk/c1t1d0 /dev/did/rdsk/d2 |
查看原始磁盘设备组的节点列表。
输出类似于以下内容:
# scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … |
节点列表是否包含多个节点名称?
从原始磁盘设备组的节点列表中删除所有节点,已镜像根磁盘的节点除外。
在节点列表中仅保留已镜像根磁盘的那个节点。
# scconf -r -D name=dsk/dN,nodelist=node |
指定原始磁盘设备组在群集范围内唯一的名称
指定要从节点列表中删除的节点的名称
使用 scconf(1M) 命令可以启用 localonly 特性。
启用 localonly 特性之后,该原始磁盘设备组将由节点列表中的节点专用。 如果引导设备与多个节点连接,则启用该特性可以防止意外地将节点与其引导设备隔开。
# scconf -c -D name=rawdisk-groupname,localonly=true |
指定原始磁盘设备组的名称
有关 localonly 特性的详细信息,请参阅 scconf_dg_rawdisk(1M) 手册页。
如果主引导设备出现故障,可以通过这个备选引导设备引导。 有关备选引导设备的详细信息,请参阅 Solstice DiskSuite 4.2.1 User's Guide 中的 “Troubleshooting the System” 或 Solaris Volume Manager Administration Guide 中的 “Mirroring root (/) Special Considerations”。
# ls -l /dev/rdsk/root-disk-slice |
确保镜像的每个元设备名称或卷名在整个群集中是唯一的。
是否要镜像全局名称空间 /global/.devices/node@nodeid?
如果是,请转到如何镜像全局名称空间 。
如果不是,则继续执行步骤 14。
是否要镜像无法卸载的文件系统?
如果是,请转到如何镜像无法卸载的根文件系统 (/) 以外的文件系统。
如果不是,则继续执行步骤 15。
是否打算镜像用户定义的文件系统?
如果是,请转到如何镜像无法卸载的文件系统。
否则转到如何创建磁盘集 以创建磁盘集。
以下示例显示了在节点 phys-schost-1 上创建镜像 d0 的过程,该镜像由分区 c0t0d0s0 上的子镜像 d10 和分区 c2t2d0s0 上的子镜像 d20 组成。 磁盘 c2t2d0 是一个多端口磁盘,所以启用了 localonly 特性。
(创建镜像) # metainit -f d10 1 1 c0t0d0s0 d11: Concat/Stripe is setup # metainit d20 1 1 c2t2d0s0 d12: Concat/Stripe is setup # metainit d0 -m d10 d10: Mirror is setup # metaroot d0 # lockfs -fa (从 phys-schost-1 中清空资源组和设备组) # scswitch -S -h phys-schost-1 (重新引导节点) # shutdown -g0 -y -i6 (附加第二个子镜像) # metattach d0 d20 d0: Submirror d20 is attached (显示设备组节点列表) # scconf -pvv | grep dsk/d2 Device group name: dsk/d2 … (dsk/d2) Device group node list: phys-schost-1, phys-schost-3 … (从节点列表中删除 phys-schost-3) # scconf -r -D name=dsk/d2,nodelist=phys-schost-3 (启用 localonly 特性) # scconf -c -D name=dsk/d2,localonly=true (记录备用引导路径) # ls -l /dev/rdsk/c2t2d0s0 lrwxrwxrwx 1 root root 57 Apr 25 20:11 /dev/rdsk/c2t2d0s0 –> ../../devices/node@1/pci@1f,0/pci@1/scsi@3,1/disk@2,0:a,raw |