How to mount partition with ntfs file system and read write access

NTFS stands for New Technology File System and is created by Microsoft for use on their Windows operating systems. It doesn’t see much use on Linux systems, but has been the default file system on Windows for many years. Linux users are probably used to seeing drives with the ext4 file system, which is normally the default and definitely the most widespread in the Linux world.

Although NTFS is a proprietary file system meant especially for Windows, Linux systems still have the ability to mount partitions and disks that have been formatted as NTFS. Thus a Linux user could read and write files to the partition as easily as they could with a more Linux-oriented file system. This can be particularly handy in situations where you recover a disk from a Windows machine and wish to read the contents from your Linux system.

In this guide, we’ll show command line examples of how to mount NTFS partitions on any Linux distribution. This will include examples for mounting with only read access, or read and write access, as well as temporary mounting or persistent mounts that will survive future reboots. Read on to learn how.

In this tutorial you will learn:

  • How to install ntfs-3g and fuse on all major Linux distros
  • How to mount NTFS formatted partition on Linux
  • How to persistently mount NTFS partition
  • How to mount NTFS partition with read only and read and write access

Mounting an NTFS partition on a Linux system

Mounting an NTFS partition on a Linux system

Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Any Linux distro
Software ntfs-3g, fuse
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ – requires given linux commands to be executed as a regular non-privileged user

Install ntfs-3g and fuse

 



Linux systems rely on a software package called “ntfs-3g” in order to have the ability to mount NTFS formatted hard drive partitions. This works along with “fuse”, and both of these packages are very likely to already be installed on your system by default. We’ve tested numerous distributions and all of them came with the native ability to mount NTFS partitions because they already have these packages installed.

Just to cover all our bases, you can use the appropriate command below to check if the ntfs-3g and fuse software, along with their dependencies, are installed on your system. If they aren’t, they will be installed when you execute this command. And if the packages have fallen out of date, they will be updated.

To install ntfs-3g and fuse on Ubuntu, Debian, and Linux Mint:

$ sudo apt update
$ sudo apt install ntfs-3g fuse

To install ntfs-3g and fuse on CentOS, Fedora, AlmaLinux, and Red Hat:

$ sudo dnf install ntfs-3g fuse

To install ntfs-3g and fuse on Arch Linux and Manjaro:

$ sudo pacman -S ntfs-3g fuse

Mount NTFS partition on Linux

After installing ntfs-3g (or verifying that it’s already installed), you can use the following command line examples to mount an NTFS formatted partition on your system. Use whichever commands you find most appropriate for your scenario.

 



In the examples below, our NTFS partition is accessible through /dev/sdb, and we will be mounting it to the /mnt/ntfs directory. Use the parted command if you need to identify the path through which your NTFS partition is accessed.

$ sudo parted -l
Our NTFS formatted partition can be identified by /dev/sdb in the parted output

Our NTFS formatted partition can be identified by /dev/sdb in the parted output

Then, create the path where you plan to mount the partition, if it hasn’t already been created.

$ sudo mkdir -p /mnt/ntfs
  1. The most basic mount command would look like this. It should mount your NTFS partition with read and write permissions. This is probably the only command that most users will need.
    $ sudo mount -t ntfs /dev/sdb /mnt/ntfs
    

    To verify the mount and the permissions that it has, use the mount command.

    $ mount | grep ntfs
    
  2. Mounting the NTFS partition with default settings

    Mounting the NTFS partition with default settings

  3. Of course, you can unmount the NTFS partition at any time by executing the umount command.
    $ sudo umount /mnt/ntfs
    
  4.  



  5. To mount the NTFS partition with read only permissions, use the following mount command.
    $ sudo mount -o ro -t ntfs /dev/sdb /mnt/ntfs
    
  6. To specify that the NTFS partition should have read and write permissions (in case your system is mounting with read only by default), you can use this command.
    $ sudo mount -o rw -t ntfs /dev/sdb /mnt/ntfs
    

Mount NTFS partition automatically

To make the NTFS partition mount automatically each time the computer boots up, we’ll need to add a line to the /etc/fstab file on our system. Use nano or your favorite text editor to open it up under root permissions.

$ sudo nano /etc/fstab

Then, add the following line to the file, while substituting your own device directory and mount path.

/dev/sdb        /mnt/ntfs       ntfs    defaults        0       0
Adding the NTFS partition to /etc/fstab for automatic mounting upon system boot

Adding the NTFS partition to /etc/fstab for automatic mounting upon system boot

After you’ve made that addition, save the file and close it. To activate the new change right away, you can execute the following command.

$ sudo mount -a

Otherwise, the partition will mount automatically upon the next system reboot.

Closing Thoughts

In this guide, we saw how to mount an NTFS formatted partition on any major Linux distribution. This is facilitated by the ntfs-3g and fuse software packages, which are normally installed by default on most systems. Other than this requirement, mounting and accessing NTFS partitions is mostly the same process as any other type of disk. This will give users access to files that once belonged to a Windows computer.



Comments and Discussions
Linux Forum