JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris ZFS 管理指南     Oracle Solaris 10 1/13 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  Oracle Solaris ZFS 文件系统(介绍)

2.  Oracle Solaris ZFS 入门

3.  管理 Oracle Solaris ZFS 存储池

4.  安装和引导 Oracle Solaris ZFS 根文件系统

安装和引导 Oracle Solaris ZFS 根文件系统(概述)

ZFS 安装功能

支持 ZFS 所要满足的 Oracle Solaris 安装要求和 Oracle Solaris Live Upgrade 要求

Oracle Solaris 发行版要求

ZFS 根池的一般要求

ZFS 根池的磁盘空间要求

ZFS 根池配置要求

安装 ZFS 根文件系统(Oracle Solaris 初始安装)

如何创建镜像 ZFS 根池(安装后)

安装 ZFS 根文件系统(Oracle Solaris Flash 归档文件安装)

安装 ZFS 根文件系统(JumpStart 安装)

ZFS 的 JumpStart 关键字

ZFS 的 JumpStart 配置文件示例

ZFS 的 JumpStart 问题

迁移到 ZFS 根文件系统或更新 ZFS 根文件系统 (Live Upgrade)

Live Upgrade 的 ZFS 迁移问题

使用 Live Upgrade 迁移或更新 ZFS 根文件系统(不具有区域)

使用 Live Upgrade 迁移或升级具有区域的系统 (Solaris 10 10/08)

如何将 UFS 上具有区域根的 UFS 根文件系统迁移到 ZFS 根文件系统 (Solaris 10 10/08)

如何配置 ZFS 上具有区域根的 ZFS 根文件系统 (Solaris 10 10/08)

如何升级或修补 ZFS 上具有区域根的 ZFS 根文件系统 (Solaris 10 10/08)

使用 Oracle Solaris Live Upgrade 迁移或升级具有区域的系统(最低 Solaris 10 5/09)

支持的 ZFS 和区域根配置信息(最低 Solaris 10 5/09)

如何创建具有 ZFS 根文件系统和区域根的 ZFS BE(最低 Solaris 10 5/09)

如何升级或修补具有区域根的 ZFS 根文件系统(最低 Solaris 10 5/09)

如何将具有区域根的 UFS 根文件系统迁移到 ZFS 根文件系统(最低 Solaris 10 5/09)

管理 ZFS 交换和转储设备

调整 ZFS 交换设备和转储设备的大小

定制 ZFS 交换卷和转储卷

ZFS 转储设备故障排除

从 ZFS 根文件系统引导

从镜像 ZFS 根池中的备用磁盘引导

SPARC:从 ZFS 根文件系统引导

x86:从 ZFS 根文件系统引导

解决妨碍成功引导的 ZFS 挂载点问题 (Solaris 10 10/08)

如何解决 ZFS 挂载点问题

在 ZFS 根环境中进行引导以恢复系统

如何引导 ZFS 故障安全模式

如何从备用介质引导 ZFS

恢复 ZFS 根池或根池快照

如何替换 ZFS 根池中的磁盘

如何创建根池快照

如何重新创建 ZFS 根池和恢复根池快照

如何从故障安全引导回滚根池快照

5.  管理 Oracle Solaris ZFS 文件系统

6.  使用 Oracle Solaris ZFS 快照和克隆

7.  使用 ACL 和属性保护 Oracle Solaris ZFS 文件

8.  Oracle Solaris ZFS 委托管理

9.  Oracle Solaris ZFS 高级主题

10.  Oracle Solaris ZFS 故障排除和池恢复

11.  建议的 Oracle Solaris ZFS 做法

A.  Oracle Solaris ZFS 版本说明

索引

安装 ZFS 根文件系统(Oracle Solaris 初始安装)

在本 Oracle Solaris 发行版中,您可以使用以下方法执行初始安装:

在开始初始安装以创建 ZFS 存储池之前,请查看支持 ZFS 所要满足的 Oracle Solaris 安装要求和 Oracle Solaris Live Upgrade 要求

如果要在完成 ZFS 根文件系统的初始安装后配置区域,并且计划修补或升级系统,请参见使用 Live Upgrade 迁移或升级具有区域的系统 (Solaris 10 10/08)使用 Oracle Solaris Live Upgrade 迁移或升级具有区域的系统(最低 Solaris 10 5/09)

如果系统上已经具有 ZFS 存储池,则会通过以下消息告知。然而,这些池保持不动,除非您选择现有池中的磁盘来创建新存储池。

