本节介绍 Solaris 10 发行版中文件系统方面的新增功能。
Solaris 10 – 除了以下情况,所有 UFS 文件系统均缺省启用日志记录:
明确禁用了日志记录。
用于日志的文件系统空间不足。
在以前的 Solaris 发行版中,必须手动启用 UFS 日志记录。有关 UFS 日志记录的更多信息,请参见UFS 日志记录。
在此发行版中使用 UFS 日志记录时,请牢记以下问题:
确保具有足够的磁盘空间可用于一般系统需要,如用于用户和应用程序以及用于 UFS 日志记录。
如果没有足够的磁盘空间用于记录数据,则会显示以下类似消息:
# mount /dev/dsk/c0t4d0s0 /mnt /mnt: No space left on device Could not enable logging for /mnt on /dev/dsk/c0t4d0s0. # |
但是,文件系统仍然会挂载。例如:
# df -h /mnt Filesystem size used avail capacity Mounted on /dev/dsk/c0t4d0s0 142M 142M 0K 100% /mnt # |
通常为空的已启用日志记录的 UFS 文件系统会占用一些磁盘空间用于日志。
如果从以前的 Solaris 发行版升级到此 Solaris 发行版,即使 /etc/vfstab 文件中未指定 logging 选项,UFS 文件系统仍会启用日志记录。要禁用日志记录,请向 /etc/vfstab 文件中的 UFS 文件系统各项添加 nologging 选项。
此 Solaris 发行版包括 Sun 实现的 NFS 版本 4 分布式文件访问协议。
NFS 版本 4 将文件访问、文件锁定和挂载协议集成到一个统一的协议中,从而使穿越防火墙进行遍历更为容易,并提高了安全性。Solaris 实现的 NFS 版本 4 与 Kerberos V5 完全集成(也称作 SEAM),因此可以提供验证机制、完整性和保密性。使用 NFS 版本 4,还可在客户机和服务器之间协商要使用的安全特性。使用 NFS 4.0 版,服务器可以为不同的文件系统提供不同的安全特性。
有关 NFS 版本 4 功能的更多信息,请参见《系统管理指南:网络服务》中的“NFS 服务的新增功能”。
如果 CacheFS 客户机和 CacheFS 服务器运行的都是 NFS 版本 4,则文件不会再在前台文件系统中高速缓存。后台文件系统将提供所有文件访问权。 另外,由于前台文件系统中没有高速缓存任何文件,因此特定于 CacheFS 的挂载选项(该选项旨在影响前台文件系统)会被忽略。特定于 CacheFS 的挂载选项不适用于后台文件系统。
第一次在系统上配置 NFS 版本 4 时,控制台上将出现一条警告,指出高速缓存不再起作用。
如果要按照以前 Solaris 发行版中的方式实现 CacheFS 挂载,可在 CacheFS mount 命令中指定 NFS 版本 3。例如:
mount -F cachefs -o backfstype=nfs,cachedir=/local/mycache,vers=3 starbug:/docs /docs |
此 Solaris 发行版在运行 64 位 Solaris 内核的系统上提供对多 TB UFS 文件系统的支持。
以前,UFS 文件系统在 64 位系统和 32 位系统上的大小都仅限于 1 TB 左右。所有 UFS 文件系统命令和实用程序都已更新,可支持多 TB UFS 文件系统。
例如,ufsdump 命令已经更新,可以使用更大的块大小来转储大 UFS 文件系统:
# ufsdump 0f /dev/md/rdsk/d97 /dev/md/rdsk/d98 DUMP: Date of this level 0 dump: Tue Jan 07 14:23:36 2003 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/md/rdsk/d98 to /dev/md/rdsk/d97. DUMP: Mapping (Pass I) [regular files] DUMP: Mapping (Pass II) [directories] DUMP: Forcing larger tape block size (2048). DUMP: Writing 32 Kilobyte records DUMP: Estimated 4390629500 blocks (2143862.06MB). DUMP: Dumping (Pass III) [directories] DUMP: Dumping (Pass IV) [regular files] |
管理小于 1 TB 的 UFS 文件系统保持不变。小于 1 TB 的 UFS 文件系统和大于 1 TB 的文件系统之间不存在管理差异。
可以首先创建小于 1 TB 的 UFS 文件系统,然后使用 newfs -T 选项指定最终可以将其扩展为多 TB 文件系统。此选项可设置 inode 和段的密度针对多 TB 文件系统相应地进行伸缩。
如果在运行 32 位内核的系统上创建小于 1 TB 的 UFS 文件系统时使用 newfs -T 选项,则在 64 位内核下引导此文件系统时使用 growfs 命令可最终扩展此系统。有关更多信息,请参见newfs(1M)。
可以使用 fstyp -v 命令,通过检查 magic 列中的以下值确定 UFS 文件系统是否具有多 TB 支持:
# /usr/sbin/fstyp -v /dev/md/rdsk/d3 | head -5 ufs magic decade format dynamic time Fri May 21 11:10:10 2004 |
没有多 TB 支持的 UFS 文件系统会生成以下 fstyp 输出:
# /usr/sbin/fstyp -v /dev/md/rdsk/d0 | head -5 ufs magic 11954 format dynamic time Fri May 21 11:46:40 2004 |
可以使用 growfs 命令将 UFS 文件系统扩展为片或卷的大小,而不会丢失服务或数据。有关更多信息,请参见growfs(1M)。
新增的两项相关功能是:EFI 磁盘标号的多 TB 卷支持和 Solaris Volume Manager 的多 TB 卷支持。有关更多信息,请参见带有 EFI 磁盘标号的多 TB 磁盘支持和《Solaris Volume Manager 管理指南》。
多 TB UFS 文件系统包括以下功能:
提供创建最大大小为 16 TB 的 UFS 文件系统的能力。
提供创建小于 16 TB 的文件系统并且以后可以将其大小增至高达 16 TB 的能力。
可以在物理磁盘、Solaris Volume Manager 的逻辑卷和 Veritas 的 VxVM 逻辑卷上创建多 TB 文件系统。
多 TB 文件系统可从启用 UFS 日志记录而提高的性能中受益。多 TB 文件系统还可从日志记录的可用性中受益,因为启用日志记录时可能不必运行 fsck 命令。
为多 TB UFS 文件系统创建分区时,将用 EFI 磁盘标号自动标记磁盘。有关 EFI 磁盘标号的更多信息,请参见带有 EFI 磁盘标号的多 TB 磁盘支持。
通过在文件系统超过 512 GB 时创建多个后备存储文件,提供为多 TB 文件系统拍摄快照的能力。
多 TB UFS 文件系统的限制如下:
在 32 位系统上不支持此功能。
不能在运行 32 位 Solaris 内核的系统上挂载大于 1 TB 的文件系统。
不能在运行 64 位 Solaris 内核的系统上从大于 1 TB 的文件系统进行引导。此限制意味着不能将根 (/) 文件系统放置在多 TB 文件系统上。
不支持大于 1 TB 的单独文件。
每 TB 的 UFS 文件系统的最大文件数为 1 百万个文件。例如,4 TB 文件系统可以包含 4 百万个文件。
此限制旨在减少使用 fsck 命令检查文件系统所需的时间。
可以对多 TB UFS 文件系统设置的最高配额是 2 TB 的 1024 字节块。
请参见以下内容,以了解有关使用多 TB UFS 文件系统的逐步说明。
多 TB UFS 任务 |
更多信息 |
---|---|
创建多 TB UFS 文件系统 | |
创建多 TB UFS 快照 | |
对多 TB UFS 问题进行疑难解答 |
x86 系统上的挂载输出可能包括 libc_hwcap 库的回送挂载,即 libc 的硬件优化实现。 此 libc 实现旨在优化 32 位应用程序的性能。
此回送挂载不需要进行管理并且不会占用磁盘空间。