Commit | Line | Data |
---|---|---|
fa95e087 MCC |
1 | .. SPDX-License-Identifier: GPL-2.0 |
2 | ||
3 | ================ | |
ccd979bd | 4 | OCFS2 filesystem |
fa95e087 MCC |
5 | ================ |
6 | ||
ccd979bd MF |
7 | OCFS2 is a general purpose extent based shared disk cluster file |
8 | system with many similarities to ext3. It supports 64 bit inode | |
9 | numbers, and has automatically extending metadata groups which may | |
10 | also make it attractive for non-clustered use. | |
11 | ||
12 | You'll want to install the ocfs2-tools package in order to at least | |
13 | get "mount.ocfs2" and "ocfs2_hb_ctl". | |
14 | ||
01945fa2 MF |
15 | Project web page: http://ocfs2.wiki.kernel.org |
16 | Tools git tree: https://github.com/markfasheh/ocfs2-tools | |
4510a5a9 | 17 | OCFS2 mailing lists: https://oss.oracle.com/projects/ocfs2/mailman/ |
ccd979bd MF |
18 | |
19 | All code copyright 2005 Oracle except when otherwise noted. | |
20 | ||
fa95e087 MCC |
21 | Credits |
22 | ======= | |
23 | ||
ccd979bd MF |
24 | Lots of code taken from ext3 and other projects. |
25 | ||
26 | Authors in alphabetical order: | |
fa95e087 MCC |
27 | |
28 | - Joel Becker <joel.becker@oracle.com> | |
29 | - Zach Brown <zach.brown@oracle.com> | |
30 | - Mark Fasheh <mfasheh@suse.com> | |
31 | - Kurt Hackel <kurt.hackel@oracle.com> | |
32 | - Tao Ma <tao.ma@oracle.com> | |
33 | - Sunil Mushran <sunil.mushran@oracle.com> | |
34 | - Manish Singh <manish.singh@oracle.com> | |
35 | - Tiger Yang <tiger.yang@oracle.com> | |
ccd979bd MF |
36 | |
37 | Caveats | |
38 | ======= | |
39 | Features which OCFS2 does not support yet: | |
fa95e087 | 40 | |
ccd979bd MF |
41 | - Directory change notification (F_NOTIFY) |
42 | - Distributed Caching (F_SETLEASE/F_GETLEASE/break_lease) | |
ccd979bd MF |
43 | |
44 | Mount options | |
45 | ============= | |
46 | ||
47 | OCFS2 supports the following mount options: | |
fa95e087 | 48 | |
ccd979bd MF |
49 | (*) == default |
50 | ||
fa95e087 | 51 | ======================= ======================================================== |
ccd979bd MF |
52 | barrier=1 This enables/disables barriers. barrier=0 disables it, |
53 | barrier=1 enables it. | |
54 | errors=remount-ro(*) Remount the filesystem read-only on an error. | |
55 | errors=panic Panic and halt the machine if an error occurs. | |
56 | intr (*) Allow signals to interrupt cluster operations. | |
57 | nointr Do not allow signals to interrupt cluster | |
58 | operations. | |
e2b0c215 TY |
59 | noatime Do not update access time. |
60 | relatime(*) Update atime if the previous atime is older than | |
61 | mtime or ctime | |
62 | strictatime Always update atime, but the minimum update interval | |
63 | is specified by atime_quantum. | |
bcd5625b TY |
64 | atime_quantum=60(*) OCFS2 will not update atime unless this number |
65 | of seconds has passed since the last update. | |
e2b0c215 TY |
66 | Set to zero to always update atime. This option need |
67 | work with strictatime. | |
10b0845b MF |
68 | data=ordered (*) All data are forced directly out to the main file |
69 | system prior to its metadata being committed to the | |
70 | journal. | |
71 | data=writeback Data ordering is not preserved, data may be written | |
72 | into the main file system after its metadata has been | |
73 | committed to the journal. | |
74 | preferred_slot=0(*) During mount, try to use this filesystem slot first. If | |
75 | it is in use by another node, the first empty one found | |
76 | will be chosen. Invalid values will be ignored. | |
d147b3d6 MF |
77 | commit=nrsec (*) Ocfs2 can be told to sync all its data and metadata |
78 | every 'nrsec' seconds. The default value is 5 seconds. | |
79 | This means that if you lose your power, you will lose | |
80 | as much as the latest 5 seconds of work (your | |
81 | filesystem will not be damaged though, thanks to the | |
82 | journaling). This default value (or any low value) | |
83 | will hurt performance, but it's good for data-safety. | |
84 | Setting it to 0 will have the same effect as leaving | |
85 | it at the default (5 seconds). | |
86 | Setting it to very large values will improve | |
87 | performance. | |
2fbe8d1e SM |
88 | localalloc=8(*) Allows custom localalloc size in MB. If the value is too |
89 | large, the fs will silently revert it to the default. | |
53fc622b | 90 | localflocks This disables cluster aware flock. |
12462f1d JB |
91 | inode64 Indicates that Ocfs2 is allowed to create inodes at |
92 | any location in the filesystem, including those which | |
93 | will result in inode numbers occupying more than 32 | |
94 | bits of significance. | |
696b55d7 MF |
95 | user_xattr (*) Enables Extended User Attributes. |
96 | nouser_xattr Disables Extended User Attributes. | |
a68979b8 TY |
97 | acl Enables POSIX Access Control Lists support. |
98 | noacl (*) Disables POSIX Access Control Lists support. | |
25985edc | 99 | resv_level=2 (*) Set how aggressive allocation reservations will be. |
d02f00cc MF |
100 | Valid values are between 0 (reservations off) to 8 |
101 | (maximum space for reservations). | |
83f92318 MF |
102 | dir_resv_level= (*) By default, directory reservations will scale with file |
103 | reservations - users should rarely need to change this | |
104 | value. If allocation reservations are turned off, this | |
105 | option will have no effect. | |
7bdb0d18 TY |
106 | coherency=full (*) Disallow concurrent O_DIRECT writes, cluster inode |
107 | lock will be taken to force other nodes drop cache, | |
108 | therefore full cluster coherency is guaranteed even | |
109 | for O_DIRECT writes. | |
110 | coherency=buffered Allow concurrent O_DIRECT writes without EX lock among | |
111 | nodes, which gains high performance at risk of getting | |
112 | stale data on other nodes. | |
1dfeb768 | 113 | journal_async_commit Commit block can be written to disk without waiting |
114 | for descriptor blocks. If enabled older kernels cannot | |
115 | mount the device. This will enable 'journal_checksum' | |
116 | internally. | |
fa95e087 | 117 | ======================= ======================================================== |