How to read/write NTFS partitions on GNU/Linux

GNU/Linux

NTFS-3G is a stable, full-featured, read-write NTFS driver for Linux, Android, Mac OS X, FreeBSD, NetBSD, OpenSolaris, QNX, Haiku, and other operating systems.

  • It provides safe handling of the Windows XP, Windows Server 2003, Windows 2000, Windows Vista, Windows Server 2008, Windows 7, Windows 8 and Windows 10 NTFS file systems.
  • It allows to create, delete, move and rename files, directories, hard links and streams
  • It allows to read and modify files and streams
  • It allows to handle special files such us: symlinks, devices and FIFOs

Note: In CentOS you must add EPEL repository

1. Install NTFS-3G on CentOS

# yum -y install ntfs-3g

2. Install NTFS-3G on Fedora

# dnf -y install ntfs-3g

2. Install NTFS-3G on Debian/Ubuntu

# apt-get -y install ntfs-3g

3. General syntax

ntfs-3g ntfs-partition access-point [-o options[,...]]]

Or

mount -t ntfs-3g ntfs-partition access-point [-o options[,...]]]

4. Mount a ntfs partition, read mode

# ntfs-3g -o ro /dev/sda1 /mnt/win-system/

5. Mount a ntfs partition ntfs, read/write mode

# ntfs-3g -o rw,umask=0000 /dev/sda5 /mnt/win-data/

6. Mounting ntfs partitions when the operating system starts

For mounting ntfs partitions when the operating system starts, add the following 2 lines to the /etc/fstab file

/dev/sda1  /mnt/win-system  ntfs-3g ro,defaults 0 0
/dev/sda5  /mnt/win-data  ntfs-3g rw,umask=0000,defaults 0 0

The above examples assumes that:

  • The ntfs partitions are found in /dev/sda1 and /dev/sda5 respectively
  • win-system and win-data are directories that have been created before mounting the partitions
  • win-system is where the Windows OS system is installed so this partition is mount as read only
  • win-data = user data so this partition is mount as read/write partition

umask = 0000 sets read, write, and execution permissions to owner, group and others

7. To identify ntfs partitions type: 

# fdisk -l

8. To unmount an ntfs partition use the umount command

# umount access-point

for example to unmount win-system type:

# umount /mnt/win-system

Further readings

The tutorials here on LibreByte are provided under a free software licence. if you like my work you should consider:
Buy a Hosting/VPS or Dedicated Server at MCKHost

4 comments

Skip to comment form

    • David Pérez on December 2, 2016 at 6:13 am
    • Reply

    Last time I tested ntfs-3g, it used to work ok. But when it becomes corrupted, it doesn't manage to repair it. The only good solution I know about, is the chkdsk command on Windows.

    1. Maybe ntfsfix can do the job.

    • Somewhat Reticent on December 2, 2016 at 11:50 am
    • Reply

    And udefrag to make NTFS files contiguous?

    1. afaik does no exist any tool for NTFS file system defragmentation from GNU/Linux.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.