There are existing ZFS pools available on this system.  However, they can only be upgraded 
using the Live Upgrade tools.  The following screens will only allow you to install a ZFS root system, 
not upgrade one.

注意

注意 - 如果选择将现有池中的任何磁盘用于新池,则现有池将被销毁。


示例 4-1 可引导的 ZFS 根文件系统的初始安装

交互式文本安装过程与先前的 Oracle Solaris 发行版中的过程基本相同,区别在于系统会提示您创建 UFS 还是 ZFS 根文件系统。在此发行版中,缺省文件系统仍为 UFS。如果选择 ZFS 根文件系统,系统会提示您创建 ZFS 存储池。安装 ZFS 根文件系统的步骤如下:

  1. 插入 Oracle Solaris 安装介质或从安装服务器引导系统,然后选择交互式文本安装方法创建可引导的 ZFS 根文件系统。

    • SPARC:对于 Oracle Solaris 安装 DVD,请使用以下语法:

      ok boot cdrom - text
    • SPARC:从网络引导时,请使用以下语法:

      ok boot net - text
    • x86:选择文本模式安装方法。

    您还可以使用以下方法创建要安装的 ZFS Flash 归档文件:

    • JumpStart 安装。有关更多信息,请参见示例 4-2

    • 初始安装。有关更多信息,请参见示例 4-3

    您可以执行标准升级来升级现有的可引导 ZFS 文件系统,但不能使用此选项创建新的可引导 ZFS 文件系统。从 Solaris 10 10/08 发行版开始,只要已安装 Solaris 10 10/08 或以上的发行版,就可以将 UFS 根文件系统迁移到 ZFS 根文件系统。有关迁移到 ZFS 根文件系统的更多信息,请参见迁移到 ZFS 根文件系统或更新 ZFS 根文件系统 (Live Upgrade)

  2. 要创建 ZFS 根文件系统,请选择 ZFS 选项。例如:

    Choose Filesystem Type
    
      Select the filesystem to use for your Solaris installation
    
    
                [ ] UFS
                [X] ZFS
  3. 选择要安装的软件后,系统会提示您选择要用于创建 ZFS 存储池的磁盘。该屏幕与先前发行版中的屏幕类似。

    Select Disks
      On this screen you must select the disks for installing Solaris software.
      Start by looking at the Suggested Minimum field; this value is the
      approximate space needed to install the software you've selected. For ZFS,
      multiple disks will be configured as mirrors, so the disk you choose, or the
      slice within the disk must exceed the Suggested Minimum value.
      NOTE: ** denotes current boot disk
    
      Disk Device                                              Available Space
      =============================================================================
      [X] ** c1t0d0                                           139989 MB  (F4 to edit
    ) [ ]    c1t1d0                                           139989 MB
      [ ]    c1t2d0                                           139989 MB
      [ ]    c1t3d0                                           139989 MB
      [ ]    c2t0d0                                           139989 MB
      [ ]    c2t1d0                                           139989 MB
      [ ]    c2t2d0                                           139989 MB
      [ ]    c2t3d0                                           139989 MB
                                      Maximum Root Size: 139989 MB
                                      Suggested Minimum:  11102 MB

    您可以选择要用于 ZFS 根池的一个或多个磁盘。如果选择两个磁盘,则会为根池设置镜像双磁盘配置。双磁盘或三磁盘镜像池为最佳。如果您有八个磁盘并选择了所有磁盘,则这八个磁盘将作为一个大的镜像用于根池。此配置并非最佳。还可以选择在完成初始安装后创建镜像根池。不支持对根池的 RAID-Z 池配置。

    有关配置 ZFS 存储池的更多信息,请参见ZFS 存储池的复制功能

  4. 要选择两个磁盘来创建镜像的根池,请使用光标控制键选择第二个磁盘。

    在以下示例中,选择了 c1t0d0c1t1d0 用作根池磁盘。这两个磁盘都必须具有 SMI 标签和分片 0。如果磁盘没有 SMI 标签或不包含分片,则必须退出安装程序,使用 format 实用程序重新对磁盘设置标签和分区,然后重新启动安装程序。

    Select Disks
      On this screen you must select the disks for installing Solaris software.
      Start by looking at the Suggested Minimum field; this value is the
      approximate space needed to install the software you've selected. For ZFS,
      multiple disks will be configured as mirrors, so the disk you choose, or the
      slice within the disk must exceed the Suggested Minimum value.
      NOTE: ** denotes current boot disk
    
      Disk Device                                              Available Space
      =============================================================================
      [X] ** c1t0d0                                           139989 MB  (F4 to edit
    ) [X]    c1t1d0                                           139989 MB
      [ ]    c1t2d0                                           139989 MB
      [ ]    c1t3d0                                           139989 MB
      [ ]    c2t0d0                                           139989 MB
      [ ]    c2t1d0                                           139989 MB
      [ ]    c2t2d0                                           139989 MB
      [ ]    c2t3d0                                           139989 MB
    
                                      Maximum Root Size: 139989 MB
                                      Suggested Minimum:  11102 MB

    如果 "Available Space"(可用空间)栏显示 0 MB,则该磁盘很有可能具有 EFI 标签。如果您想使用带 EFI 标签的磁盘,则必须退出安装程序,使用 format -e 命令以 SMI 标签重新标记该磁盘,然后重新启动安装程序。

    如果在安装期间没有创建镜像根池,您可以在安装之后轻松创建。有关信息,请参见如何创建镜像 ZFS 根池(安装后)

    为 ZFS 存储池选择了一个或多个磁盘后,将出现一个屏幕,显示类似如下的内容:

    Configure ZFS Settings
      Specify the name of the pool to be created from the disk(s) you have chosen.
      Also specify the name of the dataset to be created within the pool that is
      to be used as the root directory for the filesystem.
    
    
                  ZFS Pool Name: rpool
          ZFS Root Dataset Name: s10nameBE
          ZFS Pool Size (in MB): 139990
      Size of Swap Area (in MB): 4096
      Size of Dump Area (in MB): 1024
            (Pool size must be between 7006 MB and 139990 MB)
    
                             [X] Keep / and /var combined
                             [ ] Put /var on a separate dataset
  5. 在此屏幕中,您可以通过在各项之间移动光标控制键并使用新值替换缺省值来更改 ZFS 池名称、数据集名称、池大小以及交换和转储设备大小(可选操作)。或者,您可以接受缺省值。另外,您可以修改创建和挂载 /var 文件系统的方式。

    在此示例中,根数据集名称更改为 zfsBE

                  ZFS Pool Name: rpool
          ZFS Root Dataset Name: zfsBE
          ZFS Pool Size (in MB): 139990
      Size of Swap Area (in MB): 4096
      Size of Dump Area (in MB): 1024
            (Pool size must be between 7006 MB and 139990 MB)
  6. 在此最后的安装屏幕中,您可以更改安装配置文件(可选操作)。例如:

    Profile
    
      The information shown below is your profile for installing Solaris software.
      It reflects the choices you've made on previous screens.
    
      ============================================================================
    
                    Installation Option: Initial
                            Boot Device: c1t0d0
                  Root File System Type: ZFS
                        Client Services: None
    
                                Regions: North America
                          System Locale: C ( C )
    
                               Software: Solaris 10, Entire Distribution
                              Pool Name: rpool
                  Boot Environment Name: zfsBE
                              Pool Size: 139990 MB
                        Devices in Pool: c1t0d0
                                         c1t1d0
  7. 安装完成后,查看生成的 ZFS 存储池和文件系统信息。例如:

    # zpool status
      pool: rpool
     state: ONLINE
     scrub: none requested
    config:
    
            NAME          STATE     READ WRITE CKSUM
            rpool         ONLINE       0     0     0
              mirror-0    ONLINE       0     0     0
                c1t0d0s0  ONLINE       0     0     0
                c1t1d0s0  ONLINE       0     0     0
    
    errors: No known data errors
    # zfs list
    NAME                USED  AVAIL  REFER  MOUNTPOINT
    rpool              10.1G   124G   106K  /rpool
    rpool/ROOT         5.01G   124G    31K  legacy
    rpool/ROOT/zfsBE   5.01G   124G  5.01G  /
    rpool/dump         1.00G   124G  1.00G  -
    rpool/export         63K   124G    32K  /export
    rpool/export/home    31K   124G    31K  /export/home
    rpool/swap         4.13G   124G  4.00G  -

    zfs list 输出样例标识了根池组件,例如 rpool/ROOT 目录,该目录在缺省情况下不可访问。

  8. 要在同一存储池中创建其他 ZFS 引导环境 (Boot Environment, BE),可以使用 lucreate 命令。

    在以下示例中,创建了名为 zfs2BE 的新 BE。当前 BE 命名为 zfsBE,如 zfs list 输出所示。但是,lustatus 输出不会确认当前 BE,直到新 BE 创建完成。

    # lustatus
    ERROR: No boot environments are configured on this system
    ERROR: cannot determine list of all boot environment names

    如果在同一池中创建新 ZFS BE,请使用类似如下的语法:

    # lucreate -n zfs2BE
    INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
    Current boot environment is named <zfsBE>.
    Creating initial configuration for primary boot environment <zfsBE>.
    The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
    PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
    Comparing source boot environment <zfsBE> file systems with the file 
    system(s) you specified for the new boot environment. Determining which 
    file systems should be in the new boot environment.
    Updating boot environment description database on all BEs.
    Updating system configuration files.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.

    在同一池内创建 ZFS BE 时,使用 ZFS 克隆和快照功能可立即创建 BE。有关使用 Live Upgrade 进行 ZFS 根迁移的更多详细信息,请参见迁移到 ZFS 根文件系统或更新 ZFS 根文件系统 (Live Upgrade)

  9. 接下来,验证新引导环境。例如:

    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -        
    # zfs list
    NAME                      USED  AVAIL  REFER  MOUNTPOINT
    rpool                    10.1G   124G   106K  /rpool
    rpool/ROOT               5.00G   124G    31K  legacy
    rpool/ROOT/zfs2BE         218K   124G  5.00G  /
    rpool/ROOT/zfsBE         5.00G   124G  5.00G  /
    rpool/ROOT/zfsBE@zfs2BE   104K      -  5.00G  -
    rpool/dump               1.00G   124G  1.00G  -
    rpool/export               63K   124G    32K  /export
    rpool/export/home          31K   124G    31K  /export/home
    rpool/swap               4.13G   124G  4.00G  -
  10. 要从备用 BE 引导,请使用 luactivate 命令。

    • SPARC-如果引导设备包含 ZFS 存储池,请使用 boot -L 命令确定可用的 BE。

      例如,在基于 SPARC 的系统上,可使用 boot - L 命令显示可用的 BE 列表。要从新 BE zfs2BE 引导,请选择选项 2。然后,键入显示的 boot -Z 命令。

      ok boot -L
      Executing last command: boot -L                                       
      Boot device: /pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/disk@0  File and args: -L
      1 zfsBE
      2 zfs2BE
      Select environment to boot: [ 1 - 2 ]: 2
      
      To boot the selected entry, invoke:
      boot [<root-device>] -Z rpool/ROOT/zfs2BE
      ok boot -Z rpool/ROOT/zfs2BE
    • x86-通过 GRUB 菜单确定要引导的 BE。

