xref: /linux/Documentation/filesystems/ntfs3.rst (revision d49436c34448e01eb6ab85413af87de73c99494d)
112dad495SKonstantin Komarov.. SPDX-License-Identifier: GPL-2.0
212dad495SKonstantin Komarov
312dad495SKonstantin Komarov=====
412dad495SKonstantin KomarovNTFS3
512dad495SKonstantin Komarov=====
612dad495SKonstantin Komarov
712dad495SKonstantin KomarovSummary and Features
812dad495SKonstantin Komarov====================
912dad495SKonstantin Komarov
10a0fc05a3SKari ArgillanderNTFS3 is fully functional NTFS Read-Write driver. The driver works with NTFS
11a0fc05a3SKari Argillanderversions up to 3.1. File system type to use on mount is *ntfs3*.
1212dad495SKonstantin Komarov
1312dad495SKonstantin Komarov- This driver implements NTFS read/write support for normal, sparse and
1412dad495SKonstantin Komarov  compressed files.
15a0fc05a3SKari Argillander- Supports native journal replaying.
1612dad495SKonstantin Komarov- Supports NFS export of mounted NTFS volumes.
17a0fc05a3SKari Argillander- Supports extended attributes. Predefined extended attributes:
18a0fc05a3SKari Argillander
19a0fc05a3SKari Argillander	- *system.ntfs_security* gets/sets security
20a0fc05a3SKari Argillander
21a0fc05a3SKari Argillander		Descriptor: SECURITY_DESCRIPTOR_RELATIVE
22a0fc05a3SKari Argillander
23a0fc05a3SKari Argillander	- *system.ntfs_attrib* gets/sets ntfs file/dir attributes.
24a0fc05a3SKari Argillander
25a0fc05a3SKari Argillander	  Note: Applied to empty files, this allows to switch type between
26a0fc05a3SKari Argillander	  sparse(0x200), compressed(0x800) and normal.
2712dad495SKonstantin Komarov
28*d49436c3SDaniel Pinto	- *system.ntfs_attrib_be* gets/sets ntfs file/dir attributes.
29*d49436c3SDaniel Pinto
30*d49436c3SDaniel Pinto	  Same value as system.ntfs_attrib but always represent as big-endian
31*d49436c3SDaniel Pinto	  (endianness of system.ntfs_attrib is the same as of the CPU).
32*d49436c3SDaniel Pinto
3312dad495SKonstantin KomarovMount Options
3412dad495SKonstantin Komarov=============
3512dad495SKonstantin Komarov
3612dad495SKonstantin KomarovThe list below describes mount options supported by NTFS3 driver in addition to
37a0fc05a3SKari Argillandergeneric ones. You can use every mount option with **no** option. If it is in
38a0fc05a3SKari Argillanderthis table marked with no it means default is without **no**.
3912dad495SKonstantin Komarov
40a0fc05a3SKari Argillander.. flat-table::
41a0fc05a3SKari Argillander   :widths: 1 5
42a0fc05a3SKari Argillander   :fill-cells:
4312dad495SKonstantin Komarov
44a0fc05a3SKari Argillander   * - iocharset=name
45a0fc05a3SKari Argillander     - This option informs the driver how to interpret path strings and
46a0fc05a3SKari Argillander       translate them to Unicode and back. If this option is not set, the
47a0fc05a3SKari Argillander       default codepage will be used (CONFIG_NLS_DEFAULT).
4812dad495SKonstantin Komarov
49a0fc05a3SKari Argillander       Example: iocharset=utf8
5012dad495SKonstantin Komarov
51a0fc05a3SKari Argillander   * - uid=
52a0fc05a3SKari Argillander     - :rspan:`1`
53a0fc05a3SKari Argillander   * - gid=
5412dad495SKonstantin Komarov
55a0fc05a3SKari Argillander   * - umask=
56a0fc05a3SKari Argillander     - Controls the default permissions for files/directories created after
57a0fc05a3SKari Argillander       the NTFS volume is mounted.
5812dad495SKonstantin Komarov
59a0fc05a3SKari Argillander   * - dmask=
60a0fc05a3SKari Argillander     - :rspan:`1` Instead of specifying umask which applies both to files and
61a0fc05a3SKari Argillander       directories, fmask applies only to files and dmask only to directories.
62a0fc05a3SKari Argillander   * - fmask=
6312dad495SKonstantin Komarov
64a0fc05a3SKari Argillander   * - noacsrules
65a0fc05a3SKari Argillander     - "No access rules" mount option sets access rights for files/folders to
66a0fc05a3SKari Argillander       777 and owner/group to root. This mount option absorbs all other
67a0fc05a3SKari Argillander       permissions.
6812dad495SKonstantin Komarov
69a0fc05a3SKari Argillander       - Permissions change for files/folders will be reported as successful,
70a0fc05a3SKari Argillander	 but they will remain 777.
7112dad495SKonstantin Komarov
72a0fc05a3SKari Argillander       - Owner/group change will be reported as successful, butthey will stay
73a0fc05a3SKari Argillander	 as root.
7412dad495SKonstantin Komarov
75a0fc05a3SKari Argillander   * - nohidden
76a0fc05a3SKari Argillander     - Files with the Windows-specific HIDDEN (FILE_ATTRIBUTE_HIDDEN) attribute
77a0fc05a3SKari Argillander       will not be shown under Linux.
7812dad495SKonstantin Komarov
79a0fc05a3SKari Argillander   * - sys_immutable
80a0fc05a3SKari Argillander     - Files with the Windows-specific SYSTEM (FILE_ATTRIBUTE_SYSTEM) attribute
81a0fc05a3SKari Argillander       will be marked as system immutable files.
8212dad495SKonstantin Komarov
83dc0fcc99SDaniel Pinto   * - hide_dot_files
8460adc860SDaniel Pinto     - Updates the Windows-specific HIDDEN (FILE_ATTRIBUTE_HIDDEN) attribute
8560adc860SDaniel Pinto       when creating and moving or renaming files. Files whose names start
8660adc860SDaniel Pinto       with a dot will have the HIDDEN attribute set and files whose names
8760adc860SDaniel Pinto       do not start with a dot will have it unset.
8860adc860SDaniel Pinto
89d683c67cSDaniel Pinto   * - windows_names
90d683c67cSDaniel Pinto     - Prevents the creation of files and directories with a name not allowed
91d683c67cSDaniel Pinto       by Windows, either because it contains some not allowed character (which
92d683c67cSDaniel Pinto       are the characters " * / : < > ? \\ | and those whose code is less than
93d683c67cSDaniel Pinto       0x20), because the name (with or without extension) is a reserved file
94d683c67cSDaniel Pinto       name (CON, AUX, NUL, PRN, LPT1-9, COM1-9) or because the last character
95d683c67cSDaniel Pinto       is a space or a dot. Existing such files can still be read and renamed.
96d683c67cSDaniel Pinto
97a0fc05a3SKari Argillander   * - discard
98a0fc05a3SKari Argillander     - Enable support of the TRIM command for improved performance on delete
99a0fc05a3SKari Argillander       operations, which is recommended for use with the solid-state drives
100a0fc05a3SKari Argillander       (SSD).
10112dad495SKonstantin Komarov
102a0fc05a3SKari Argillander   * - force
103a0fc05a3SKari Argillander     - Forces the driver to mount partitions even if volume is marked dirty.
104a0fc05a3SKari Argillander       Not recommended for use.
10512dad495SKonstantin Komarov
106a0fc05a3SKari Argillander   * - sparse
107a0fc05a3SKari Argillander     - Create new files as sparse.
10812dad495SKonstantin Komarov
109a0fc05a3SKari Argillander   * - showmeta
110a0fc05a3SKari Argillander     - Use this parameter to show all meta-files (System Files) on a mounted
111a0fc05a3SKari Argillander       NTFS partition. By default, all meta-files are hidden.
112a0fc05a3SKari Argillander
113a0fc05a3SKari Argillander   * - prealloc
114a0fc05a3SKari Argillander     - Preallocate space for files excessively when file size is increasing on
115a0fc05a3SKari Argillander       writes. Decreases fragmentation in case of parallel write operations to
116a0fc05a3SKari Argillander       different files.
117a0fc05a3SKari Argillander
118a0fc05a3SKari Argillander   * - acl
119a0fc05a3SKari Argillander     - Support POSIX ACLs (Access Control Lists). Effective if supported by
120a0fc05a3SKari Argillander       Kernel. Not to be confused with NTFS ACLs. The option specified as acl
121a0fc05a3SKari Argillander       enables support for POSIX ACLs.
122a0fc05a3SKari Argillander
123a0fc05a3SKari ArgillanderTodo list
12412dad495SKonstantin Komarov=========
125a0fc05a3SKari Argillander- Full journaling support over JBD. Currently journal replaying is supported
126a0fc05a3SKari Argillander  which is not necessarily as effectice as JBD would be.
12712dad495SKonstantin Komarov
12812dad495SKonstantin KomarovReferences
12912dad495SKonstantin Komarov==========
13012dad495SKonstantin Komarov- Commercial version of the NTFS driver for Linux.
131a0fc05a3SKari Argillander	https://www.paragon-software.com/home/ntfs-linux-professional/
13212dad495SKonstantin Komarov
13312dad495SKonstantin Komarov- Direct e-mail address for feedback and requests on the NTFS3 implementation.
134a0fc05a3SKari Argillander	almaz.alexandrovich@paragon-software.com
135