OCFS2 文件系统¶
OCFS2 是一个通用的基于范围的共享磁盘集群文件系统,与 ext3 有很多相似之处。它支持 64 位 inode 号,并具有自动扩展的元数据组,这也使其对非集群使用具有吸引力。
您需要安装 ocfs2-tools 包,以便至少获得“mount.ocfs2”和“ocfs2_hb_ctl”。
项目网页:http://ocfs2.wiki.kernel.org 工具 git 树:https://github.com/markfasheh/ocfs2-tools OCFS2 邮件列表:https://subspace.kernel.org/lists.linux.dev.html
所有代码版权归 2005 Oracle 所有,除非另有说明。
贡献者¶
大量代码取自 ext3 和其他项目。
作者按字母顺序排列
Joel Becker <joel.becker@oracle.com>
Zach Brown <zach.brown@oracle.com>
Mark Fasheh <mfasheh@suse.com>
Kurt Hackel <kurt.hackel@oracle.com>
Tao Ma <tao.ma@oracle.com>
Sunil Mushran <sunil.mushran@oracle.com>
Manish Singh <manish.singh@oracle.com>
Tiger Yang <tiger.yang@oracle.com>
警告¶
OCFS2 尚未支持的功能
目录更改通知 (F_NOTIFY)
分布式缓存 (F_SETLEASE/F_GETLEASE/break_lease)
挂载选项¶
OCFS2 支持以下挂载选项
(*) == 默认
barrier=1 |
启用/禁用 barriers。barrier=0 禁用它,barrier=1 启用它。 |
errors=remount-ro(*) |
在发生错误时,将文件系统重新挂载为只读。 |
errors=panic |
如果发生错误,则恐慌并停止机器。 |
intr (*) |
允许信号中断集群操作。 |
nointr |
不允许信号中断集群操作。 |
noatime |
不更新访问时间。 |
relatime(*) |
如果上次访问时间早于修改时间或更改时间,则更新访问时间。 |
strictatime |
始终更新访问时间,但最小更新间隔由 atime_quantum 指定。 |
atime_quantum=60(*) |
除非自上次更新以来已过去此秒数,否则 OCFS2 不会更新访问时间。设置为零始终更新访问时间。此选项需要与 strictatime 一起使用。 |
data=ordered (*) |
所有数据都强制直接输出到主文件系统,然后其元数据再提交到日志。 |
data=writeback |
不保留数据顺序,数据可能在其元数据提交到日志后写入主文件系统。 |
preferred_slot=0(*) |
在挂载期间,首先尝试使用此文件系统槽。如果它被另一个节点使用,将选择找到的第一个空闲槽。无效值将被忽略。 |
commit=nrsec (*) |
可以告诉 Ocfs2 每隔 ‘nrsec’ 秒同步其所有数据和元数据。默认值为 5 秒。这意味着如果断电,您将丢失最近 5 秒的工作量(但是,由于日志记录,您的文件系统不会损坏)。此默认值(或任何低值)会损害性能,但对数据安全有好处。将其设置为 0 将与保留默认值(5 秒)的效果相同。将其设置为非常大的值将提高性能。 |
localalloc=8(*) |
允许自定义本地分配大小(以 MB 为单位)。如果该值太大,文件系统会默默地将其恢复为默认值。 |
localflocks |
禁用集群感知 flock。 |
inode64 |
指示 Ocfs2 允许在文件系统中的任何位置创建 inode,包括那些将导致 inode 号占用超过 32 位有效位的位置。 |
user_xattr (*) |
启用扩展用户属性。 |
nouser_xattr |
禁用扩展用户属性。 |
acl |
启用 POSIX 访问控制列表支持。 |
noacl (*) |
禁用 POSIX 访问控制列表支持。 |
resv_level=2 (*) |
设置分配预留的激进程度。有效值介于 0(预留关闭)到 8(预留的最大空间)之间。 |
dir_resv_level= (*) |
默认情况下,目录预留将随文件预留一起缩放 - 用户很少需要更改此值。如果关闭分配预留,此选项将不起作用。 |
coherency=full (*) |
不允许并发 O_DIRECT 写入,将获取集群 inode 锁以强制其他节点删除缓存,因此即使对于 O_DIRECT 写入,也可以保证完整的集群一致性。 |
coherency=buffered |
允许节点之间没有 EX 锁的并发 O_DIRECT 写入,这可以获得高性能,但存在在其他节点上获取陈旧数据的风险。 |
journal_async_commit |
提交块可以写入磁盘,而无需等待描述符块。如果启用,则较旧的内核无法挂载设备。这将内部启用 ‘journal_checksum’。 |