有关引导 ZFS 文件系统的更多信息,请参见从 ZFS 根文件系统引导

如何创建镜像 ZFS 根池(安装后)

如果在安装期间没有创建 ZFS 镜像根池,可以在安装之后轻松创建。

有关替换根池中的磁盘的信息,请参见如何替换 ZFS 根池中的磁盘

  1. 显示当前根池的状态。
    # zpool status rpool
      pool: rpool
     state: ONLINE
     scrub: none requested
    config:
    
            NAME        STATE     READ WRITE CKSUM
            rpool       ONLINE       0     0     0
              c1t0d0s0  ONLINE       0     0     0
    
    errors: No known data errors
  2. 附加另一个磁盘,以配置镜像根池。
    # zpool attach rpool c1t0d0s0 c1t1d0s0
    Make sure to wait until resilver is done before rebooting.
  3. 查看根池状态,确认重新同步已完成。
    # zpool status rpool
      pool: rpool
     state: ONLINE
    status: One or more devices is currently being resilvered.  The pool will
            continue to function, possibly in a degraded state.
    action: Wait for the resilver to complete.
     scrub: resilver in progress for 0h1m, 24.26% done, 0h3m to go
    config:
    
            NAME          STATE     READ WRITE CKSUM
            rpool         ONLINE       0     0     0
              mirror-0    ONLINE       0     0     0
                c1t0d0s0  ONLINE       0     0     0
                c1t1d0s0  ONLINE       0     0     0  3.18G resilvered
    
    errors: No known data errors

    在前面的输出中,重新同步过程未完成。当您看到类似如下的消息时,说明重新同步已完成。

    resilvered 10.0G in 0h10m with 0 errors on Thu Nov 15 12:48:33 2012
  4. 验证您是否可以从第二个磁盘成功引导。
  5. 如有必要,设置系统自动从新磁盘引导。
    • SPARC-在 SPARC 引导 PROM 下使用 eeprom 命令或 setenv 命令重置缺省引导设备。

    • x86-重新配置系统 BIOS。