跳过导航链接 | |
退出打印视图 | |
从 Oracle Solaris 10 转换到 Oracle Solaris 11.1 Oracle Solaris 11.1 Information Library (简体中文) |
在 Oracle Solaris 11 中创建 ZFS 存储池与在 Oracle Solaris 10 中创建池类似。以下几节提供了有关为 ZFS 根池和非根池准备磁盘的摘要信息。
检查以下常规池设备配置建议:
使用整个的磁盘创建非根池,整个的磁盘比磁盘分片更易于管理。例如,您可以按以下方式轻松创建具有四个设备的镜像存储池:
# zpool create tank mirror c0t1d0 c0t2d0 mirror c1t1d0 c1t2d0
使用整个的磁盘创建 ZFS 存储池时,磁盘将标记有 EFI 标签而非 SMI 标签。您可以在格式化实用程序中显示磁盘标签,然后根据磁盘标签中柱面信息的缺少来识别 EFI 标签。例如:
partition> print Current partition table (original): Total disk sectors available: 286478269 + 16384 (reserved sectors) Part Tag Flag First Sector Size Last Sector 0 usr wm 256 136.60GB 286478302 1 unassigned wm 0 0 0 2 unassigned wm 0 0 0 3 unassigned wm 0 0 0 4 unassigned wm 0 0 0 5 unassigned wm 0 0 0 6 unassigned wm 0 0 0 8 reserved wm 286478303 8.00MB 286494686
建议您使用整个磁盘创建非根池。
除传统的 512n 磁盘外,Oracle Solaris 发行版还支持高级格式磁盘。有关更多信息,请参见《Oracle Solaris 11.1 管理:设备和文件系统》中的"支持高级格式磁盘 "。
检查根池的以下安装改进:
磁盘标签改进-如果打算用来包含 OS 的一个或多个磁盘标签是未知的,则会自动使用相应的磁盘标签重新标记此类磁盘。
在 Oracle Solaris 11.1 中,具有启用 GPT 的固件的基于 SPARC 的系统和大多数基于 x86 的系统安装在一个或多个根池磁盘上(安装时会加上 EFI (GPT) 标签)。
此外,AI 安装程序改进了 whole_disk 关键字语法,现在,如果 whole_disk 设置为 true,则磁盘的内容将会被替换,即使磁盘具有现有分区或分片也是如此。
镜像根池的 AI 安装-Oracle Solaris 10 安装功能允许您在安装期间创建镜像根池。
您可以使用 AI 清单关键字语法在 Oracle Solaris 11 自动安装期间创建镜像根池。例如,以下 Oracle Solaris 11.1 语法使用整个磁盘创建镜像根池:
<!DOCTYPE auto_install SYSTEM "file:///usr/share/install/ai.dtd.1"> . . . <target> <disk whole_disk="true" in_zpool="rpool" in_vdev="mirrored"> <disk_name name="c1t0d0" name_type="ctd"/> </disk> <disk whole_disk="true" in_zpool="rpool" in_vdev="mirrored"> <disk_name name="c2t0d0" name_type="ctd"/> </disk> <logical> <zpool name="rpool" is_root="true"> <vdev name="mirrored" redundancy="mirror"/> <!-- Subsequent <filesystem> entries instruct an installer to create following ZFS datasets: <root_pool>/export (mounted on /export) <root_pool>/export/home (mounted on /export/home) . . . </zpool> </logical> </target> . . .
通常情况下,在系统完成安装时,将重新标记根池设备并创建根池。
Oracle Solaris 11:在基于 SPARC 的系统和基于 x86 的系统上执行安装操作期间,SMI (VTOC) 标签将自动应用到一个或多个根池磁盘上。
# zpool status rpool pool: rpool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 c7t0d0s0 ONLINE 0 0 0
Oracle Solaris 11.1:在具有启用 GPT 的固件的基于 SPARC 的系统和大多数基于 x86 的系统上执行安装操作期间,EFI 标签将自动应用到一个或多个根池磁盘上。否则,将在根池磁盘上安装 VTOC 磁盘标签,如以下示例所示:
# zpool status rpool pool: rpool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 c7t0d0 ONLINE 0 0 0
在通过附加磁盘来创建镜像根池时,请使用整个磁盘语法。
# zpool attach rpool c7t0d0 c7t2d0 Make sure to wait until resilver is done before rebooting.
在新磁盘重新同步之前,池一直处于 DEGRADED 状态。
# zpool status rpool pool: rpool state: DEGRADED status: One or more devices is currently being resilvered. The pool will continue to function in a degraded state. action: Wait for the resilver to complete. Run 'zpool status -v' to see device specific details. scan: resilver in progress since Thu Jan 24 08:15:13 2013 224M scanned out of 22.0G at 6.59M/s, 0h56m to go 221M resilvered, 0.99% done config: NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c7t0d0 ONLINE 0 0 0 c7t2d0 DEGRADED 0 0 0 (resilvering)
池必须存在于磁盘分片或被镜像的磁盘分片上。如果在 beadm 操作期间尝试使用不支持的池配置,您将会看到类似如下的消息:
ERROR: ZFS pool name does not support boot environments
在基于 x86 的系统上,磁盘必须包含 Oracle Solaris fdisk 分区。Oracle Solaris fdisk 分区是安装基于 x86 的系统时自动创建的。有关 fdisk 分区的更多信息,请参见《Oracle Solaris 11.1 管理:设备和文件系统》中的"创建 fdisk 分区指南"。
有关创建 ZFS 根池的更多常规信息,请参见ZFS 存储池创建做法。
ZFS 根池磁盘和引导管理摘要如下所述:
Oracle Solaris 10 和 Oracle Solaris 11
SPARC:(OBP) PROM 需要带有 SMI (VTOC) 标签的根池磁盘。
SPARC:如果使用 zpool replace 替换根池磁盘,则应手动应用引导块。
# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t0d0s0
SPARC 和 x86:通过使用 zpool attach 附加根池磁盘来创建镜像根池时,需要使用分片语法。
# zpool attach rpool c0t5000CCA03C5A5314d0s0 c0t5000CCA03C5A5340d0s0
如果尝试将带有 EFI 标签的磁盘附加到需要 SMI (VTOC) 标签的根池磁盘,则需要先手动为其重新设置标签,才可以附加。
# format -L vtoc -d c1t0d0 Searching for disks...done selecting c1t0d0 [disk formatted] c1t0d0 is labeled with VTOC successfully.
重新标记正确的磁盘时请特别小心,因为该命令不执行错误检查。如果在打算用于根池的磁盘上强制标记 SMI (VTOC) 标签,则将应用缺省分区表。这意味着缺省的 s0 分片大小可能太小。有关更改分区或分片大小的更多信息,请参见《Oracle Solaris 11.1 管理:设备和文件系统》中的"如何为磁盘设置标签"。
x86:GRUB 传统磁盘和根池磁盘均需要 SMI (VTOC) 标签。
x86:如果使用 zpool replace 替换根池磁盘,则应手动应用引导块。
# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t0d0s0
x86:根池磁盘必须小于 2 TB。
Oracle Solaris 11.1
SPARC:OBP 需要带有 SMI (VTOC) 标签的根池磁盘。
SPARC:如果使用 zpool replace 替换根池磁盘,则应手动应用引导块。
# bootadm install-bootloader
SPARC:通过使用 zpool attach 附加根池磁盘来创建镜像根池时,需要使用分片语法。
# zpool attach rpool c0t5000CCA03C5A5314d0s0 c0t5000CCA03C5A5340d0s0
x86:大多数情况下,GRUB 2 和根池磁盘均具有 EFI 标签。
x86:如果使用 zpool replace 替换根池磁盘,则应手动应用引导块。
# bootadm install-bootloader
x86:通过使用 zpool attach 附加根池磁盘来创建镜像根池时,需要使用整个磁盘语法。
# zpool attach rpool c0t5000CCA03C5A5314d0 c0t5000CCA03C5A5340d0
当前 Oracle Solaris 10 和 11 发行版
使用 zpool attach 命令自动应用引导块。