该文件系统增强功能是 Solaris 10 6/06 发行版中新增的功能。
此 Solaris 更新发行版中包括 Solaris ZFS,它是一个全新的 128 位文件系统。Solaris ZFS 提供了简单的管理、事务性语义、端对端的数据完整性以及无限制的可伸缩性。Solaris ZFS 并不是对现有技术的改进,而是一种全新的数据管理方法。
Solaris ZFS 采用池存储模型,完全摒弃了卷的概念。这样,Solaris ZFS 便消除了相关的分区管理、置备和文件系统扩展等一系列问题。成千上万的文件系统都可以使用公用存储池。每个文件系统只占用实际所需的空间。存储池中所有设备的 I/O 带宽组合对所有文件系统都始终可用。
所有操作都是“写复制 (copy-on-write, COW)”事务,所以盘上 (on-disk) 始终保持有效状态。每个块都有一个校验和,从而防止出现无提示数据破坏。另外,在复制配置下,数据具有自我修复能力。此功能意味着,如果一个副本损坏,Solaris ZFS 可以检测到损坏的副本并使用另外一个副本修复已损坏的副本。
对系统管理员来说,Solaris ZFS 相对传统的文件系统最大的改进是使管理变得简单。
Solaris ZFS 只需使用一个命令就可以设置一个镜像的存储池和文件系统。例如:
# zpool create home mirror c0t1d0 c1t2d0 |
上述命令创建了名为 home 的镜像存储池和名为 home 的单一文件系统。该文件系统挂载在 /home 下。
利用 Solaris ZFS,您可以使用整个磁盘而不是分区来创建存储池。
您可以使用 /home 文件系统分层结构在 /home 下创建任意数量的文件系统。例如:
# zfs create home/user1 |
有关更多信息,请参见 zpool(1M) 和 zfs(1M) 手册页。
此外,Solaris ZFS 还提供以下管理功能:
备份和恢复功能
设备管理支持
持久性快照和克隆功能
可为文件系统设置配额
基于 RBAC 的存取控制
为文件系统预留存储池空间
支持安装了区域 (zone) 的 Solaris 系统
有关更多信息,请参见《Solaris ZFS 管理指南》。
Solaris 10 6/06 发行版中包括基于 Web 的 Solaris ZFS 管理工具,可以利用该工具来执行您通常在 ZFS 命令行界面中执行的大多数管理任务。您可以使用 Solaris ZFS 管理控制台执行以下管理任务:
创建新的存储池
向现有存储池添加容量
将存储池移动(导出)到其他系统
导入以前导出的存储池使其在另一个系统中可用
查看存储池的信息
创建文件系统
创建卷
捕获文件系统或卷的快照
将文件系统回滚到前一快照
您可以通过安全的 Web 浏览器在下面的 URL 处访问 Solaris ZFS 管理控制台:
https://system-name:6789 |
如果键入了正确的 URL,但无法访问 Solaris ZFS 管理控制台,可能是服务器未启动。要启动服务器,请运行以下命令:
# /usr/sbin/smcwebserver start |
如果希望服务器在系统引导时自动启动,请运行以下命令:
# /usr/sbin/smcwebserver enable |
不能使用 Solaris Management Console (smc) 管理 ZFS 存储池或文件系统。
Solaris Zones 分区技术支持 Solaris ZFS 组件,如将 Solaris ZFS 文件系统和存储池添加到区域。
例如,zonecfg 命令中的文件系统资源类型已做如下增强:
zonecfg:myzone> add fs zonecfg:myzone:fs> set type=zfs zonecfg:myzone:fs> set dir=/export/share zonecfg:myzone:fs> set special=tank/home zonecfg:myzone:fs> end |
有关更多信息,请参见 zonecfg(1M) 手册页和 《Solaris ZFS 管理指南》。
此发行版支持下列 Solaris 安装工具:
Solaris 自定义 JumpstartTM -Jumpstart 配置文件中不能包括 Solaris ZFS 文件系统。但是,您可以从 Solaris ZFS 存储池运行以下脚本来设置安装服务器或安装客户机:
setup_install_server
add_install_server
add_install_client
Solaris Live Upgrade-保留初始引导环境并跨 Solaris ZFS 存储池传输至新的环境中。目前,Solaris ZFS 不能用作可引导的根文件系统。所以,现有的 Solaris ZFS 文件系统未复制到引导环境 (boot environment, BE) 中。
Solaris Initial Install-初始安装过程中,不识别 Solaris ZFS 文件系统。但是,如果不指定任何包含安装时所要使用的 Solaris ZFS 存储池的磁盘设备,您应该能够在安装后通过使用 zpool import 命令恢复存储池。有关更多信息,请参见 zpool(1M) 手册页。
与大多数重新安装情形相似,在使用初始安装选项继续执行安装操作前,您应该先备份 Solaris ZFS 文件。
Solaris Upgrade-将保留 Solaris ZFS 文件系统和存储池。
Solaris ZFS 使用一种新的 ACL 模型。Solaris OS 以前的版本仅支持主要基于 POSIX ACL 草案规范的 ACL 模型。基于 POSIX 草案的 ACL 用来保护 UFS 文件。一种基于 NFSv4 规范的新模型用于保护 Solaris ZFS 文件。
此新 ACL 模型具有以下特点:
基于 NFSv4 规范,并与 NT 样式的 ACL 类似
提供一组更细粒度的访问权限
使用 chmod 和 ls 命令而不是 setfacl 和 getfacl 命令设置并显示 ACL
提供更为丰富的继承语义,以指定如何将目录的访问权限应用到子目录,等等。
在最近修订的 chmod(1) 手册页中添加了许多新示例,以说明与 Solaris ZFS 一起使用时的用法。acl(5) 手册页中包含对此新的 ACL 模型的概述。此外,《Solaris ZFS 管理指南》中提供了大量使用 ACL 保护 ZFS 文件的示例。