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 文件系统(介绍)

ZFS 中的新增功能

ZFS 命令使用方面的增强功能

ZFS 快照增强功能

改进的 aclmode 属性

Oracle Solaris ZFS 安装功能

ZFS 发送流增强功能

ZFS 快照差异 (zfs diff)

ZFS 存储池恢复和性能增强功能

ZFS 同步行为调优

改进了 ZFS 池消息

ZFS ACL 互操作性增强功能

分割镜像 ZFS 存储池 (zpool split)

新 ZFS 系统进程

ZFS 设备替换增强功能

ZFS 和 Flash 安装支持

ZFS 环境中的区域迁移

ZFS 安装和引导支持

基于 Web 的 ZFS 管理

什么是 Oracle Solaris ZFS?

ZFS 池存储

事务性语义

校验和与自我修复数据

独一无二的可伸缩性

ZFS 快照

简化的管理

ZFS 术语

ZFS 组件命名要求

Oracle Solaris ZFS 与传统文件系统之间的差别

ZFS 文件系统粒度

ZFS 磁盘空间记帐

空间不足行为

挂载 ZFS 文件系统

传统卷管理

基于 NFSv4 的 Solaris ACL 模型

2.  Oracle Solaris ZFS 入门

3.  管理 Oracle Solaris ZFS 存储池

4.  安装和引导 Oracle Solaris 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 中的新增功能

本节概述了 ZFS 文件系统的新增功能。

ZFS 命令使用方面的增强功能

Oracle Solaris 10 1/13zfszpool 命令具有 help 子命令,可用来提供有关 zfszpool 子命令及其所支持选项的更多信息。例如:

# zfs help
The following commands are supported:
allow       clone       create      destroy     diff        get         
groupspace  help        hold        holds       inherit     list        
mount       promote     receive     release     rename      rollback    
send        set         share       snapshot    unallow     unmount     
unshare     upgrade     userspace   
For more info, run: zfs help <command>
# zfs help create
usage:
        create [-p] [-o property=value] ... <filesystem>
        create [-ps] [-b blocksize] [-o property=value] ... -V <size> <volume>
# zpool help
The following commands are supported:
add      attach   clear    create   destroy  detach   export   get      
help     history  import   iostat   list     offline  online   remove   
replace  scrub    set      split    status   upgrade  
For more info, run: zpool help <command>
# zpool help attach
usage:
        attach [-f] <pool> <device> <new-device>

有关更多信息,请参见 zfs(1M)zpool(1M)

ZFS 快照增强功能

Oracle Solaris 10 1/13:此发行版包含以下 ZFS 快照增强功能:

有关创建 ZFS 快照的更多信息,请参见第 6 章

改进的 aclmode 属性

Oracle Solaris 10 1/13:每当在 chmod 操作期间修改文件的 ACL 权限时,aclmode 属性即会修改访问控制列表 (Access Control List, ACL) 的行为。已重新引入了 aclmode 属性,它具有以下属性值:

有关更多信息,请参见示例 7-13

Oracle Solaris ZFS 安装功能

Oracle Solaris 10 8/11:在此发行版中,提供了以下新增安装功能:

ZFS 发送流增强功能

Oracle Solaris 10 8/11:在此发行版中,您可以设置在快照流中发送和接收的文件系统属性。通过这些增强功能,可以灵活地将发送流中的文件系统属性应用到接收方文件系统,或确定接收时是否应忽略本地文件系统属性(如 mountpoint 属性值)。

有关更多信息,请参见向 ZFS 快照流应用不同的属性值

ZFS 快照差异 (zfs diff)

Oracle Solaris 10 8/11:在此发行版中,您可以使用 zfs diff 命令确定 ZFS 快照的差异。

例如,假定创建了以下两个快照:

$ ls /tank/cindy
fileA
$ zfs snapshot tank/cindy@0913
$ ls /tank/cindy
fileA  fileB
$ zfs snapshot tank/cindy@0914

例如,要确定两个快照之间的差异,请使用类似以下的语法:

$ zfs diff tank/cindy@0913 tank/cindy@0914
M       /tank/cindy/
+       /tank/cindy/fileB

在输出中,M 表示该目录已经过修改。+ 表示 fileB 存在于较新的快照中。

有关更多信息,请参见确定 ZFS 快照的差异 (zfs diff)

ZFS 存储池恢复和性能增强功能

Oracle Solaris 10 8/11:在此发行版中,提供了以下新增的 ZFS 存储池功能:

ZFS 同步行为调优

Solaris 10 8/11:在此发行版中,您可以使用 sync 属性确定 ZFS 文件系统的同步行为。

缺省同步行为是将所有同步文件系统事务写入意图日志,并刷新所有设备以确保数据稳定。建议不要禁用缺省同步行为。依赖于同步支持的应用程序可能会受影响,并可能发生数据丢失的情况。

sync 属性可以在创建文件系统之前或之后设置。无论何种情况,属性值都将立即生效。例如:

# zfs set sync=always tank/neil

在包含 sync 属性的 Oracle Solaris 发行版中,zil_disable 参数不再可用。

有关更多信息,请参见表 5-1

改进了 ZFS 池消息

Oracle Solaris 10 8/11:在此发行版中,您可以使用 -T 选项提供时间间隔和计数值,使 zpool listzpool status 命令显示额外信息。

此外,zpool status 命令还提供更多的池清理和重新同步信息,如下所示:

以下语法使用时间间隔和计数选项显示正在进行的池重新同步的信息。您可以使用 -T d 值以标准日期格式显示信息,或使用 -T u 以内部格式显示信息。

