mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-25 05:34:00 +08:00
fs/ntfs3: Add Kconfig, Makefile and doc
This adds Kconfig, Makefile and doc Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
This commit is contained in:
parent
b46acd6a6a
commit
12dad495ea
@ -100,6 +100,7 @@ Documentation for filesystem implementations.
|
||||
nilfs2
|
||||
nfs/index
|
||||
ntfs
|
||||
ntfs3
|
||||
ocfs2
|
||||
ocfs2-online-filecheck
|
||||
omfs
|
||||
|
106
Documentation/filesystems/ntfs3.rst
Normal file
106
Documentation/filesystems/ntfs3.rst
Normal file
@ -0,0 +1,106 @@
|
||||
.. SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
=====
|
||||
NTFS3
|
||||
=====
|
||||
|
||||
|
||||
Summary and Features
|
||||
====================
|
||||
|
||||
NTFS3 is fully functional NTFS Read-Write driver. The driver works with
|
||||
NTFS versions up to 3.1, normal/compressed/sparse files
|
||||
and journal replaying. File system type to use on mount is 'ntfs3'.
|
||||
|
||||
- This driver implements NTFS read/write support for normal, sparse and
|
||||
compressed files.
|
||||
- Supports native journal replaying;
|
||||
- Supports extended attributes
|
||||
Predefined extended attributes:
|
||||
- 'system.ntfs_security' gets/sets security
|
||||
descriptor (SECURITY_DESCRIPTOR_RELATIVE)
|
||||
- 'system.ntfs_attrib' gets/sets ntfs file/dir attributes.
|
||||
Note: applied to empty files, this allows to switch type between
|
||||
sparse(0x200), compressed(0x800) and normal;
|
||||
- Supports NFS export of mounted NTFS volumes.
|
||||
|
||||
Mount Options
|
||||
=============
|
||||
|
||||
The list below describes mount options supported by NTFS3 driver in addition to
|
||||
generic ones.
|
||||
|
||||
===============================================================================
|
||||
|
||||
nls=name This option informs the driver how to interpret path
|
||||
strings and translate them to Unicode and back. If
|
||||
this option is not set, the default codepage will be
|
||||
used (CONFIG_NLS_DEFAULT).
|
||||
Examples:
|
||||
'nls=utf8'
|
||||
|
||||
uid=
|
||||
gid=
|
||||
umask= Controls the default permissions for files/directories created
|
||||
after the NTFS volume is mounted.
|
||||
|
||||
fmask=
|
||||
dmask= Instead of specifying umask which applies both to
|
||||
files and directories, fmask applies only to files and
|
||||
dmask only to directories.
|
||||
|
||||
nohidden Files with the Windows-specific HIDDEN (FILE_ATTRIBUTE_HIDDEN)
|
||||
attribute will not be shown under Linux.
|
||||
|
||||
sys_immutable Files with the Windows-specific SYSTEM
|
||||
(FILE_ATTRIBUTE_SYSTEM) attribute will be marked as system
|
||||
immutable files.
|
||||
|
||||
discard Enable support of the TRIM command for improved performance
|
||||
on delete operations, which is recommended for use with the
|
||||
solid-state drives (SSD).
|
||||
|
||||
force Forces the driver to mount partitions even if 'dirty' flag
|
||||
(volume dirty) is set. Not recommended for use.
|
||||
|
||||
sparse Create new files as "sparse".
|
||||
|
||||
showmeta Use this parameter to show all meta-files (System Files) on
|
||||
a mounted NTFS partition.
|
||||
By default, all meta-files are hidden.
|
||||
|
||||
prealloc Preallocate space for files excessively when file size is
|
||||
increasing on writes. Decreases fragmentation in case of
|
||||
parallel write operations to different files.
|
||||
|
||||
no_acs_rules "No access rules" mount option sets access rights for
|
||||
files/folders to 777 and owner/group to root. This mount
|
||||
option absorbs all other permissions:
|
||||
- permissions change for files/folders will be reported
|
||||
as successful, but they will remain 777;
|
||||
- owner/group change will be reported as successful, but
|
||||
they will stay as root
|
||||
|
||||
acl Support POSIX ACLs (Access Control Lists). Effective if
|
||||
supported by Kernel. Not to be confused with NTFS ACLs.
|
||||
The option specified as acl enables support for POSIX ACLs.
|
||||
|
||||
noatime All files and directories will not update their last access
|
||||
time attribute if a partition is mounted with this parameter.
|
||||
This option can speed up file system operation.
|
||||
|
||||
===============================================================================
|
||||
|
||||
ToDo list
|
||||
=========
|
||||
|
||||
- Full journaling support (currently journal replaying is supported) over JBD.
|
||||
|
||||
|
||||
References
|
||||
==========
|
||||
https://www.paragon-software.com/home/ntfs-linux-professional/
|
||||
- Commercial version of the NTFS driver for Linux.
|
||||
|
||||
almaz.alexandrovich@paragon-software.com
|
||||
- Direct e-mail address for feedback and requests on the NTFS3 implementation.
|
46
fs/ntfs3/Kconfig
Normal file
46
fs/ntfs3/Kconfig
Normal file
@ -0,0 +1,46 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
config NTFS3_FS
|
||||
tristate "NTFS Read-Write file system support"
|
||||
select NLS
|
||||
help
|
||||
Windows OS native file system (NTFS) support up to NTFS version 3.1.
|
||||
|
||||
Y or M enables the NTFS3 driver with full features enabled (read,
|
||||
write, journal replaying, sparse/compressed files support).
|
||||
File system type to use on mount is "ntfs3". Module name (M option)
|
||||
is also "ntfs3".
|
||||
|
||||
Documentation: <file:Documentation/filesystems/ntfs3.rst>
|
||||
|
||||
config NTFS3_64BIT_CLUSTER
|
||||
bool "64 bits per NTFS clusters"
|
||||
depends on NTFS3_FS && 64BIT
|
||||
help
|
||||
Windows implementation of ntfs.sys uses 32 bits per clusters.
|
||||
If activated 64 bits per clusters you will be able to use 4k cluster
|
||||
for 16T+ volumes. Windows will not be able to mount such volumes.
|
||||
|
||||
It is recommended to say N here.
|
||||
|
||||
config NTFS3_LZX_XPRESS
|
||||
bool "activate support of external compressions lzx/xpress"
|
||||
depends on NTFS3_FS
|
||||
help
|
||||
In Windows 10 one can use command "compact" to compress any files.
|
||||
4 possible variants of compression are: xpress4k, xpress8k, xpress16k and lzx.
|
||||
If activated you will be able to read such files correctly.
|
||||
|
||||
It is recommended to say Y here.
|
||||
|
||||
config NTFS3_FS_POSIX_ACL
|
||||
bool "NTFS POSIX Access Control Lists"
|
||||
depends on NTFS3_FS
|
||||
select FS_POSIX_ACL
|
||||
help
|
||||
POSIX Access Control Lists (ACLs) support additional access rights
|
||||
for users and groups beyond the standard owner/group/world scheme,
|
||||
and this option selects support for ACLs specifically for ntfs
|
||||
filesystems.
|
||||
NOTE: this is linux only feature. Windows will ignore these ACLs.
|
||||
|
||||
If you don't know what Access Control Lists are, say N.
|
36
fs/ntfs3/Makefile
Normal file
36
fs/ntfs3/Makefile
Normal file
@ -0,0 +1,36 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
#
|
||||
# Makefile for the ntfs3 filesystem support.
|
||||
#
|
||||
|
||||
# to check robot warnings
|
||||
ccflags-y += -Wint-to-pointer-cast \
|
||||
$(call cc-option,-Wunused-but-set-variable,-Wunused-const-variable) \
|
||||
$(call cc-option,-Wold-style-declaration,-Wout-of-line-declaration)
|
||||
|
||||
obj-$(CONFIG_NTFS3_FS) += ntfs3.o
|
||||
|
||||
ntfs3-y := attrib.o \
|
||||
attrlist.o \
|
||||
bitfunc.o \
|
||||
bitmap.o \
|
||||
dir.o \
|
||||
fsntfs.o \
|
||||
frecord.o \
|
||||
file.o \
|
||||
fslog.o \
|
||||
inode.o \
|
||||
index.o \
|
||||
lznt.o \
|
||||
namei.o \
|
||||
record.o \
|
||||
run.o \
|
||||
super.o \
|
||||
upcase.o \
|
||||
xattr.o
|
||||
|
||||
ntfs3-$(CONFIG_NTFS3_LZX_XPRESS) += $(addprefix lib/,\
|
||||
decompress_common.o \
|
||||
lzx_decompress.o \
|
||||
xpress_decompress.o \
|
||||
)
|
Loading…
Reference in New Issue
Block a user