|Developer(s)||Zachary Peterson (ext3cow versioning), Stephen Tweedie (ext3 design and implementation), Rémy Card (original ext2 design and implementation), Theodore Ts'o (tools and improvements), Andreas Gruenbacher (xattrs and ACLs), Andreas Dilger (online resizing), et al.|
|Full name||Third extended file system with copy-on-write|
|Introduced||July 2003 with Linux|
|Partition identifier||0x83 (MBR)
|Directory contents||Table, Tree|
|File allocation||bitmap (free space), table (metadata)|
|Max. volume size||8TiB|
|Max. file size||2TiB|
|Max. number of files||Variable1|
|Max. filename length||255 bytes|
|Allowed characters in filenames||All bytes except NUL, '/' and '@'|
|Dates recorded||modification (mtime), attribute modification (ctime), access (atime)|
|Date range||December 14, 1901 - January 18, 2038|
|Attributes||No-atime, append-only, synchronous-write, no-dump, h-tree (directory), immutable, journal, secure-delete, top (directory), allow-undelete|
|File system permissions||Unix permissions, ACLs and arbitrary security attributes (Linux 2.6 and later)|
|Transparent encryption||No (provided at the block device level)|
|Supported operating systems||Linux|
Ext3cow or third extended filesystem with copy-on-write is an open source, versioning file system based on the ext3 file system. Versioning is implemented through block-level copy-on-write. It shares many of its performance characteristics with ext3.
Ext3cow provides a time-shifting interface that permits a real-time and continuous view of data in the past. Time-shifting is a novel interface, introduced in ext3cow, allowing users to navigate through and access past namespaces by adding a time component to their commands.
A version of ext3cow for the Linux 2.6 kernel was released on March 30, 2007.
Details on ext3cow's implementation can be found in a 2005 paper.
- Zachary Peterson and Randal Burns (May 2005). "Ext3cow: A Time-Shifting File System for Regulatory Compliance" (PDF). ACM Transactions on Storage, 1(2).