# zpool status -T d tank 3 2
Wed Nov 14 15:44:34 MST 2012
  pool: tank
 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.
  scan: resilver in progress since Wed Nov 14 15:44:34 2012
    2.96G scanned out of 4.19G at 189M/s, 0h0m to go
    1.48G resilvered, 70.60% done
config:

        NAME                       STATE     READ WRITE CKSUM
        tank                       DEGRADED     0     0     0
          mirror-0                 ONLINE       0     0     0
            c0t5000C500335F95E3d0  ONLINE       0     0     0
            c0t5000C500335F907Fd0  ONLINE       0     0     0
          mirror-1                 DEGRADED     0     0     0
            c0t5000C500335BD117d0  ONLINE       0     0     0
            c0t5000C500335DC60Fd0  DEGRADED     0     0     0  (resilvering)

errors: No known data errors

ZFS ACL 互操作性增强功能

Oracle Solaris 10 8/11:在此发行版中,提供了以下 ACL 增强功能:

有关更多信息,请参见第 7 章

分割镜像 ZFS 存储池 (zpool split)

Oracle Solaris 10 9/10:在此发行版中,您可以使用 zpool split 命令分割镜像的存储池,从原镜像池中分离一个或多个磁盘,创建另一个完全相同的池。

有关更多信息,请参见通过分割镜像 ZFS 存储池创建新池

新 ZFS 系统进程

Oracle Solaris 10 9/10:在此发行版中,每个 ZFS 存储池都有一个关联的进程 zpool-poolname。此进程中的线程是用来处理与池相关的 I/O 任务(如压缩和校验和验证)的池 I/O 处理线程。此进程的作用是使各存储池的 CPU 利用情况具有可见性。

使用 psprstat 命令可以查看有关这些运行进程的信息。这些进程仅在全局区域中可用。有关更多信息,请参见 SDC(7)

ZFS 设备替换增强功能

Oracle Solaris 10 9/10:在此发行版中,使用较大磁盘替换池中的磁盘时会提供系统事件或 sysevent。ZFS 的功能已得到增强,可以识别这些事件,并根据磁盘的新大小调整池,具体取决于 autoexpand 属性的设置。可以使用 autoexpand 池属性允许或禁止在较大磁盘替换了较小磁盘时进行自动池扩展。

这些增强功能使您可以增大池的大小,而不必导出和导入池或重新引导系统。

例如,对 tank 池启用自动 LUN 扩展功能。

# zpool set autoexpand=on tank

或者,可以在启用 autoexpand 属性的情况下创建池。

# zpool create -o autoexpand=on tank c1t13d0

缺省情况下,autoexpand 属性是禁用的,以便您可以决定,当较大磁盘替换较小磁盘时是否要扩展池的大小。

使用 zpool online - e 命令也可以扩展池的大小。例如:

# zpool online -e tank c1t6d0

或者,您可以在附加了较大磁盘或使其变为可用之后使用 zpool replace 命令重置 autoexpand 属性。例如,下例利用一个 8-GB 磁盘 (c0t0d0) 创建了一个池。8-GB 磁盘被一个 16-GB 磁盘 (c1t13d0) 替换,但直到启用 autoexpand 属性之后,池大小才会扩展。

# zpool create pool c0t0d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace pool c0t0d0 c1t13d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool set autoexpand=on pool
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   16.8G   91.5K  16.8G    0%  ONLINE  -

另一种不启用 autoexpand 属性即可扩展磁盘的方法是使用 zpool online -e 命令,即使设备已经处于联机状态。例如:

# zpool create tank c0t0d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace tank c0t0d0 c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool online -e tank c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   16.8G    90K  16.8G     0%  ONLINE  -

此发行版中的其他设备替换增强功能包括:

有关替换设备的更多信息,请参见替换存储池中的设备

ZFS 和 Flash 安装支持

Solaris 10 10/09:在此发行版中,您可以设置 JumpStart 配置文件来标识 ZFS 根池的 Flash 归档文件。有关更多信息,请参见安装 ZFS 根文件系统(Oracle Solaris Flash 归档文件安装)

ZFS 环境中的区域迁移

Solaris 10 5/09:此发行版扩展了以下支持:使用 Oracle Solaris Live Upgrade 在 ZFS 环境中迁移区域。有关更多信息,请参见使用 Oracle Solaris Live Upgrade 迁移或升级具有区域的系统(最低 Solaris 10 5/09)

有关此发行版的已知问题列表,请参见《Solaris 5 10/09 发行说明》。

ZFS 安装和引导支持

Solaris 10 10/08:此发行版提供了安装并引导 ZFS 根文件系统的功能。您可以使用初始安装选项或 JumpStart 功能来安装 ZFS 根文件系统。或者,可以使用 Oracle Solaris Live Upgrade 功能将 UFS 根文件系统迁移到 ZFS 根文件系统。此外,还提供了对交换和转储设备的 ZFS 支持。有关更多信息,请参见第 4 章

有关此发行版的已知问题列表,请参见《Solaris 10 10/08 发行说明》。

基于 Web 的 ZFS 管理

Solaris 10 6/06 发行版:ZFS 管理控制台是一个基于 Web 的 ZFS 管理工具,允许您执行以下管理任务:

通过安全 Web 浏览器访问以下网址,可以访问 ZFS 管理控制台:

https://system-name:6789/zfs

如果键入了适当的 URL 但无法访问 ZFS 管理控制台,则表明可能未启动服务器。要启动服务器,请运行以下命令:

# /usr/sbin/smcwebserver start

如果希望服务器在系统引导时自动启动,请运行以下命令:

# /usr/sbin/smcwebserver enable

注 - 不能使用 Solaris Management Console (smc) 管理 ZFS 存储池或文件系统。