NTFSMOUNT
NAME
ntfsmount - NTFS module for FUSE.
SYNOPSIS
ntfsmount
device mount_point
[-o options]
DESCRIPTION
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:
Read-write access to normal and sparse files.
Read-only access to compressed files.
Access to special Interix files (symlinks, devices, FIFOs).
List/Read/Write/Add/Remove named data streams.
Supports Linux and FreeBSD.
Partly implemented features:
Create/Delete/Move files and directories.
Hard link files.
OPTIONS
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.
fmask=, dmask=
Instead of specifying umask which applies both to
files and directories, fmask applies only to files and
mask only to directories.
show_sys_files
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.
default_permissions
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.
allow_other
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 section.
kernel_cache
(NOTE: Only for FUSE 2.3.0, with FUSE >= 2.4.0 on by default)
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 "intermediate" filesystems.
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.
large_read
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.
direct_io
(NOTE: Only for FUSE 2.3.0)
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).
max_read=
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.
no_def_opts
By default ntfsmount acts as "default_permissions,allow_other" was passed to it,
this option cancel this behaviour.
silent
Do nothing on chmod and chown operations, but do not return error.
locale=
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.
streams_interface=
This option controls how the user can access named data streams. It can be set
to, one of none, windows or xattr. If the option is set to
none, the user will have no access to the named data streams. If it's set
to windows, then the user can access them just like in Windows (eg. cat
file:stream). If it's set to xattr, then the named data streams are
mapped to xattrs and user can manipulate them using {get,set}fattr
utilities.
debug
Makes ntfsmount to not detach from terminal and print a lot of debug output from
libntfs and FUSE.
no_detach
Same as above but with less debug output.
DATA STREAMS
All data on NTFS is stored in streams. Every file has exactly one unnamed
data stream and can have many named data streams. The size of a file is the
size of its unnamed data stream. By default, ntfsmount will only read
the unnamed data stream.
By using the options "streams_interface=windows", you will be able to read
any named data streams, simply by specifying the stream's name after a colon.
For example:
cat some.mp3:artist
Windows applications don't, consistently, allow you to read named data
streams, so you are recommended to use tools like FAR, or utils from Cygwin.
Named data streams act like normals files, so you can read from them, write to
them and even delete them (using rm). You can list all the named data streams
a file has by getting the "ntfs.streams.list" extended attribute. NOTE: This
list feature is unique to the ntfsmount and may never be supported by the
kernel driver.
EXAMPLES
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
Umount /mnt/ntfs-fuse:
fusermount -u /mnt/ntfs-fuse
Cat "artist" named data stream of "some.mp3":
cat some.mp3:artist
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":
rm some.mp3:album
List all named data streams for "some.mp3":
getfattr -n ntfs.streams.list some.mp3
BUGS
There are no known problems with
R ntfsmount .
If you find a bug please send an email describing the problem to the
development team:
linux-ntfs-dev@lists.sourceforge.net
AUTHORS
ntfsmount
was written by Yura Pakhuchiy, with contributions from Yuval Fledel.
DEDICATION
With love to Marina Sapego.
THANKS
Many thanks to Miklos Szeredi for advice and answers about FUSE.
AVAILABILITY
ntfsmount
is part of the
ntfsprogs
package and is available from:
http://www.linux-ntfs.org/content/view/19/37
The manual pages are available online at:
http://man.linux-ntfs.org/
SEE ALSO