Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 1 | .. SPDX-License-Identifier: GPL-2.0 |
| 2 | |
| 3 | ================ |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 4 | OCFS2 filesystem |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 5 | ================ |
| 6 | |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 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 | |
Mark Fasheh | 01945fa | 2015-02-27 15:51:40 -0800 | [diff] [blame] | 15 | Project web page: http://ocfs2.wiki.kernel.org |
| 16 | Tools git tree: https://github.com/markfasheh/ocfs2-tools |
Alexander A. Klimov | 4510a5a | 2020-08-06 23:18:06 -0700 | [diff] [blame] | 17 | OCFS2 mailing lists: https://oss.oracle.com/projects/ocfs2/mailman/ |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 18 | |
| 19 | All code copyright 2005 Oracle except when otherwise noted. |
| 20 | |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 21 | Credits |
| 22 | ======= |
| 23 | |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 24 | Lots of code taken from ext3 and other projects. |
| 25 | |
| 26 | Authors in alphabetical order: |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 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> |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 36 | |
| 37 | Caveats |
| 38 | ======= |
| 39 | Features which OCFS2 does not support yet: |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 40 | |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 41 | - Directory change notification (F_NOTIFY) |
| 42 | - Distributed Caching (F_SETLEASE/F_GETLEASE/break_lease) |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 43 | |
| 44 | Mount options |
| 45 | ============= |
| 46 | |
| 47 | OCFS2 supports the following mount options: |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 48 | |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 49 | (*) == default |
| 50 | |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 51 | ======================= ======================================================== |
Mark Fasheh | ccd979b | 2005-12-15 14:31:24 -0800 | [diff] [blame] | 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. |
Tiger Yang | e2b0c21 | 2011-03-02 19:32:09 +0800 | [diff] [blame] | 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. |
Tiger Yang | bcd5625 | 2006-12-05 10:09:17 +0800 | [diff] [blame] | 64 | atime_quantum=60(*) OCFS2 will not update atime unless this number |
| 65 | of seconds has passed since the last update. |
Tiger Yang | e2b0c21 | 2011-03-02 19:32:09 +0800 | [diff] [blame] | 66 | Set to zero to always update atime. This option need |
| 67 | work with strictatime. |
Mark Fasheh | 10b0845 | 2007-08-23 11:17:55 -0700 | [diff] [blame] | 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. |
Mark Fasheh | d147b3d | 2007-11-07 14:40:36 -0800 | [diff] [blame] | 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. |
Sunil Mushran | 2fbe8d1 | 2007-12-20 14:58:11 -0800 | [diff] [blame] | 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. |
Mark Fasheh | 53fc622 | 2007-12-20 16:49:04 -0800 | [diff] [blame] | 90 | localflocks This disables cluster aware flock. |
Joel Becker | 12462f1 | 2008-09-03 20:03:40 -0700 | [diff] [blame] | 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. |
Mark Fasheh | 696b55d | 2008-10-07 11:09:24 -0700 | [diff] [blame] | 95 | user_xattr (*) Enables Extended User Attributes. |
| 96 | nouser_xattr Disables Extended User Attributes. |
Tiger Yang | a68979b | 2008-11-14 11:17:52 +0800 | [diff] [blame] | 97 | acl Enables POSIX Access Control Lists support. |
| 98 | noacl (*) Disables POSIX Access Control Lists support. |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 99 | resv_level=2 (*) Set how aggressive allocation reservations will be. |
Mark Fasheh | d02f00c | 2009-12-07 13:10:48 -0800 | [diff] [blame] | 100 | Valid values are between 0 (reservations off) to 8 |
| 101 | (maximum space for reservations). |
Mark Fasheh | 83f9231 | 2010-04-05 18:17:16 -0700 | [diff] [blame] | 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. |
Tristan Ye | 7bdb0d1 | 2010-10-11 16:46:39 +0800 | [diff] [blame] | 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. |
alex chen | 1dfeb76 | 2015-02-10 14:09:04 -0800 | [diff] [blame] | 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. |
Mauro Carvalho Chehab | fa95e08 | 2020-02-17 17:12:15 +0100 | [diff] [blame] | 117 | ======================= ======================================================== |