xref: /linux/Documentation/filesystems/ntfs3.rst (revision a0fc05a37cae9e61aa29f7e283662ce70f7df342)
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
10*a0fc05a3SKari ArgillanderNTFS3 is fully functional NTFS Read-Write driver. The driver works with NTFS
11*a0fc05a3SKari 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.
15*a0fc05a3SKari Argillander- Supports native journal replaying.
1612dad495SKonstantin Komarov- Supports NFS export of mounted NTFS volumes.
17*a0fc05a3SKari Argillander- Supports extended attributes. Predefined extended attributes:
18*a0fc05a3SKari Argillander
19*a0fc05a3SKari Argillander	- *system.ntfs_security* gets/sets security
20*a0fc05a3SKari Argillander
21*a0fc05a3SKari Argillander		Descriptor: SECURITY_DESCRIPTOR_RELATIVE
22*a0fc05a3SKari Argillander
23*a0fc05a3SKari Argillander	- *system.ntfs_attrib* gets/sets ntfs file/dir attributes.
24*a0fc05a3SKari Argillander
25*a0fc05a3SKari Argillander	  Note: Applied to empty files, this allows to switch type between
26*a0fc05a3SKari Argillander	  sparse(0x200), compressed(0x800) and normal.
2712dad495SKonstantin Komarov
2812dad495SKonstantin KomarovMount Options
2912dad495SKonstantin Komarov=============
3012dad495SKonstantin Komarov
3112dad495SKonstantin KomarovThe list below describes mount options supported by NTFS3 driver in addition to
32*a0fc05a3SKari Argillandergeneric ones. You can use every mount option with **no** option. If it is in
33*a0fc05a3SKari Argillanderthis table marked with no it means default is without **no**.
3412dad495SKonstantin Komarov
35*a0fc05a3SKari Argillander.. flat-table::
36*a0fc05a3SKari Argillander   :widths: 1 5
37*a0fc05a3SKari Argillander   :fill-cells:
3812dad495SKonstantin Komarov
39*a0fc05a3SKari Argillander   * - iocharset=name
40*a0fc05a3SKari Argillander     - This option informs the driver how to interpret path strings and
41*a0fc05a3SKari Argillander       translate them to Unicode and back. If this option is not set, the
42*a0fc05a3SKari Argillander       default codepage will be used (CONFIG_NLS_DEFAULT).
4312dad495SKonstantin Komarov
44*a0fc05a3SKari Argillander       Example: iocharset=utf8
4512dad495SKonstantin Komarov
46*a0fc05a3SKari Argillander   * - uid=
47*a0fc05a3SKari Argillander     - :rspan:`1`
48*a0fc05a3SKari Argillander   * - gid=
4912dad495SKonstantin Komarov
50*a0fc05a3SKari Argillander   * - umask=
51*a0fc05a3SKari Argillander     - Controls the default permissions for files/directories created after
52*a0fc05a3SKari Argillander       the NTFS volume is mounted.
5312dad495SKonstantin Komarov
54*a0fc05a3SKari Argillander   * - dmask=
55*a0fc05a3SKari Argillander     - :rspan:`1` Instead of specifying umask which applies both to files and
56*a0fc05a3SKari Argillander       directories, fmask applies only to files and dmask only to directories.
57*a0fc05a3SKari Argillander   * - fmask=
5812dad495SKonstantin Komarov
59*a0fc05a3SKari Argillander   * - noacsrules
60*a0fc05a3SKari Argillander     - "No access rules" mount option sets access rights for files/folders to
61*a0fc05a3SKari Argillander       777 and owner/group to root. This mount option absorbs all other
62*a0fc05a3SKari Argillander       permissions.
6312dad495SKonstantin Komarov
64*a0fc05a3SKari Argillander       - Permissions change for files/folders will be reported as successful,
65*a0fc05a3SKari Argillander	 but they will remain 777.
6612dad495SKonstantin Komarov
67*a0fc05a3SKari Argillander       - Owner/group change will be reported as successful, butthey will stay
68*a0fc05a3SKari Argillander	 as root.
6912dad495SKonstantin Komarov
70*a0fc05a3SKari Argillander   * - nohidden
71*a0fc05a3SKari Argillander     - Files with the Windows-specific HIDDEN (FILE_ATTRIBUTE_HIDDEN) attribute
72*a0fc05a3SKari Argillander       will not be shown under Linux.
7312dad495SKonstantin Komarov
74*a0fc05a3SKari Argillander   * - sys_immutable
75*a0fc05a3SKari Argillander     - Files with the Windows-specific SYSTEM (FILE_ATTRIBUTE_SYSTEM) attribute
76*a0fc05a3SKari Argillander       will be marked as system immutable files.
7712dad495SKonstantin Komarov
78*a0fc05a3SKari Argillander   * - discard
79*a0fc05a3SKari Argillander     - Enable support of the TRIM command for improved performance on delete
80*a0fc05a3SKari Argillander       operations, which is recommended for use with the solid-state drives
81*a0fc05a3SKari Argillander       (SSD).
8212dad495SKonstantin Komarov
83*a0fc05a3SKari Argillander   * - force
84*a0fc05a3SKari Argillander     - Forces the driver to mount partitions even if volume is marked dirty.
85*a0fc05a3SKari Argillander       Not recommended for use.
8612dad495SKonstantin Komarov
87*a0fc05a3SKari Argillander   * - sparse
88*a0fc05a3SKari Argillander     - Create new files as sparse.
8912dad495SKonstantin Komarov
90*a0fc05a3SKari Argillander   * - showmeta
91*a0fc05a3SKari Argillander     - Use this parameter to show all meta-files (System Files) on a mounted
92*a0fc05a3SKari Argillander       NTFS partition. By default, all meta-files are hidden.
93*a0fc05a3SKari Argillander
94*a0fc05a3SKari Argillander   * - prealloc
95*a0fc05a3SKari Argillander     - Preallocate space for files excessively when file size is increasing on
96*a0fc05a3SKari Argillander       writes. Decreases fragmentation in case of parallel write operations to
97*a0fc05a3SKari Argillander       different files.
98*a0fc05a3SKari Argillander
99*a0fc05a3SKari Argillander   * - acl
100*a0fc05a3SKari Argillander     - Support POSIX ACLs (Access Control Lists). Effective if supported by
101*a0fc05a3SKari Argillander       Kernel. Not to be confused with NTFS ACLs. The option specified as acl
102*a0fc05a3SKari Argillander       enables support for POSIX ACLs.
103*a0fc05a3SKari Argillander
104*a0fc05a3SKari ArgillanderTodo list
10512dad495SKonstantin Komarov=========
106*a0fc05a3SKari Argillander- Full journaling support over JBD. Currently journal replaying is supported
107*a0fc05a3SKari Argillander  which is not necessarily as effectice as JBD would be.
10812dad495SKonstantin Komarov
10912dad495SKonstantin KomarovReferences
11012dad495SKonstantin Komarov==========
11112dad495SKonstantin Komarov- Commercial version of the NTFS driver for Linux.
112*a0fc05a3SKari Argillander	https://www.paragon-software.com/home/ntfs-linux-professional/
11312dad495SKonstantin Komarov
11412dad495SKonstantin Komarov- Direct e-mail address for feedback and requests on the NTFS3 implementation.
115*a0fc05a3SKari Argillander	almaz.alexandrovich@paragon-software.com
116