1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 24fed598aSRyusuke Konishiconfig NILFS2_FS 3f11cb227SKees Cook tristate "NILFS2 file system support" 4*925c86a1SChristoph Hellwig select BUFFER_HEAD 54fed598aSRyusuke Konishi select CRC32 69636e650SChristoph Hellwig select LEGACY_DIRECT_IO 74fed598aSRyusuke Konishi help 84fed598aSRyusuke Konishi NILFS2 is a log-structured file system (LFS) supporting continuous 94fed598aSRyusuke Konishi snapshotting. In addition to versioning capability of the entire 104fed598aSRyusuke Konishi file system, users can even restore files mistakenly overwritten or 114fed598aSRyusuke Konishi destroyed just a few seconds ago. Since this file system can keep 124fed598aSRyusuke Konishi consistency like conventional LFS, it achieves quick recovery after 134fed598aSRyusuke Konishi system crashes. 144fed598aSRyusuke Konishi 154fed598aSRyusuke Konishi NILFS2 creates a number of checkpoints every few seconds or per 164fed598aSRyusuke Konishi synchronous write basis (unless there is no change). Users can 174fed598aSRyusuke Konishi select significant versions among continuously created checkpoints, 184fed598aSRyusuke Konishi and can change them into snapshots which will be preserved for long 194fed598aSRyusuke Konishi periods until they are changed back to checkpoints. Each 204fed598aSRyusuke Konishi snapshot is mountable as a read-only file system concurrently with 214fed598aSRyusuke Konishi its writable mount, and this feature is convenient for online backup. 224fed598aSRyusuke Konishi 234fed598aSRyusuke Konishi Some features including atime, extended attributes, and POSIX ACLs, 244fed598aSRyusuke Konishi are not supported yet. 254fed598aSRyusuke Konishi 264fed598aSRyusuke Konishi To compile this file system support as a module, choose M here: the 274fed598aSRyusuke Konishi module will be called nilfs2. If unsure, say N. 28