Provided by: ntfsprogs_1.12.1-1_i386
ntfsmount - NTFS module for FUSE.
ntfsmount device mount_point [-o options]
ntfsmount is a FUSE module that rely on libntfs. You need FUSE to
compile it, xattr is recommended, but not mandatory.
Fully implemented ntfsmount features are:
* Read-only access to normal, sparse and compressed files.
* Overwrite normal and sparse files *with* changes to size.
* List/Read/Write/Add/Remove named data streams.
Partly implented features:
* Create/Delete/Move files and directories.
* Hard link files.
Below is a summary of all the options that ntfsmount accepts.
uid=, gid=, umask=
Provide default owner, group, and access mode mask. These
options work as documented in mount(8). By default, the
files/directories are owned by user that mounted volume and
he/she has read and write permissions, as well as browse
permission for directories. No one else has any access
permissions. I.e. the mode on all files is by default rw-------
and for directories rwx------, a consequence of the default
fmask=0177 and dmask=0077. Using a umask of zero will grant all
permissions to everyone, i.e. all files and directories will
have mode rwxrwxrwx.
Instead of specifying umask which applies both to files and
directories, fmask applies only to files and mask only to
If show_sys_files is specified, show the system files in
directory listings. Otherwise the default behaviour is to hide
the system files. Note that even when show_sys_files is
specified, "$MFT" may will not be visible due to bugs/mis-
features in glibc. Further, note that irrespective of
show_sys_files, all files are accessible by name, i.e. you can
always do "ls -l ’$UpCase’" for example to specifically show the
system file containing the Unicode upcase table.
By default FUSE doesn’t check file access permissions, the
filesystem is free to implement its access policy or leave it to
the underlying file access mechanism (e.g. in case of network
filesystems). This option enables permission checking,
restricting access based on file mode. This is option is
usually useful together with the ’allow_other’ mount option.
This option overrides the security measure restricting file
access to the user mounting the filesystem. This option is by
default only allowed to root, but this restriction can be
removed with a configuration option described in the previous
(NOTE: Work only with FUSE-2.3.0) This option disables flushing
the cache of the file contents on every open(). This should
only be enabled on filesystems, where the file data is never
changed externally (not through the mounted FUSE filesystem).
Thus it is not suitable for network filesystems and other
NOTE: if this option is not specified (and neither ’direct_io’)
data is still cached after the open(), so a read() system call
will not always initiate a read operation.
Issue large read requests. This can improve performance for
some filesystems, but can also degrade performance. This option
is only useful on 2.4.X kernels, as on 2.6 kernels requests size
is automatically determined for optimum performance.
This option disables the use of page cache (file content cache)
in the kernel for this filesystem. This has several affects:
- Each read() or write() system call will initiate one or more
read or write operations, data will not be cached in the kernel.
- The return value of the read() and write() system calls will
correspond to the return values of the read and write
operations. This is useful for example if the file size is not
known in advance (before reading it).
With this option the maximum size of read operations can be set.
The default is infinite. Note that the size of read requests is
limited anyway to 32 pages (which is 128kbyte on i386).
force Force mount even if errors occurred. Use this option only if you
know what are you doing and don’t cry about data loss.
ro Mount filesystem read-only.
By default ntfsmount acts as "default_permissions,allow_other"
was passed to it, this option cancel this behaviour.
Don’t change any permissions and don’t return error on chmod
You can set locale with this option. It’s useful if locale
enviroment variables are not set before partitions from
/etc/fstab had been mounted.
All data on NTFS is stored in streams, which can have names. A file
can have more than one data streams, but exactly one must have no name.
The size of a file is the size of its unnamed data stream. Usually
when you don’t specify stream name you are access to the unnamed data
stream. If you want access to named data stream you need to add
":stream_name" to the filename. For example: by opening
"some.mp3:artist" you will open stream "artist" in "some.mp3". But
windows usually prevent you from accessing to named data streams, so
you need to use some program like FAR or utils from cygwin to access
named data streams.
NTFS FUSE module don’t prevent you from accessing to named data streams
so you can use your preferred utils to access them. You can even delete
them using rm. You can list all named data streams by getting
"ntfs.streams.list" extended attribute. NOTE: The last feature is
unique for NTFS FUSE module and maybe will be never supported by kernel
Mount /dev/hda1 to /mnt/ntfs-fuse using ntfsmount:
ntfsmount /dev/hda1 /mnt/ntfs-fuse
Read-only mount /dev/hda5 to /home/user/mnt and make user with uid 1000
to be owner of all files:
ntfsmount /dev/hda5 /home/user/mnt -o ro,uid=1000
/etc/fstab entry for above:
/dev/hda5 /home/user/mnt ntfs-fuse ro,uid=1000 0 0
fusermount -u /mnt/ntfs-fuse
Cat "artist" named data stream of "some.mp3":
Write "Sympho Black Metal" to "genre" named data stream of "some.mp3":
echo Sympho Black Metal > some.mp3:genre
Remove "album" named data stream from "some.mp3":
List all named data streams for "some.mp3":
getfattr -n ntfs.streams.list some.mp3
No bugs are known at present. If you find any bugs, please send an
email to <firstname.lastname@example.org>.
ntfsmount was written by Yura Pakhuchiy. This manual page use
information from Documentation/filesystems/ntfs.txt from linux kernel
source, and from README from FUSE.
With love to Marina Sapego.
Many thanks to Miklos Szeredi for advices and answers about FUSE.
ntfsmount is part of the ntfsprogs package and is available from
ntfsprogs(8), attr(5), getfattr(1)